配置 6to4 隧道,6to4 路由器必须充当网络的 6to4 站点中节点的 IPv6 路由器。因此,当配置 6to4 路由器时,还必须在其物理接口上将该路由器配置为 IPv6 路由器。有关将 Oracle Solaris 主机配置为路由器的更多信息,请参见将 Oracle Solaris 11.2 系统配置为路由器或负载平衡器 中的配置 IPv6 路由器。
# dladm create-iptun -T 6to4 -a local=address tunnel-link
指定隧道本地地址,该地址必须是系统中已存在的有效地址。
指定 IP 隧道链路。如果网络链路管理中支持有意义的名称,则隧道名称不再限制为要创建的隧道类型。相反,可以为隧道指定任何通过管理方式选择的名称。隧道名称由字符串和 PPA 编号组成,例如 mytunnel0。有关更多信息,请参见在 Oracle Solaris 11.2 中配置和管理网络组件 中的有效链路名称的规则。
# ipadm create-ip tunnel-interface
其中,tunnel-interface 使用与隧道链路相同的名称。
# pfedit /etc/inet/ndpd.conf
if subnet-interface AdvSendAdvertisements 1 IPv6-address subnet-interface
其中,第一行指定接收通告的子网,subnet-interface 是指该子网连接到的链路。第二行中的 IPv6 地址必须具有 6to4 前缀 2000,该前缀用于 6to4 隧道中的 IPv6 地址。
有关 ndpd.conf 文件的详细信息,请参见ndpd.conf(4)手册页。
# ipadm set-prop -p forwarding=on ipv6
要接收 6to4 前缀的每个子网上的 IPv6 节点自动配置有新的 6to4 派生地址。
有关说明,请参见在 Oracle Solaris 11.2 中配置和管理网络组件 中的第 4 章 在 Oracle Solaris 客户机上管理命名和目录服务。
以下示例演示如何创建 6to4 隧道。请注意,在 6to4 隧道上只能配置 IPv6 接口。在此示例中,子网接口为 /etc/inet/ndpd.conf 引用的 net0。
# dladm create-iptun -T 6to4 -a local=192.0.2.23 tun0 # ipadm create-ip tun0 # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4 dhcp ok 192.0.2.23/24 lo0/v6 static ok ::1/128 tun0/v6 static ok 2002:c000:217::1/16 # ipadm create-addr -T addrconf net0 net0/v6 # ipadm create-addr -a 2002:c000:217:cafe::1 net0 net0/v6a # ipadm show-addr ADDROBJ TYPE STATE ADDR lo0/v4 static ok 127.0.0.1/8 net0/v4 dhcp ok 192.0.2.23/24 lo0/v6 static ok ::1/128 net0/v6 addrconf ok fe80::214:4fff:fef9:b1a9/10 net0/v6a static ok 2002:c000:217:cafe::1/64 tun0/v6 static ok 2002:c000:217::1/16 # vi /etc/inet/ndpd.conf if net0 AdvSendAdvertisements on prefix 2002:c000:217:cafe::0/64 net0 # ipadm set-prop -p forwarding=on ipv6
请注意,对于 6to4 隧道,IPv6 地址的前缀为 2002。