目  录 
1 隧道配置 ············································································································································ 1-1 
1.1 隧道概述 ············································································································································ 1-1 
1.1.1 IPv6 over IPv4 隧道 ················································································································ 1-1 
1.1.2 协议规范 ································································································································· 1-4 
1.2 隧道配置任务简介 ····························································································································· 1-4 
1.3 配置Tunnel接口 ································································································································· 1-4 
1.4 配置IPv6 手动隧道····························································································································· 1-5 
1.4.1 配置准备 ································································································································· 1-5 
1.4.2 配置IPv6 手动隧道 ·················································································································· 1-5 
1.4.3 配置举例 ································································································································· 1-6 
1.5 配置IPv4 兼容IPv6 自动隧道 ············································································································· 1-9 
1.5.1 配置准备 ································································································································· 1-9 
1.5.2 配置IPv4 兼容IPv6 自动隧道 ··································································································· 1-9 
1.5.3 配置举例 ······························································································································· 1-10 
1.6 配置 6to4 隧道 ································································································································· 1-13 
1.6.1 配置准备 ······························································································································· 1-13 
1.6.2 配置 6to4 隧道 ······················································································································ 1-13 
1.6.3 配置 6to4 隧道举例 ··············································································································· 1-14 
1.6.4 配置 6to4 中继举例 ··············································································································· 1-16 
1.7 配置ISATAP隧道 ····························································································································· 1-18 
1.7.1 配置准备 ······························································································································· 1-18 
1.7.2 配置ISATAP隧道 ·················································································································· 1-18 
1.7.3 配置举例 ······························································································································· 1-19 
1.8 隧道显示和维护 ······························································································································· 1-22 
1.9 常见错误配置举例 ··························································································································· 1-22 
 
i 
 
1 隧道配置 
 
设备支持两种运行模式:独立运行模式和 IRF 模式,缺省情况为独立运行模式。有关 IRF 模式的介
绍,请参见“IRF 配置指导”中的“IRF”。 
 
1.1  隧道概述 
隧道技术是一种封装技术,它利用一种网络协议来传输另一种网络协议,即一种网络协议将其他网
络协议的数据报文封装在自己的报文中,然后在网络中传输。封装后的数据报文在网络中传输的路
径,称为隧道。隧道是一条虚拟的点对点连接,隧道的两端需要对数据报文进行封装及解封装。隧
道技术就是指包括数据封装、传输和解封装在内的全过程。 
隧道技术可以: 
•  作为过渡技术,实现 IPv4 和 IPv6 网络互通,如 IPv6 over IPv4 隧道技术。 
•  创建 VPN(Virtual Private Network,虚拟私有网络),保证通信的安全性,如 GRE(Generic 
Routing Encapsulation,通用路由封装)。 
•  实现流量工程,避免由于负载不均衡导致网络拥塞,如 MPLS  TE(Multiprotocol  Label 
Switching Traffic Engineering,多协议标记交换流量工程)。 
上述三种隧道技术中,隧道两端需要创建虚拟的三层接口——Tunnel 接口,以便隧道两端的设备利
用隧道发送报文、识别并处理来自隧道的报文。 
 
•  本文只介绍实现 IPv4/IPv6 过渡的隧道。 
•  GRE、MPLS TE 的相关介绍和配置请分别参见“三层技术-IP 业务配置指导”中的“GRE”、
MPLS 配置指导中的“MPLS TE”。 
 
1.1.1  IPv6 over IPv4 隧道 
1. IPv6 over IPv4 隧道原理 
IPv6  over  IPv4 隧道是在IPv6 数据报文前封装上IPv4 的报文头,通过隧道使IPv6 报文穿越IPv4 网
络,实现隔离的IPv6 网络的互通,如 图 1-1 所示。IPv6 over IPv4 隧道可以建立在主机—主机、主
机—设备或设备—设备之间。隧道的终点可能是IPv6 报文的最终目的地,也可能需要进一步转发。 
 
IPv6 over IPv4 隧道两端的设备必须支持 IPv4/IPv6 双协议栈。 
 
