使用 Oracle® Solaris 11.2 目录和命名服务:DNS 和 NIS

退出打印视图

更新时间: 2014 年 7 月
 
 

NIS 绑定

NIS 客户机通过绑定进程连接到一台 NIS 服务器。此进程由 svc:/network/nis/clientsvc:/network/nis/domain 服务提供支持。必须启用这些服务,NIS 服务才能工作。svc:/network/nis/client 服务能够以下列两种模式之一工作:服务器列表或广播。

  • 服务器列表-在服务器列表模式下,ypbind 进程查询 svc:/network/nis/domain 服务来获取域中所有 NIS 服务器的名称。ypbind 进程只绑定到此文件中的服务器。

    可以通过使用 svccfg 命令添加 NIS 服务器。它们将添加到 svc:/network/nis/domain 服务中的 config/ypservers 属性。每个属性值都代表一台特定的 NIS 服务器。

    此外,在 svc:/network/nis/domain 服务中指定的任何服务器名称在 /etc/inet/hosts 文件中都必须有一个对应的项,NIS 绑定功能才能工作。

  • 广播-ypbind 进程还可以使用 RPC 广播来启动绑定。因为广播只是不会进一步路由的本地子网事件,所以必须至少有一台服务器(主服务器或从属服务器)与客户机位于同一个子网中。服务器本身可能会存在于不同的子网中,因为映射传播可跨越子网边界。在子网环境中,一种常用方法是使子网路由器成为 NIS 服务器。这样,域服务器便可为任何一个子网接口上的客户机提供服务。

    通常情况下,广播模式是建议使用的运行模式。广播模式不要求指定额外的主机项(或对 /etc/inet/hosts 进行更改)。

通常,客户机绑定到服务器后,会保持与该服务器的绑定状态,直到某些原因引起状态更改为止。例如,如果服务器中断服务,它所服务的客户机将绑定到新服务器。

要确定当前正在为特定客户机提供服务的 NIS 服务器,请使用以下命令。

% ypwhich machinename

其中,machinename 是客户机的名称。如果不提供计算机名,ypwhich 命令将缺省认为是本地计算机(即运行命令时所在的计算机)。

服务器列表模式

在服务器列表模式下,绑定进程的工作过程如下:

  1. 在 NIS 客户机上运行的、需要 NIS 映射所提供信息的任何程序向 ypbind 请求服务器的名称。

  2. ypbind 守护进程在 /var/yp/binding/domainname/ypservers 文件中查找域中 NIS 服务器的列表。

  3. ypbind 守护进程启动到列表中第一台服务器的绑定。如果该服务器不响应,ypbind 会尝试第二台,直至找到服务器或找遍整个列表。

  4. ypbind 守护进程将要联系的服务器告知客户机进程。然后,客户机会将请求直接发送到该服务器。

  5. NIS 服务器上的 ypserv 守护进程通过查询相应映射来处理请求。

  6. ypserv 守护进程将请求的信息发送回客户机。

广播模式

在广播模式下,绑定进程的工作过程如下:

  1. ypbind 守护进程启动时必须设置了广播选项 (–broadcast)。

  2. ypbind 守护进程发出 RPC 广播来搜索 NIS 服务器。


    注 - 为了支持此类客户机,需要让每个请求 NIS 服务的子网具有 NIS 服务器。
  3. ypbind 守护进程启动到最先对广播做出响应的服务器的绑定。

  4. ypbind 守护进程将要联系的服务器告知客户机进程。然后,客户机会将请求直接发送到该服务器。

  5. NIS 服务器上的 ypserv 守护进程通过查询相应映射来处理请求。

  6. ypserv 守护进程将请求的信息发送回客户机。