系统管理指南:IP 服务

Procedure如何配置 6to4 隧道

如果 IPv6 网络需要与远程 IPv6 网络通信,请考虑使用 6to4 自动隧道。6to4 隧道的配置过程包括将边界路由器配置为 6to4 路由器。6to4 路由器可充当您的网络与远程 IPv6 网络上的端点路由器之间的 6to4 隧道的端点。

开始之前

在 IPv6 网络上配置 6to4 路由之前,必须已经完成以下操作:

  1. 以主管理员或超级用户身份登录到将来的 6to4 路由器。

    主管理员角色拥有主管理员配置文件。有关如何创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2  章 “使用 Solaris Management Console(任务)”

  2. 通过创建 /etc/hostname6.ip.6to4tun0 文件在路由器上配置 6to4 伪接口。

    • 如果计划使用建议的约定(子网 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 的必需参数:

    tsrc

    表示此接口用作隧道源。

    IPv4-address

    以点分十进制格式指定在作为 6to4 伪接口的物理接口上配置的 IPv4 地址。

    其余参数是可选的。但是,如果指定了一个可选参数,则必须指定所有的可选参数。

    2002

    指定 6to4 前缀。

    IPv4–address

    以十六进制表示法指定伪接口的 IPv4 地址。

    subnet-ID

    以十六进制表示法指定除 0 以外的子网 ID。

    interface-ID

    指定除 1 以外的接口 ID。

    /64

    表示 6to4 前缀的长度为 64 位。

    up

    将 6to4 接口配置为 "up"。


    注 –

    网络上的两个 IPv6 隧道不能具有相同的源地址和目标地址。否则,包会被丢弃。如果 6to4 路由器还通过 atun 命令执行隧道连接,则可能会发生这种类型的事件。有关 atun 的信息,请参阅 tun(7M) 手册页。


  3. (可选)在路由器上创建其他 6to4 伪接口。

    每个将来的 6to4 伪接口都必须具有一个已配置的全局唯一的 IPv4 地址。

  4. 重新引导 6to4 路由器。

  5. 验证接口状态。


    # 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 
  6. 编辑 /etc/inet/ndpd.conf 文件以通告 6to4 路由。

    有关详细信息,请参阅 ndpd.conf(4) 手册页。

    1. 在第一行中指定要接收通告的子网。

      创建具有以下格式的 if 项:


      if subnet-interface AdvSendAdvertisements 1

      例如,要向连接到 hme0 接口的子网通告 6to4 路由,请将 subnet-interface 替换为 hme0


      if hme0 AdvSendAdvertisements 1
    2. 在通告的第二行中添加 6to4 前缀。

      创建具有以下格式的 prefix 项:


      prefix 2002:IPv4-address:subnet-ID::/64 subnet-interface
      
  7. 重新引导路由器。

    或者,可以向 /etc/inet/in.ndpd 守护进程发出 sighup,以便开始发送路由器通告。要接收 6to4 前缀的每个子网上的 IPv6 节点现在可以使用 6to4 派生地址自动进行配置。

  8. 将节点的新 6to4 派生地址添加到在 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 路由器后面的路由器以支持 6to4。如果站点使用 RIP,则必须在每个非 6to4 路由器上配置通往 6to4 路由器的静态路由。如果使用商业路由协议,则无需创建通往 6to4 路由器的静态路由。