1-1 
 
图1-1 IPv6 over IPv4 隧道原理图 
 
 
IPv6 over IPv4 隧道对报文的处理过程如下: 
• 
• 
IPv6 网络中的设备发送 IPv6 报文,该报文到达隧道的源端设备 Device A。 
Device  A 根据路由表判定该报文要通过隧道进行转发后,在 IPv6 报文前封装上 IPv4 的报文
头,通过隧道的实际物理接口将报文转发出去。 
•  封装报文通过隧道到达隧道目的端设备 Device B,Device B 判断该封装报文的目的地是本设
• 
备后,将对报文进行解封装。 
Device  B 根据解封装后的 IPv6 报文的目的地址转发该 IPv6 报文。如果目的地就是本设备,
则将 IPv6 报文转给上层协议处理。 
2. IPv6 over IPv4 隧道模式 
根据隧道终点的 IPv4 地址的获取方式不同,隧道分为“配置隧道”和“自动隧道”。 
•  如果 IPv6 over IPv4 隧道的终点地址不能从 IPv6 报文的目的地址中自动获取,需要进行手工
配置,这样的隧道称为“配置隧道”。 
•  如果 IPv6 over IPv4 隧道的终点地址采用内嵌 IPv4 地址的特殊 IPv6 地址形式,则可以从 IPv6
报文的目的地址中自动获取隧道终点的 IPv4 地址,这样的隧道称为“自动隧道”。 
如 表 1-1 所示,根据对IPv6 报文的封装方式的不同,IPv6 over IPv4 隧道分为以下几种模式。表 1-1
中还列举了各隧道模式的关键配置参数。 
表1-1 IPv6 over IPv4 隧道模式 
隧道类型 
隧道模式 
隧道源/目的地址 
隧道接口地址 
配置隧道 
IPv6手动隧道 
源/目的地址为手动配置的IPv4地址 
IPv6地址 
IPv4兼容IPv6自动隧道 
源地址为手动配置的IPv4地址,目的
地址不需配置 
IPv4兼容IPv6地址,其格式为:
::IPv4-source-address/96 
6to4隧道 
自动隧道 
源地址为手动配置的IPv4地址,目的
地址不需配置 
6to4地址,其格式为: 
2002:IPv4-source-address::/48
ISATAP(Intra-Site 
Automatic Tunnel 
Addressing Protocol,站点
内自动隧道寻址协议)隧道 
源地址为手动配置的IPv4地址,目的
地址不需配置 
ISATAP地址,其格式为: 
Prefix:0:5EFE:IPv4-source-add
ress/64 
IPv6 手动隧道 
 
(1) 
手动隧道是点到点之间的链路,一条链路就是一个单独的隧道。主要用于边缘路由器—边缘路由器
或主机—边缘路由器之间定期安全通信的稳定连接,可实现与远端 IPv6 网络的连接。 
(2)  GRE 隧道 
1-2 
 
