IPv6 临时地址包括一个随机生成的用作接口 ID 的 64 位数字,而不是包括接口的 MAC 地址。对于要保持匿名的 IPv6 节点上的任何接口都可以使用临时地址。例如,您可能希望对于需要访问公共 Web 服务器的主机的接口使用临时地址。临时地址可实现 IPv6 保密性增强功能。RFC 3041 中介绍了这些增强功能,可从《Privacy Extensions for Stateless Address Autoconfiguration in IPv6》(《IPv6 中用于无状态地址自动配置的专用扩展》)中获取。
如果需要的话,可以在 /etc/inet/ndpd.conf 文件中为一个或多个接口启用临时地址。但是,与自动配置的标准 IPv6 地址不同,临时地址由 64 位子网前缀和一个随机生成的 64 位数字组成。这个随机数将成为 IPv6 地址的接口 ID 部分。临时地址作为接口 ID 时,不会生成链路本地地址。
请注意,临时地址的缺省首选生命周期为一天。启用临时地址生成功能时,还可以在 /etc/inet/ndpd.conf 文件中配置下列变量:
临时地址存在的时间跨度,在此之后临时地址将从主机中删除。
临时地址过时之前已经过的时间。此时间跨度应短于有效生命周期。
在首选生命周期到期之前的持续时间,在这段时间内,主机应生成新的临时地址。
可以按如下所示表示临时地址的持续时间:
n 秒数(缺省值)
n 小时数 (h)
n 天数 (d)
请参阅如何针对 IPv6 配置系统。
ifdefault TmpValidLifetime duration
此语法为主机上的所有接口指定有效生命周期。duration 的值应当以秒、小时或天为单位。缺省的有效生命周期为 7 天。另外,还可以将 TmpValidLifetime 与 if interface 关键字一起使用来为特定接口的临时地址指定有效生命周期。
if interface TmpPreferredLifetime duration
此语法为特定接口的临时地址指定首选生命周期。缺省的首选生命周期为一天。另外,还可以将 TmpPreferredLifetime 与 ifdefault 关键字一起使用来为主机所有接口上的临时地址指定所需的生命周期。
ifdefault TmpRegenAdvance duration
此语法可为主机上所有接口的临时地址指定地址过时之前的交付周期。缺省值是 5 秒。
# pkill -HUP in.ndpd # /usr/lib/inet/in.ndpd
该命令输出显示临时地址的 CURRENT 字段中的 t 标志。
以下示例显示了创建临时地址之后 ipadm show-addr 命令的输出。请注意,样例输出中仅包括 IPv6 相关信息。
# ipadm show-addr -o all ADDROBJ TYPE STATE CURRENT PERSISTENT ADDR lo0/v6 static ok U---- --- ::1/128 net0/v6 addrconf ok U---- --- fe80::a00:20ff:feb9:4c54/10 net0/v6a static ok U---- --- 2001:db8:3c4d:15:a00:20ff:feb9:4c54/64 net0/? addrconf ok U--t- --- 2001:db8:3c4d:15:7c37:e7d1:fc9c:d2cb/64
请注意,对于地址对象 net0/?,在 CURRENT 字段下设置了 t 标记,指示对应的地址具有临时接口 ID。
另请参见
要设置对 IPv6 地址的名称服务支持,请参见在 Oracle Solaris 客户机上管理命名和目录服务。
要为服务器配置 IPv6 地址,请参见如何配置用户指定的 IPv6 标记。
要监视 IPv6 节点上的活动,请参见在 Oracle Solaris 11.2 中管理 TCP/IP 网络、IPMP 和 IP 隧道 中的 第 1 章, 管理 TCP/IP 网络。