系统管理指南:IP 服务

Oracle Solaris : 名称服务的 IPv6 扩展

本节介绍在实现 IPv6 时引入的命名更改。可以将 IPv6 地址存储在任何 Oracle Solaris : 名称服务(如 NIS、LDAP、DNS 和 files)中。还可以使用 NIS over IPv6 RPC 传输机制来检索任何 NIS 数据。

DNS 的 IPv6 扩展

AAAA 资源记录是 IPv6 特定的资源记录,它已在 RFC 1886 "DNS Extensions to Support IP Version 6" 中指定。该 AAAA 记录将主机名映射到 128 位 IPv6 地址。IPv6 仍使用 PTR(指针)记录将 IP 地址映射为主机名。系统为 IPv6 地址保留了 128 位地址中的 32 个半字节(四位)。每个半字节都转换为与其相对应的十六进制 ASCII 值,然后再附加 ip6.int

nsswitch.conf 文件的更改

对于 Solaris 10 11/06 及早期发行版,除了通过 /etc/inet/ipnodes 查找 IPv6 地址的功能之外,还向 NIS、LDAP 和 DNS 名称服务中添加了 IPv6 支持。因此,已经对 nsswitch.conf 文件进行了修改以支持 IPv6 查找功能。


hosts:  files dns nisplus [NOTFOUND=return]
ipnodes: files dns nisplus [NOTFOUND=return]

注 –

在将 /etc/nsswitch.conf 文件更改为在多个名称服务中搜索 ipnodes 之前,请使用 IPv4 和 IPv6 地址填充这些 ipnodes 数据库。否则,不必要的延迟(包括可能的引导计时延迟)可能会导致解析主机地址。


下图显示了对于使用 gethostbynamegetipnodebyname 命令的应用程序,nsswitch.conf 文件和新名称服务数据库之间的新关系。斜体项为新项。gethostbyname 命令仅检查存储在 /etc/inet/hosts 中的 IPv4 地址。在 Solaris 10 11/06 及早期发行版中,getipnodebyname 命令会查阅在 nsswitch.conf 文件的 ipnodes 项中指定的数据库。如果查找失败,该命令会检查在 nsswitch.conf 文件中的 hosts 项中指定的数据库。

图 11–8 nsswitch.conf 和名称服务之间的关系

该图显示 NIS、NIS+、文件和 DNS 数据库与 nsswitch.conf 文件之间的关系。

有关名称服务的更多信息,请参见《系统管理指南:名称和目录服务(DNS、NIS 和 LDAP)》

名称服务命令的更改

为了支持 IPv6,可以用现有的名称服务命令查找 IPv6 地址。例如,ypmatch 命令可用于新的 NIS 映射。nslookup 命令可以在 DNS 中查找新的 AAAA 记录。