IPv4 兼容 IPv6 自动隧道 
使用标准的 GRE 协议可对 IPv6 报文进行封装,使 IPv6 报文能通过隧道穿越 IPv4 网络。与 IPv6
手动隧道相同,GRE 隧道也是点到点之间的链路,每条链路都是一条单独的隧道。GRE 隧道主要
用于边缘路由器-边缘路由器、主机-边缘路由器定期安全通信的稳定连接。相关配置请参见“三层
技术-IP 业务配置指导”中的“GRE”。 
(3) 
IPv4 兼容 IPv6 自动隧道是点到多点的链路。隧道两端采用特殊的 IPv6 地址:IPv4 兼容 IPv6 地址,
其格式为:0:0:0:0:0:0:a.b.c.d/96,其中 a.b.c.d 是 IPv4 地址。通过这个嵌入的 IPv4 地址可以自动
确定隧道的终点,使 IPv6 隧道的建立非常方便。但由于它必须使用 IPv4 兼容 IPv6 地址,仍依赖于
IPv4 地址,在使用时有一定的局限性。 
(4)  6to4 隧道 
•  普通 6to4 隧道 
6to4 隧道是点到多点的自动隧道,主要用于将多个 IPv6 孤岛通过 IPv4 网络连接到 IPv6 网络。6to4
隧道通过在 IPv6 报文的目的地址中嵌入 IPv4 地址,来实现自动获取隧道终点的 IPv4 地址。 
6to4 隧道采用特殊的 6to4 地址,其格式为:2002:abcd:efgh:子网号::接口 ID/64,其中 2002 表示
固定的 IPv6 地址前缀,abcd:efgh 表示该 6to4 隧道对应的 32 位全球唯一的 IPv4 源地址,用 16 进
制表示(如 1.1.1.1 可以表示为 0101:0101)。2002:abcd:efgh 之后的部分唯一标识了一个主机在
6to4 网络内的位置。通过这个嵌入的 IPv4 地址可以自动确定隧道的终点,使隧道的建立非常方便。 
由于 6to4 地址的 64 位地址前缀中的 16 位子网号可以由用户自定义,前缀中的前 48 位已由固定数
值、隧道起点或终点设备的 IPv4 地址确定,使 IPv6 报文通过隧道进行转发成为可能。6to4 隧道可
以实现利用 IPv4 网络完成 IPv6 网络的互连,克服了 IPv4 兼容 IPv6 自动隧道使用的局限性。 
• 
6to4 隧道只能用于前缀为 2002::/16 的 6to4 网络之间的通信,但在 IPv6 网络中也会使用像 2001::/16
这样的 IPv6 网络地址。为了实现 6to4 网络和其它 IPv6 网络的通信,必须有一台 6to4 路由器作为
网关转发到 IPv6 网络的报文,这台路由器就叫做 6to4 中继(6to4 relay)路由器。 
如下图所示,6to4 网络的边缘路由器 Router A 需配置一条静态路由,下一跳地址指向 6to4 中继路
由器 Router  C 的 6to4 地址,这样,所有去往 IPv6 网络的报文都会被转发到 6to4 中继路由器,之
后再由 6to4 中继路由器转发到 IPv6 网络中,从而实现 6to4 网络(地址前缀以 2002 开始)与 IPv6
网络的互通。 
图1-2 6to4 隧道和 6to4 中继原理图 
6to4 中继 
ISATAP 隧道 
 
(5) 
随着 IPv6 技术的推广,现有的 IPv4 网络中将会出现越来越多的 IPv6 主机,ISATAP 隧道技术为这
种应用提供了一个较好的解决方案。ISATAP 隧道是点到多点的自动隧道技术,通过在 IPv6 报文的
目的地址中嵌入的 IPv4 地址,可以自动获取隧道的终点。 
 
1-3 
 
使用 ISATAP 隧道时,IPv6 报文的目的地址和隧道接口的 IPv6 地址都要采用特殊的 ISATAP 地址。
ISATAP 地址格式为:Prefix(64bit):0:5EFE:abcd:efgh。其中,64 位的 Prefix 为任何合法的 IPv6 单
播地址前缀,abcd:efgh 表示 32 位 IPv4 源地址,用 16 进制表示(如 1.1.1.1 可以表示为 0101:0101),
该 IPv4 地址不要求全球唯一。通过这个嵌入的 IPv4 地址就可以自动建立隧道,完成 IPv6 报文的传
送。 
ISATAP 隧道主要用于在 IPv4 网络中 IPv6 路由器—IPv6 路由器、IPv6 主机—IPv6 路由器的连接。 
图1-3 ISATAP 隧道原理图 
 
 
1.1.2  协议规范 
与隧道技术相关的协议规范有: 
• 
• 
• 
• 
• 
RFC 1853:IP in IP Tunneling 
RFC 2473:Generic Packet Tunneling in IPv6 Specification 
RFC 2893:Transition Mechanisms for IPv6 Hosts and Routers 
RFC 3056:Connection of IPv6 Domains via IPv4 Clouds 
RFC 4214:Intra-Site Automatic Tunnel Addressing Protocol (ISATAP) 
1.2  隧道配置任务简介 
表1-2 隧道配置任务简介 
配置任务 
说明 
详细配置 
配置Tunnel接口 
必选 
配置IPv6 over IPv4
隧道 
配置IPv6手动隧道 
配置IPv4兼容IPv6自动隧道 
配置6to4隧道 
配置ISATAP隧道 
 
