跳过导航链接 | |
退出打印视图 | |
系统管理指南:IP 服务 Oracle Solaris 10 8/11 Information Library (简体中文) |
1. Oracle Solaris TCP/IP 协议套件(概述)
5. 配置 TCP/IP 网络服务和 IPv4 寻址(任务)
25. Oracle Solaris 中的 IP 过滤器(概述)
在大型 IPv4 网络中,IPv6 网络通常是隔离的实体。IPv6 网络上的节点可能需要与隔离的 IPv6 网络上的节点通信(在企业内或以远程方式进行)。通常,尽管 IPv6 主机也可以充当隧道端点,但是仍需要在 IPv6 路由器之间配置一条隧道。有关隧道规划的信息,请参阅在网络拓扑中规划隧道。
可以为 IPv6 网络设置自动或手动配置的隧道。Oracle Solaris IPv6 实现支持下列类型的隧道封装:
IPv6 over IPv4 隧道
IPv6 over IPv6 隧道
IPv4 over IPv6 隧道
6to4 隧道
有关隧道的概念性说明,请参见IPv6 隧道。
本过程介绍如何设置从 IPv6 节点经由 IPv4 网络到达远程 IPv6 节点的隧道。
主管理员角色拥有主管理员配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
其中 n 表示隧道编号,第一个隧道的编号从零开始。然后,按照下列子步骤来添加项:
示例 7-7 IPv6 over IPv4 手动隧道的 /etc/hostname6.ip.tun 文件中的项
此样例 /etc/hostname6.ip.tun 文件显示了为其手动配置全局源地址和全局目标地址的隧道。
tsrc 192.168.8.20 tdst 192.168.7.19 up addif 2001:db8:3c4d:8::fe12:528 2001:db8:3c4d:7:a00:20ff:fe12:1234 up
本过程介绍如何设置从 IPv6 节点经由 IPv6 网络到达远程 IPv6 节点的隧道。
主管理员角色拥有主管理员配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
n 可使用值 0、1、2 等。然后,按照下列子步骤来添加项:
示例 7-8 IPv6 over IPv6 隧道的 /etc/hostname6.ip6.tun 文件中的项
tsrc 2001:db8:3c4d:22:20ff:0:fe72:668c tdst 2001:db8:3c4d:103:a00:20ff:fe9b:a1c3 fe80::4 fe80::61 up
本过程介绍如何配置从一台 IPv4 主机经由 IPv6 网络到达另一台 IPv4 主机的隧道。如果您的公司网络是异构网络,并且 IPv4 子网由 IPv6 子网分隔,则可以使用此过程。
主管理员角色拥有主管理员配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
n 可使用值 0、1、2 等。然后,按照下列步骤来添加项:
示例 7-9 IPv4 over IPv6 隧道的 /etc/hostname6.ip6.tun 中的项
此示例显示了 IPv4 over IPv6 隧道的项。
tsrc 2001:db8:3c4d:114:a00:20ff:fe72:668c tdst 2001:db8:3c4d:103:a00:20ff:fe9b:a1c3 10.0.0.4 10.0.0.61 up
如果 IPv6 网络需要与远程 IPv6 网络通信,请考虑使用 6to4 自动隧道。6to4 隧道的配置过程包括将边界路由器配置为 6to4 路由器。6to4 路由器可充当您的网络与远程 IPv6 网络上的端点路由器之间的 6to4 隧道的端点。
开始之前
在 IPv6 网络上配置 6to4 路由之前,必须已经完成以下操作:
已经按照修改主机和服务器的 IPv6 接口配置中所述在将来的 6to4 站点的所有相应节点上配置了 IPv6。
至少已经选择了一个连接到 IPv4 网络的路由器作为 6to4 路由器。
已经为 IPv4 网络配置了在将来的 6to4 路由器接口上全局唯一的 IPv4 地址。该 IPv4 地址必须是静态的。
主管理员角色拥有主管理员配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
如果计划使用建议的约定(子网 ID=0,主机 ID=1),请针对 /etc/hostname6.ip.6to4tun0 使用短格式:
tsrc IPv4-address up
如果计划对子网 ID 和主机 ID 使用其他约定,请针对 /etc/hostname6.ip.6to4tun0 使用长格式:
tsrc IPv4-address 2002:IPv4-address:subnet-ID:interface-ID:/64 up
以下是 /etc/hostname6.ip.6to4tun0 的必需参数:
表示此接口用作隧道源。
以点分十进制格式指定在作为 6to4 伪接口的物理接口上配置的 IPv4 地址。
其余参数是可选的。但是,如果指定了一个可选参数,则必须指定所有的可选参数。
指定 6to4 前缀。
以十六进制表示法指定伪接口的 IPv4 地址。
以十六进制表示法指定除 0 以外的子网 ID。
指定除 1 以外的接口 ID。
表示 6to4 前缀的长度为 64 位。
将 6to4 接口配置为 "up"。
注 - 网络上的两个 IPv6 隧道不能具有相同的源地址和目标地址。否则,包会被丢弃。如果 6to4 路由器还通过 atun 命令执行隧道连接,则可能会发生这种类型的事件。有关 atun 的信息,请参阅 tun(7M) 手册页。
每个将来的 6to4 伪接口都必须具有一个已配置的全局唯一的 IPv4 地址。
# ifconfig ip.6to4tun0 inet6
如果接口已正确配置,则将接收到以下类似输出:
ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6>mtu 1480 index 11 inet tunnel src 111.222.33.44 tunnel hop limit 60 inet6 2002:6fde:212c:10:/64
有关详细信息,请参阅 ndpd.conf(4) 手册页。
或者,可以向 /etc/inet/in.ndpd 守护进程发出 sighup,以便开始发送路由器通告。要接收 6to4 前缀的每个子网上的 IPv6 节点现在可以使用 6to4 派生地址自动进行配置。
有关说明,请转至针对 IPv6 配置名称服务支持。
示例 7-10 6to4 路由器配置(短形式)
下面举例说明了/etc/hostname6.ip.6to4tun0 的短形式:
# cat /etc/hostname6.ip.6to4tun0 tsrc 111.222.33.44 up
示例 7-11 6to4 路由器配置(长形式)
下面举例说明了 /etc/hostname6.ip.6to4tun0 的长形式:
# cat /etc/hostname6.ip.6to4tun0 tsrc 111.222.33.44 2002:6fde:212c:20:1/64 up
示例 7-12 显示 6to4 伪接口的 ifconfig 输出
以下样例说明了针对 6to4 伪接口的 ifconfig 命令的输出:
# ifconfig ip.6to4tun0 inet6 ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6> mtu 1480 index 11 inet tunnel src 192.168.87.188 tunnel hop limit 60 inet6 2002:c0a8:57bc::1/64
示例 7-13 /etc/inet/ndpd.conf 中的 6to4 通告
以下样例 /etc/inet/ndpd.conf 文件将在两个子网上通告 6to4 路由:
if qfe0 AdvSendAdvertisements 1 prefix 2002:c0a8:57bc:10::/64 qfe0 if qfe1 AdvSendAdvertisements 1 prefix 2002:c0a8:57bc:2::/64 qfe1
对于多路由器站点,可能需要进一步配置 6to4 路由器后面的路由器以支持 6to4。如果站点使用 RIP,则必须在每个非 6to4 路由器上配置通往 6to4 路由器的静态路由。如果使用商业路由协议,则无需创建通往 6to4 路由器的静态路由。
开始之前
在启用通往 6to4 中继路由器的隧道之前,必须先完成下列任务:
按照如何配置 6to4 隧道中的说明在站点上配置了 6to4 路由器
检查建立通往 6to4 中继路由器的隧道连接时涉及到的安全问题
主管理员角色拥有主管理员配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
启用通往任播 6to4 中继路由器的隧道。
# /usr/sbin/6to4relay -e
-e 选项可用于在 6to4 路由器和任播 6to4 中继路由器之间设置隧道。任播 6to4 中继路由器具有已知的 IPv4 地址 192.88.99.1。物理位置距离您的站点最近的任播中继路由器将成为 6to4 隧道的端点。该中继路由器随后将在 6to4 站点和本机 IPv6 站点之间转发包。
有关任播 6to4 中继路由器的详细信息,请参阅 RFC 3068, "An Anycast Prefix for 6to4 Relay Routers"。
启用通往特定 6to4 中继路由器的隧道。
# /usr/sbin/6to4relay -e -a relay-router-address
-a 选项表示后面将跟有一个特定路由器地址。请将 relay-router-address 替换为用以启用隧道的特定 6to4 中继路由器的 IPv4 地址。
除非删除 6to4 隧道的伪接口,否则通往 6to4 中继路由器的隧道将一直保持活动状态。
# /usr/sbin/6to4relay -d
您的站点可能迫切要求通往 6to4 中继路由器的隧道在 6to4 路由器每次重新引导时都进行恢复。要支持此方案,必须执行下列操作:
示例 7-14 获取有关 6to4 中继路由器支持的状态信息
可以使用 /usr/bin/6to4relay 命令来确定对 6to4 中继路由器是否启用了的支持。以下示例显示了禁用 6to4 中继路由器支持(此为 Oracle Solaris 中的缺省设置)时的输出:
# /usr/sbin/6to4relay 6to4relay: 6to4 Relay Router communication support is disabled.
启用对 6to4 中继路由器的支持时,将接收到以下输出:
# /usr/sbin/6to4relay 6to4relay: 6to4 Relay Router communication support is enabled. IPv4 remote address of Relay Router=192.88.99.1