1.3  配置Tunnel接口 
根据组网情况,选择其一 
1.3   
1.4   
1.5   
1.6   
1.7   
隧道两端的设备上,需要创建虚拟的三层接口——Tunnel 接口,以便隧道两端的设备利用隧道发送
报文、识别并处理来自隧道的报文。 
表1-3 配置 Tunnel 接口 
配置步骤 
命令 
说明 
进入系统视图 
system-view 
- 
创建Tunnel接口,并进入Tunnel接口视图 
interface tunnel number 
必选 
缺省情况下,设备上无Tunnel接口 
1-4 
 
配置步骤 
命令 
说明 
配置接口描述信息 
description text 
配置MTU值 
配置Tunnel接口的
IPv4 MTU值 
mtu size 
配置Tunnel接口的
IPv6 MTU值 
ipv6 mtu size 
配置Tunnel接口的带宽 
tunnel bandwidth 
bandwidth-value 
可选 
缺省情况下,接口描述信息为“该接
口的接口名 Interface” 
可选 
缺省情况下,IPv4 MTU的值为1500
,IPv6 MTU的值为1480 
可选 
缺省情况下,Tunnel接口的带宽为
64kbps 
恢复当前接口的缺省配置 
default 
可选 
关闭Tunnel接口 
shutdown 
可选 
缺省情况下,接口处于开启状态 
 
 
•  主备倒换或备板拔出时,建立在主控板或备板上的隧道不会被真正删除,若再配置相同的隧道,
系统会提示隧道已经存在。如果需要真正删除隧道接口,请使用 undo interface tunnel 命令来
删除。 
•  ipv6 mtu 命令的详细介绍,请参见“三层技术-IP 业务命令参考”中的“IPv6 基础”。 
•  目前,通过 tunnel bandwidth 命令配置的 Tunnel 接口带宽只用于动态路由协议计算隧道所在路
径的 cost 值,不会影响接口的实际带宽。建议根据报文实际出接口的带宽值设置 Tunnel 接口带
宽。 
•  执行 default 命令并不能保证接口下的所有命令都能恢复到缺省情况,某些命令可能会由于不满
足必备条件而恢复失败。因此,执行 default 命令后建议通过 display this 命令确认执行效果。 
 
1.4  配置IPv6手动隧道 
1.4.1  配置准备 
设备上存在已经配置 IP 地址、能够进行正常通讯的接口(如 VLAN 接口,Ethernet 接口,Loopback
接口等),该接口将作为 Tunnel 接口的源接口。 
1.4.2  配置IPv6 手动隧道 
表1-4 配置 IPv6 手动隧道 
操作 
命令 
说明 
进入系统视图 
system-view 
- 
使能IPv6报文转发功能 
ipv6 
1-5 
必选 
缺省情况下,关闭IPv6报文转发功
能 
 
操作 
命令 
说明 
创建Tunnel接口并进入Tunnel接口视
图 
interface tunnel number 
设置Tunnel
接口的IPv6
地址 
配置IPv6全球单播地
址或站点本地地址 
配置IPv6链路本地地
址 
ipv6 address { ipv6-address 
prefix-length | 
ipv6-address/prefix-length } 
ipv6 address 
ipv6-address/prefix-length eui-64 
ipv6 address auto link-local 
ipv6 address ipv6-address 
link-local 
配置隧道模式为IPv6手动隧道模式 
tunnel-protocol ipv6-ipv4 
设置Tunnel接口的源端地址或接口 
source { ip-address | interface-type 
interface-number } 
设置Tunnel接口的目的端地址 
destination ip-address 
必选 
缺省情况下,设备上无Tunnel接口
二者必选其一 
缺省情况下,Tunnel接口上没有设
置IPv6全球单播地址或站点本地
地址 
可选 
缺省情况下,当接口配置了IPv6
全球单播地址或站点本地地址后,
会自动生成链路本地地址 
必选 
缺省情况下,为GRE over IPv4隧
道模式 
在隧道的两端应配置相同的隧道
模式,否则可能造成报文传输失败
必选 
缺省情况下,Tunnel接口上没有设
置源端地址和接口 
必选 
缺省情况下,Tunnel接口上没有设
置目的端地址 
退回系统视图 
quit 
- 
配置丢弃含有IPv4兼容IPv6地址的
IPv6报文 
tunnel discard 
ipv4-compatible-packet 
可选 
缺省情况下,不会丢弃含有IPv4
兼容IPv6地址的IPv6报文 
 
 
•  以上各项 Tunnel 接口下进行的功能特性配置,在删除 Tunnel 接口后,该接口上的所有配置也将
被删除。 
•  如果封装前 IPv6 报文的目的 IPv6 地址与 Tunnel 接口的 IPv6 地址不在同一个网段,则必须配置
通过 Tunnel 接口到达目的 IPv6 地址的转发路由,以便需要进行封装的报文能正常转发。用户可
以配置静态路由,指定到达目的 IPv6 地址的路由出接口为本端 Tunnel 接口或下一跳为对端
Tunnel 接口地址。用户也可以配置动态路由,在 Tunnel 接口使能动态路由协议。在隧道的两端
都要进行此项配置,配置的详细情况请参见“三层技术-IP 路由配置指导”中的“IPv6 静态路由”
或其他路由协议配置。 
 
1.4.3  配置举例 
 
缺省情况下,以太网接口、VLAN 接口及聚合接口处于 DOWN 状态。如果要对这些接口进行配置,
请先使用 undo shutdown 命令使接口状态处于 UP 状态。 
 
1-6 
 
1. 组网需求 
如 图 1-4 所示,两个IPv6 网络分别通过Switch  A和Switch  B与IPv4 网络连接,要求在Switch  A和
Switch B之间建立IPv6 手动隧道,使两个IPv6 网络可以互通。如果隧道终点的IPv4 地址不能从IPv6
报文的目的地址中自动获取,则需要配置IPv6 手工隧道。 
2. 组网图 
图1-4 IPv6 手动隧道组网图 
 
3. 配置步骤 
 
 
在开始下面的配置之前,请确保 Switch A 和 Switch B 上已经创建相应的 VLAN 接口,且两者之间
IPv4 报文路由可达。 
 
(1)  配置 Switch A 
# 使能 IPv6 转发功能。 
 system-view 
[SwitchA] ipv6 
# 配置接口 Vlan-interface100 的地址。 
[SwitchA] interface vlan-interface 100 
[SwitchA-Vlan-interface100] ip address 192.168.100.1 255.255.255.0 
[SwitchA-Vlan-interface100] quit 
# 配置接口 Vlan-interface101 的 IPv6 地址。 
[SwitchA] interface vlan-interface 101 
[SwitchA-Vlan-interface101] ipv6 address 3002::1 64 
[SwitchA-Vlan-interface101] quit 
# 配置手动隧道。 
[SwitchA] interface Tunnel 0 
[SwitchA-Tunnel0] ipv6 address 3001::1/64 
[SwitchA-Tunnel0] source vlan-interface 100 
[SwitchA-Tunnel0] destination 192.168.50.1 
[SwitchA-Tunnel0] tunnel-protocol ipv6-ipv4 
[SwitchA-Tunnel0] quit 
# 配置从 Switch A 经过 Tunnel0 接口到 Group 2 的静态路由。 
[SwitchA] ipv6 route-static 3003:: 64 Tunnel 0 
(2)  配置 Switch B 
# 使能 IPv6 转发功能。 
 system-view 
[SwitchB] ipv6 
# 配置接口 Vlan-interface100 的地址。 
1-7