• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

06-三层技术-IP业务配置指导

目录

12-隧道配置

本章节下载 12-隧道配置  (433.79 KB)

docurl=/cn/Service/Document_Software/Document_Center/Routers/Catalog/CR/CR16000/Configure/Operation_Manual/H3C_CR16000_CG-R6223-6W103/06/201309/798188_30005_0.htm

12-隧道配置


1 隧道

说明

本文中的“业务处理板”指的是单板丝印为“CR-SPE-3020-E-I”的单板,“普通型接口板”指的是单板丝印为“CR-SPC-XP8LEF-I/CR-SPC-XP4LEF-I/CR-SPC-GP48LEF/CR-SPC-GT48LEF”的单板,“增强型接口板”指的是单板丝印为“CR-SPC-PUP4L-E-I/CR-SPC-XP4L-E-I”的单板。

 

1.1  隧道概述

隧道技术是一种封装技术,它利用一种网络协议来传输另一种网络协议,即一种网络协议将其他网络协议的数据报文封装在自己的报文中,然后在网络中传输。封装后的数据报文在网络中传输的路径,称为隧道。隧道是一条虚拟的点对点连接,隧道的两端需要对数据报文进行封装及解封装。隧道技术就是指包括数据封装、传输和解封装在内的全过程。

隧道技术可以:

·     作为过渡技术,实现IPv4和IPv6网络互通,如IPv6 over IPv4隧道技术。

·     创建VPN(Virtual Private Network,虚拟专用网络),保证通信的安全性,如IPv4 over IPv4隧道和GRE(Generic Routing Encapsulation,通用路由封装)。

·     实现流量工程,避免由于负载不均衡导致网络拥塞,如MPLS TE(Multiprotocol Label Switching Traffic Engineering,多协议标记交换流量工程)。

本文只介绍实现IPv4/IPv6过渡的隧道和IPv4 over IPv4隧道。如无特殊说明,下文中的隧道技术均指此类隧道。

说明

·     GRE的相关介绍请参见“三层技术-IP业务配置指导”中的“GRE”。

·     MPLS TE的相关介绍和配置请参见“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 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-address/64

 

(1)     IPv6手动隧道

手动隧道是点到点之间的链路,一条链路就是一个单独的隧道。主要用于边缘路由器—边缘路由器或主机—边缘路由器之间定期安全通信的稳定连接,可实现与远端IPv6网络的连接。

(2)     IPv4兼容IPv6自动隧道

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地址,在使用时有一定的局限性。

(3)     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中继

6to4隧道只能用于前缀为2002::/16的6to4网络之间的通信,但在IPv6网络中也会使用像2001::/16这样的IPv6网络地址。为了实现6to4网络和其它IPv6网络的通信,必须有一台6to4路由器作为网关转发到IPv6网络的报文,这台路由器就叫做6to4中继(6to4 relay)路由器。

如下图所示,在6to4网络的边缘路由器Device A上配置一条静态路由,下一跳地址指向6to4中继路由器Device C的6to4地址,这样,所有去往IPv6网络的报文都会被转发到6to4中继路由器,之后再由6to4中继路由器转发到IPv6网络中,从而实现6to4网络(地址前缀以2002开始)与IPv6网络的互通。

图1-2 6to4隧道和6to4中继原理图

 

(4)     ISATAP隧道

随着IPv6技术的推广,现有的IPv4网络中将会出现越来越多的IPv6主机,ISATAP隧道技术为这种应用提供了一个较好的解决方案。ISATAP隧道是点到多点的自动隧道技术,通过在IPv6报文的目的地址中嵌入的IPv4地址,可以自动获取隧道的终点。

使用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接口

必选

1.3 

使能VRRP-TUNNEL功能

可选

1.4 

配置IPv6 over IPv4隧道

配置IPv6手动隧道

根据组网情况,选择其一

1.5 

配置IPv4兼容IPv6自动隧道

1.6 

配置6to4隧道

1.7 

配置ISATAP隧道

1.8 

 

1.3  配置Tunnel接口

隧道两端的设备上,需要创建虚拟的三层接口——Tunnel接口,以便隧道两端的设备利用隧道发送报文、识别并处理来自隧道的报文。

表1-3 配置Tunnel接口

配置步骤

命令

说明

进入系统视图

system-view

-

创建Tunnel接口,并进入Tunnel接口视图

interface tunnel number

必选

缺省情况下,设备上无Tunnel接口

配置接口描述信息

description text

可选

缺省情况下,接口描述信息为“该接口的接口名 Interface”

配置MTU值

配置Tunnel接口的IPv4 MTU值

mtu mtu-size

可选

根据Tunnel的类型选择其一

缺省情况下MTU、IPv6 MTU的取值为1500

配置Tunnel接口的IPv6 MTU值

ipv6 mtu mtu-size

配置Tunnel接口的带宽

tunnel bandwidth bandwidth-value

可选

缺省情况下,Tunnel接口的带宽为64kbps

恢复当前接口的缺省配置

default

可选

关闭Tunnel接口

shutdown

可选

缺省情况下,接口处于开启状态

 

说明

·     主备倒换或备板拔出时,建立在主控板或备板上的隧道不会被真正删除,若再配置相同的隧道,系统会提示隧道已经存在。如果需要真正删除隧道接口,请使用undo interface tunnel命令来删除。

·     ipv6 mtu命令的详细介绍,请参见“三层技术-IP业务命令参考”中的“IPv6基础”。

·     目前,通过tunnel bandwidth命令配置的Tunnel接口带宽只用于动态路由协议计算隧道所在路径的cost值,不会影响接口的实际带宽。建议根据报文实际出接口的带宽值设置Tunnel接口带宽。

 

1.4  使能VRRP-TUNNEL功能

使能VRRP-TUNNEL功能后,在设备上建立隧道转发路径时,Tunnel接口的源接口所在的VRRP备份组的虚拟IP地址可以作为该Tunnel接口的源端地址。

有关VRRP的详细内容请参见“可靠性配置指导”中的“VRRP”。

表1-4 使能VRRP-TUNNEL功能

操作

命令

说明

进入系统视图

system-view

-

使能VRRP-TUNNEL功能

vrrp-tunnel enable

必选

缺省情况下,普通型接口板未使能VRRP-TUNNEL功能,业务处理板和增强型接口板已使能VRRP-TUNNEL功能

需要注意的是,本命令仅对普通型接口板生效

 

1.5  配置IPv6手动隧道

1.5.1  配置准备

设备上存在已经配置IP地址、能够进行正常通讯的接口(如VLAN接口,Ethernet接口,Loopback接口等),该接口将作为Tunnel接口的源接口。

1.5.2  配置IPv6手动隧道

表1-5 配置IPv6手动隧道

操作

命令

说明

进入系统视图

system-view

-

使能IPv6报文转发功能

ipv6

必选

缺省情况下,关闭IPv6报文转发功能

进入Tunnel接口视图

interface tunnel number

-

设置Tunnel接口的IPv6地址

配置IPv6全球单播地址或站点本地地址

ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length }

二者必选其一

缺省情况下,Tunnel接口上没有设置IPv6全球单播地址或站点本地地址

ipv6 address ipv6-address/prefix-length eui-64

配置IPv6链路本地地址

ipv6 address auto link-local

可选

缺省情况下,当接口配置了IPv6全球单播地址或站点本地地址后,会自动生成链路本地地址

ipv6 address ipv6-address link-local

配置隧道模式为IPv6手动隧道

tunnel-protocol ipv6-ipv4

必选

缺省情况下,为GRE over IPv4隧道模式

在隧道的两端应配置相同的隧道模式,否则可能造成报文传输失败

设置Tunnel接口的源端地址或接口

source { ip-address | interface-type interface-number }

必选

缺省情况下,Tunnel接口上没有设置源端地址和接口

设置Tunnel接口的目的端地址

destination ip-address

必选

缺省情况下,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.5.3  配置举例

1. 组网需求

图1-4所示,两个IPv6网络分别通过Router A和Router B与IPv4网络连接,要求在Router A和Router B之间建立IPv6 over IPv4隧道,使两个IPv6网络可以互通。如果隧道终点的IPv4地址不能从IPv6报文的目的地址中自动获取,则需要配置IPv6手工隧道。

2. 组网图

图1-4 IPv6手动隧道组网图

 

 

3. 配置步骤

说明

在开始下面的配置之前,请确保Router A和Router B之间IPv4报文路由可达。

 

(1)     配置Router A

# 使能IPv6转发功能。

<RouterA> system-view

[RouterA] ipv6

# 配置接口GigabitEthernet2/1/1的地址。

[RouterA] interface GigabitEthernet 2/1/1

[RouterA-GigabitEthernet2/1/1] ip address 192.168.100.1 255.255.255.0

[RouterA-GigabitEthernet2/1/1] quit

# 配置接口GigabitEthernet2/1/2的IPv6地址。

[RouterA] interface GigabitEthernet 2/1/2

[RouterA-GigabitEthernet2/1/2] ipv6 address 3002::1 64

[RouterA-GigabitEthernet2/1/2] quit

# 配置手动隧道。

[RouterA] interface tunnel 0

[RouterA-Tunnel0] ipv6 address 3001::1/64

[RouterA-Tunnel0] source GigabitEthernet 2/1/1

[RouterA-Tunnel0] destination 192.168.50.1

[RouterA-Tunnel0] tunnel-protocol ipv6-ipv4

[RouterA-Tunnel0] quit

# 配置从Router A经过Tunnel0接口到Group 2的静态路由。

[RouterA] ipv6 route-static 3003:: 64 tunnel 0

(2)     配置Router B

# 使能IPv6转发功能。

<RouterB> system-view

[RouterB] ipv6

# 配置接口GigabitEthernet2/1/1的地址。

[RouterB] interface GigabitEthernet 2/1/1

[RouterB-GigabitEthernet2/1/1] ip address 192.168.50.1 255.255.255.0

[RouterB-GigabitEthernet2/1/1] quit

# 配置接口GigabitEthernet2/1/2的IPv6地址。

[RouterB] interface GigabitEthernet 2/1/2

[RouterB-GigabitEthernet2/1/2] ipv6 address 3003::1 64

[RouterB-GigabitEthernet2/1/2] quit

# 配置手动隧道。

[RouterB] interface tunnel 0

[RouterB-Tunnel0] ipv6 address 3001::2/64

[RouterB-Tunnel0] source GigabitEthernet 2/1/1

[RouterB-Tunnel0] destination 192.168.100.1

[RouterB-Tunnel0] tunnel-protocol ipv6-ipv4

[RouterB-Tunnel0] quit

# 配置从Router B经过Tunnel0接口到Group 1的静态路由。

[RouterB] ipv6 route-static 3002:: 64 tunnel 0

4. 验证配置结果

完成以上配置之后,分别查看Router ARouter BTunnel接口状态如下:

[RouterA] display ipv6 interface tunnel 0

Tunnel0 current state :UP

Line protocol current state :UP

IPv6 is enabled, link-local address is FE80::C0A8:6401

  Global unicast address(es):

    3001::1, subnet is 3001::/64

  Joined group address(es):

    FF02::1:FF00:0

    FF02::1:FF00:1

    FF02::1:FFA8:6401

    FF02::2

    FF02::1

  MTU is 1480 bytes

  ND reachable time is 30000 milliseconds

  ND retransmit interval is 1000 milliseconds

  Hosts use stateless autoconfig for addresses

IPv6 Packet statistics:

  InReceives:                    55

……(略)

[RouterB] display ipv6 interface tunnel 0

Tunnel0 current state :UP

Line protocol current state :UP

IPv6 is enabled, link-local address is FE80::C0A8:3201

  Global unicast address(es):

    3001::2, subnet is 3001::/64

  Joined group address(es):

    FF02::1:FF00:0

    FF02::1:FF00:1

    FF02::1:FFA8:3201

    FF02::2

    FF02::1

  MTU is 1480 bytes

  ND reachable time is 30000 milliseconds

  ND retransmit interval is 1000 milliseconds

  Hosts use stateless autoconfig for addresses

IPv6 Packet statistics:

  InReceives:                    55

……(略)

# Router A上可以Ping通对端的GigabitEthernet2/1/2接口的IPv6地址:

[RouterA] ping ipv6 3003::1

  PING 3003::1 : 56  data bytes, press CTRL_C to break

    Reply from 3003::1

    bytes=56 Sequence=1 hop limit=64  time = 1 ms

    Reply from 3003::1

    bytes=56 Sequence=2 hop limit=64  time = 1 ms

    Reply from 3003::1

    bytes=56 Sequence=3 hop limit=64  time = 1 ms

    Reply from 3003::1

    bytes=56 Sequence=4 hop limit=64  time = 1 ms

    Reply from 3003::1

    bytes=56 Sequence=5 hop limit=64  time = 1 ms

 

  --- 3003::1 ping statistics ---

    5 packet(s) transmitted

    5 packet(s) received

    0.00% packet loss

    round-trip min/avg/max = 1/1/1 ms

1.6  配置IPv4兼容IPv6自动隧道

1.6.1  配置准备

设备上存在已经配置IP地址、能够进行正常通讯的接口(如VLAN接口,Ethernet接口,Loopback接口等),该接口将作为Tunnel接口的源接口。

1.6.2  配置IPv4兼容IPv6自动隧道

表1-6 配置IPv4兼容IPv6自动隧道

操作

命令

说明

进入系统视图

system-view

-

使能IPv6报文转发功能

ipv6

必选

缺省情况下,关闭IPv6报文转发功能

进入Tunnel接口视图

interface tunnel number

-

设置Tunnel接口的IPv6地址

配置IPv6全球单播地址或站点本地地址

ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length }

二者必选其一

缺省情况下,Tunnel接口上没有设置IPv6全球单播地址或站点本地地址

ipv6 address ipv6-address/prefix-length eui-64

配置IPv6链路本地地址

ipv6 address auto link-local

可选

缺省情况下,当接口配置了IPv6全球单播地址或站点本地地址后,会自动生成链路本地地址

ipv6 address ipv6-address link-local

配置隧道模式为IPv4兼容IPv6自动隧道

tunnel-protocol ipv6-ipv4 auto-tunnel

必选

缺省情况下,为GRE over IPv4隧道

在隧道的两端应配置相同的隧道模式,否则可能造成报文传输失败

设置Tunnel接口的源端地址或接口

source { ip-address | interface-type interface-number }

必选

缺省情况下,Tunnel接口上没有设置源端地址或接口

 

说明

·     IPv4兼容IPv6自动隧道不需要配置目的地址,因为隧道的目的地址可以通过IPv4兼容IPv6地址中嵌入的IPv4地址自动获得。

·     对于自动隧道,使用同种封装协议的Tunnel接口不能同时配置完全相同的源地址。

 

1.6.3  配置举例

1. 组网需求

图1-5所示,两台具有双协议栈的路由器Router A和Router B通过IPv4网络连接。在某些情况下,网络管理员希望建立IPv4兼容IPv6自动隧道,使得这两台设备能够通过IPv6协议互通。

2. 组网图

图1-5 IPv4兼容IPv6自动隧道组网图

 

3. 配置步骤

说明

在开始下面的配置之前,请确保已经配置Router A和Router B之间IPv4报文路由可达。

 

(1)     配置Router A

# 使能IPv6转发功能。

<RouterA> system-view

[RouterA] ipv6

# 配置接口GigabitEthernet2/1/1的地址。

[RouterA] interface GigabitEthernet 2/1/1

[RouterA-GigabitEthernet2/1/1] ip address 192.168.100.1 255.255.255.0

[RouterA-GigabitEthernet2/1/1] quit

# 配置自动隧道。

[RouterA] interface tunnel 0

[RouterA-Tunnel0] ipv6 address ::192.168.100.1/96

[RouterA-Tunnel0] source GigabitEthernet 2/1/1

[RouterA-Tunnel0] tunnel-protocol ipv6-ipv4 auto-tunnel

(2)     配置Router B

# 使能IPv6转发功能。

<RouterB> system-view

[RouterB] ipv6

# 配置接口GigabitEthernet2/1/1的地址。

[RouterB] interface GigabitEthernet 2/1/1

[RouterB-GigabitEthernet2/1/1] ip address 192.168.50.1 255.255.255.0

[RouterB-GigabitEthernet2/1/1] quit

# 配置自动隧道。

[RouterB] interface tunnel 0

[RouterB-Tunnel0] ipv6 address ::192.168.50.1/96

[RouterB-Tunnel0] source GigabitEthernet 2/1/1

[RouterB-Tunnel0] tunnel-protocol ipv6-ipv4 auto-tunnel

4. 验证配置结果

完成以上配置之后,分别查看Router ARouter BTunnel接口状态如下:

[RouterA] display ipv6 interface tunnel 0

Tunnel0 current state :UP

Line protocol current state :UP

IPv6 is enabled, link-local address is FE80::C0A8:6401

  Global unicast address(es):

    ::192.168.100.1, subnet is ::/96

  Joined group address(es):

    FF02::1:FFA8:6401

    FF02::1:FF00:0

    FF02::2

    FF02::1

  MTU is 1480 bytes

  ND reachable time is 30000 milliseconds

  ND retransmit interval is 1000 milliseconds

  Hosts use stateless autoconfig for addresses

IPv6 Packet statistics:

  InReceives:                    65

……(略)

[RouterB] display ipv6 interface tunnel 0

Tunnel0 current state :UP

Line protocol current state :UP

IPv6 is enabled, link-local address is FE80::C0A8:3201

  Global unicast address(es):

    ::192.168.50.1, subnet is ::/96

  Joined group address(es):

    FF02::1:FFA8:3201

    FF02::1:FF00:0

    FF02::2

    FF02::1

  MTU is 1480 bytes

  ND reachable time is 30000 milliseconds

  ND retransmit interval is 1000 milliseconds

  Hosts use stateless autoconfig for addresses

IPv6 Packet statistics:

  InReceives:                    65

……(略)

# Router A上可以Ping通对端的IPv4兼容IPv6地址:

[RouterA] ping ipv6 ::192.168.50.1

  PING ::192.168.50.1 : 56  data bytes, press CTRL_C to break

    Reply from ::192.168.50.1

    bytes=56 Sequence=1 hop limit=64  time = 1 ms

    Reply from ::192.168.50.1

    bytes=56 Sequence=2 hop limit=64  time = 1 ms

    Reply from ::192.168.50.1

    bytes=56 Sequence=3 hop limit=64  time = 1 ms

    Reply from ::192.168.50.1

    bytes=56 Sequence=4 hop limit=64  time = 1 ms

    Reply from ::192.168.50.1

    bytes=56 Sequence=5 hop limit=64  time = 1 ms

 

  --- ::192.168.50.1 ping statistics ---

    5 packet(s) transmitted

    5 packet(s) received

    0.00% packet loss

    round-trip min/avg/max = 1/1/1 ms

1.7  配置6to4隧道

1.7.1  配置准备

设备上存在已经配置IP地址、能够进行正常通讯的接口(如VLAN接口,三层以太网接口,Loopback接口等),该接口将作为Tunnel接口的源接口。

1.7.2  配置6to4隧道

表1-7 配置6to4隧道

操作

命令

说明

进入系统视图

system-view

-

使能IPv6报文转发功能

ipv6

必选

缺省情况下,关闭IPv6报文转发功能

进入Tunnel接口视图

interface tunnel number

-

设置Tunnel接口的IPv6地址

配置IPv6全球单播地址或站点本地地址

ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length }

二者必选其一

缺省情况下,Tunnel接口上没有设置IPv6全球单播地址或站点本地地址

ipv6 address ipv6-address/prefix-length eui-64

配置IPv6链路本地地址

ipv6 address auto link-local

可选

缺省情况下,当接口配置了IPv6全球单播地址或站点本地地址后,会自动生成链路本地地址

ipv6 address ipv6-address link-local

配置隧道模式为6to4隧道

tunnel-protocol ipv6-ipv4 6to4

必选

缺省情况下,为GRE over IPv4隧道模式

在隧道的两端应配置相同的隧道模式,否则可能造成报文传输失败

设置Tunnel接口的源端地址或接口

source { ip-address | interface-type interface-number }

必选

缺省情况下,Tunnel接口上没有设置源端地址和接口

退回系统视图

quit

-

配置丢弃含有IPv4兼容IPv6地址的IPv6报文

tunnel discard ipv4-compatible-packet

可选

缺省情况下,不会丢弃含有IPv4兼容IPv6地址的IPv6报文

 

说明

·     6to4隧道不需要配置目的地址,因为隧道的目的地址可以通过6to4 IPv6地址中嵌入的IPv4地址自动获得。

·     如果封装前IPv6报文的目的IPv6地址与Tunnel接口的IPv6地址不在同一个网段,则必须配置通过Tunnel接口到达目的IPv6地址的转发路由,以便需要进行封装的报文能正常转发。对于自动隧道,用户只能配置静态路由,指定到达目的IPv6地址的路由出接口为本端Tunnel接口或下一跳为对端Tunnel接口地址,不支持动态路由。在隧道的两端都要进行转发路由的配置,配置的详细情况请参见“三层技术-IP路由配置指导”中的“IPv6静态路由”。

·     对于自动隧道,使用同种封装协议的Tunnel接口不能同时配置完全相同的源地址。

 

1.7.3  配置6to4隧道举例

1. 组网需求

图1-6所示,两个6to4网络通过网络边缘6to4 router(Router A和Router B)与IPv4网络相连。在Router A和Router B之间建立6to4隧道,实现6to4网络中的主机Host A和Host B之间的互通。

2. 组网图

图1-6 6to4隧道组网图

 

3. 配置思路

为了实现6to4网络之间的互通,除了配置6to4隧道外,还需要为6to4网络内的主机及6to4 router配置6to4地址。

·     Router A上接口GigabitEthernet2/1/1的IPv4地址为2.1.1.1/24,转换成IPv6地址后使用6to4前缀2002:0201:0101::/48。对此前缀进行子网划分,Tunnel0使用2002:0201:0101::/64子网,GigabitEthernet2/1/2使用2002:0201:0101:1::/64子网。

·     Router B上接口GigabitEthernet2/1/1的IPv4地址为5.1.1.1/24,转换成IPv6地址后使用6to4前缀2002:0501:0101::/48。对此前缀进行子网划分,Tunnel0使用2002:0501:0101::/64子网,GigabitEthernet2/1/2使用2002:0501:0101:1::/64子网。

4. 配置步骤

说明

在开始下面的配置之前,请确保Router A和Router B之间IPv4报文路由可达。

 

(1)     配置Router A

# 使能IPv6转发功能。

<RouterA> system-view

[RouterA] ipv6

# 配置接口GigabitEthernet2/1/1的地址。

[RouterA] interface GigabitEthernet 2/1/1

[RouterA-GigabitEthernet2/1/1] ip address 2.1.1.1 24

[RouterA-GigabitEthernet2/1/1] quit

# 配置接口GigabitEthernet2/1/2的地址。

[RouterA] interface GigabitEthernet 2/1/2

[RouterA-GigabitEthernet2/1/2] ipv6 address 2002:0201:0101:1::1/64

[RouterA-GigabitEthernet2/1/2] quit

# 配置6to4隧道。

[RouterA] interface tunnel 0

[RouterA-Tunnel0] ipv6 address 2002:201:101::1/64

[RouterA-Tunnel0] source GigabitEthernet 2/1/1

[RouterA-Tunnel0] tunnel-protocol ipv6-ipv4 6to4

[RouterA-Tunnel0] quit

# 配置到目的地址2002::/16,下一跳为Tunnel接口的静态路由。

[RouterA] ipv6 route-static 2002:: 16 tunnel 0

(2)     配置Router B

# 使能IPv6转发功能。

<RouterB> system-view

[RouterB] ipv6

# 配置接口GigabitEthernet2/1/1的地址。

[RouterB] interface GigabitEthernet 2/1/1

[RouterB-GigabitEthernet2/1/1] ip address 5.1.1.1 24

[RouterB-GigabitEthernet2/1/1] quit

# 配置接口GigabitEthernet2/1/2的地址。

[RouterB] interface GigabitEthernet 2/1/2

[RouterB-GigabitEthernet2/1/2] ipv6 address 2002:0501:0101:1::1/64

[RouterB-GigabitEthernet2/1/2] quit

# 配置6to4隧道。

[RouterB] interface tunnel 0

[RouterB-Tunnel0] ipv6 address 2002:0501:0101::1/64

[RouterB-Tunnel0] source GigabitEthernet 2/1/1

[RouterB-Tunnel0] tunnel-protocol ipv6-ipv4 6to4

[RouterB-Tunnel0] quit

# 配置到目的地址2002::/16,下一跳为Tunnel接口的静态路由。

[RouterB] ipv6 route-static 2002:: 16 tunnel 0

5. 验证配置结果

完成以上配置之后,Host AHost B可以互相Ping通。

D:\>ping6 -s 2002:201:101:1::2 2002:501:101:1::2

 

Pinging 2002:501:101:1::2

from 2002:201:101:1::2 with 32 bytes of data:

 

Reply from 2002:501:101:1::2: bytes=32 time=13ms

Reply from 2002:501:101:1::2: bytes=32 time=1ms

Reply from 2002:501:101:1::2: bytes=32 time=1ms

Reply from 2002:501:101:1::2: bytes=32 time<1ms

 

Ping statistics for 2002:501:101:1::2:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 13ms, Average = 3ms

1.7.4  配置6to4中继举例

1. 组网需求

图1-7所示,Router A为6to4路由器,其IPv6侧的网络使用6to4地址。Router B作为6to4中继路由器,它和IPv6网络(2001::/16)相连。要求在Router A和Router B之间配置6to4隧道,使得6to4网络中的主机与IPv6网络中的主机互通。

2. 组网图

图1-7 6to4中继组网图

 

3. 配置步骤

说明

·     在开始下面的配置之前,请确保Router A和Router B之间IPv4报文路由可达。

·     6to4中继路由器的配置与6to4路由器的配置相同,但为实现6to4网络与IPv6网络的互通,需要在6to4路由器上配置到IPv6网络的路由。

 

(1)     配置Router A

# 使能IPv6转发功能。

<RouterA> system-view

[RouterA] ipv6

# 配置接口GigabitEthernet3/1/2的地址。

[RouterA] interface GigabitEthernet 3/1/2

[RouterA-GigabitEthernet3/1/2] ip address 2.1.1.1 255.255.255.0

[RouterA-GigabitEthernet3/1/2] quit

# 配置接口GigabitEthernet3/1/1的地址。

[RouterA] interface GigabitEthernet 3/1/1

[RouterA-GigabitEthernet3/1/1] ipv6 address 2002:0201:0101:1::1/64

[RouterA-GigabitEthernet3/1/1] quit

# 配置6to4隧道。

[RouterA] interface tunnel 0

[RouterA-Tunnel0] ipv6 address 2002:0201:0101::1/64

[RouterA-Tunnel0] source GigabitEthernet 3/1/2

[RouterA-Tunnel0] tunnel-protocol ipv6-ipv4 6to4

[RouterA-Tunnel0] quit

# 配置到6to4中继的静态路由。

[RouterA] ipv6 route-static 2002:0601:0101:: 64 tunnel 0

# 配置到纯IPv6网络的缺省路由。

[RouterA] ipv6 route-static :: 0 2002:0601:0101::1

(2)     配置Router B

# 使能IPv6转发功能。

<RouterB> system-view

[RouterB] ipv6

# 配置接口GigabitEthernet3/1/2的地址。

[RouterB] interface GigabitEthernet 3/1/2

[RouterB-GigabitEthernet3/1/2] ip address 6.1.1.1 255.255.255.0

[RouterB-GigabitEthernet3/1/2] quit

# 配置接口GigabitEthernet3/1/1的地址。

[RouterB] interface GigabitEthernet 3/1/1

[RouterB-GigabitEthernet3/1/1] ipv6 address 2001::1/16

[RouterB-GigabitEthernet3/1/1] quit

# 配置6to4隧道。

[RouterB] interface tunnel 0

[RouterB-Tunnel0] ipv6 address 2002:0601:0101::1/64

[RouterB-Tunnel0] source GigabitEthernet 3/1/2

[RouterB-Tunnel0] tunnel-protocol ipv6-ipv4 6to4

[RouterB-Tunnel0] quit

# 配置到目的地址2002::/16,下一跳为Tunnel接口的静态路由。

[RouterB] ipv6 route-static 2002:: 16 tunnel 0

4. 验证配置结果

完成以上配置之后,Host A可以PingHost B

D:\>ping6 -s 2002:201:101:1::2 2001::2

 

Pinging 2001::2

from 2002:201:101:1::2 with 32 bytes of data:

 

Reply from 2001::2: bytes=32 time=13ms

Reply from 2001::2: bytes=32 time=1ms

Reply from 2001::2: bytes=32 time=1ms

Reply from 2001::2: bytes=32 time<1ms

 

Ping statistics for 2001::2:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 13ms, Average = 3ms

1.8  配置ISATAP隧道

1.8.1  配置准备

设备上存在已经配置IP地址、能够进行正常通讯的接口(如VLAN接口,Ethernet接口,Loopback接口等),该接口将作为Tunnel接口的源接口。

1.8.2  配置ISATAP隧道

表1-8 配置ISATAP隧道

操作

命令

说明

进入系统视图

system-view

-

使能IPv6报文转发功能

ipv6

必选

缺省情况下,IPv6报文转发功能处于关闭状态

进入Tunnel接口视图

interface tunnel number

-

设置Tunnel接口的IPv6地址

配置IPv6全球单播地址或站点本地地址

ipv6 address { ipv6-address prefix-length | ipv6-address/prefix-length }

二者必选其一

缺省情况下,Tunnel接口上没有设置IPv6全球单播地址或站点本地地址

ipv6 address ipv6-address/prefix-length eui-64

配置IPv6链路本地地址

ipv6 address auto link-local

可选

缺省情况下,当接口配置了IPv6全球单播地址或站点本地地址后,会自动生成链路本地地址

ipv6 address ipv6-address link-local

配置隧道模式为ISATAP隧道

tunnel-protocol ipv6-ipv4 isatap

必选

缺省情况下,为GRE over IPv4隧道模式

在隧道的两端应配置相同的隧道模式,否则可能造成报文传输失败

设置Tunnel接口的源端地址或接口

source { ip-address | interface-type interface-number }

必选

缺省情况下,Tunnel接口上没有设置源端地址和接口

退回系统视图

quit

-

配置丢弃含有IPv4兼容IPv6地址的IPv6报文

tunnel discard ipv4-compatible-packet

可选

缺省情况下,不会丢弃含有IPv4兼容IPv6地址的IPv6报文

 

注意

·     ISATAP隧道不需要配置目的地址,因为隧道的目的地址可以通过ISATAP地址中嵌入的IPv4地址自动获得。

·     如果封装前IPv6报文的目的IPv6地址与Tunnel接口的IPv6地址不在同一个网段,则必须配置通过Tunnel接口到达目的IPv6地址的转发路由,以便需要进行封装的报文能正常转发。对于自动隧道,用户只能配置静态路由,指定到达目的IPv6地址的路由出接口为本端Tunnel接口或下一跳为对端Tunnel接口地址,不支持动态路由。在隧道的两端都要进行转发路由的配置,配置的详细情况请参见“三层技术-IP路由配置指导”中的“IPv6静态路由”。

·     对于自动隧道,使用同种封装协议的Tunnel接口不能同时配置完全相同的源地址。

 

1.8.3  配置举例

1. 组网需求

图1-8所示,IPv6网络和IPv4网络通过ISATAP路由器相连,在IPv4网络侧分布着一些IPv6主机。要求将IPv4网络中的IPv6主机通过ISATAP隧道接入到IPv6网络。

2. 组网图

图1-8 ISATAP隧道组网图

 

3. 配置步骤

说明

在开始下面的配置之前,请确保Router的GigabitEthernet 2/1/2和ISATAP host之间IPv4报文路由可达。

 

(1)     配置Router

# 使能IPv6转发功能。

<Router> system-view

[Router] ipv6

# 配置各接口地址。

[Router] interface GigabitEthernet 2/1/1

[Router-GigabitEthernet2/1/1] ipv6 address 3001::1/64

[Router-GigabitEthernet2/1/1] quit

[Router] interface GigabitEthernet 2/1/2

[Router-GigabitEthernet2/1/2] ip address 1.1.1.1 255.0.0.0

[Router-GigabitEthernet2/1/2] quit

# 配置ISATAP隧道。

[Router] interface tunnel 0

[Router-Tunnel0] ipv6 address 2001::5efe:0101:0101 64

[Router-Tunnel0] source GigabitEthernet 2/1/2

[Router-Tunnel0] tunnel-protocol ipv6-ipv4 isatap

# 取消对RA消息发布的抑制,使主机可以通过路由器发布的RA消息获取地址前缀等信息。

[Router-Tunnel0] undo ipv6 nd ra halt

[Router-Tunnel0] quit

# 配置到ISATAP主机的静态路由。

[Router] ipv6 route-static 2001:: 16 tunnel 0

(2)     配置ISATAP主机

ISATAP主机上的具体配置与主机的操作系统有关,下面仅以Windows XP操作系统为例进行说明。

# 在主机上安装IPv6协议。

C:\>ipv6 install

# 在Windows XP上,ISATAP接口通常为接口2,只要在该接口上配置ISATAP路由器的IPv4地址即可完成主机侧的配置。先看看这个ISATAP接口的信息:

C:\>ipv6 if 2

Interface 2: Automatic Tunneling Pseudo-Interface

  Guid {48FCE3FC-EC30-E50E-F1A7-71172AEEE3AE}

  does not use Neighbor Discovery

  does not use Router Discovery

  routing preference 1

  EUI-64 embedded IPv4 address: 0.0.0.0

  router link-layer address: 0.0.0.0

    preferred link-local fe80::5efe:2.1.1.2, life infinite

  link MTU 1280 (true link MTU 65515)

  current hop limit 128

  reachable time 42500ms (base 30000ms)

  retransmission interval 1000ms

  DAD transmits 0

  default site prefix length 48

# 它自动生成了一个ISATAP格式的link-local地址(fe80::5efe:2.1.1.2)。我们需要设置这个接口上的ISATAP路由器的IPv4地址:

C:\>ipv6 rlu 2 1.1.1.1

# 只需要这么一个命令,这就完成了主机的配置,我们再来看看这个ISATAP接口的信息:

C:\>ipv6 if 2

Interface 2: Automatic Tunneling Pseudo-Interface

  Guid {48FCE3FC-EC30-E50E-F1A7-71172AEEE3AE}

  does not use Neighbor Discovery

  uses Router Discovery

  routing preference 1

  EUI-64 embedded IPv4 address: 2.1.1.2

  router link-layer address: 1.1.1.1

    preferred global 2001::5efe:2.1.1.2, life 29d23h59m46s/6d23h59m46s (public)

    preferred link-local fe80::5efe:2.1.1.2, life infinite

  link MTU 1500 (true link MTU 65515)

  current hop limit 255

  reachable time 42500ms (base 30000ms)

  retransmission interval 1000ms

  DAD transmits 0

  default site prefix length 48

# 对比前后的区别,我们可以看到主机获取了2001::/64的前缀,自动生成地址2001::5efe:2.1.1.2,同时还会发现这么一行“uses Router Discovery”表明主机启用了路由器发现,这时Ping一下路由器上隧道接口的IPv6地址,可以Ping通,这时候表明ISATAP隧道已经成功建立。

C:\>ping 2001::5efe:1.1.1.1

 

Pinging 2001::5efe:1.1.1.1 with 32 bytes of data:

 

Reply from 2001::5efe:1.1.1.1: time=1ms

Reply from 2001::5efe:1.1.1.1: time=1ms

Reply from 2001::5efe:1.1.1.1: time=1ms

Reply from 2001::5efe:1.1.1.1: time=1ms

 

Ping statistics for 2001::5efe:1.1.1.1:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 1ms, Maximum = 1ms, Average = 1ms

4. 验证配置结果

完成以上配置之后,ISATAP主机就可访问IPv6网络中的主机。

1.9  隧道显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示隧道配置后的运行情况,通过查看显示信息验证配置的效果。

在用户视图下执行reset命令可以清除Tunnel接口的统计信息。

表1-9 隧道显示和维护

操作

命令

显示指定Tunnel接口的相关信息

display interface [ tunnel ] [ brief [ down ] ] [ | { begin | exclude | include } regular-expression ]

display interface tunnel number [ brief ] [ | { begin | exclude | include } regular-expression ]

显示Tunnel接口的IPv6相关信息

display ipv6 interface tunnel [ number ] [brief ] [ | { begin | exclude | include } regular-expression ]

清除Tunnel接口的统计信息

reset counters interface [ tunnel [number ] ]

 

1.10  常见配置错误举例

1. 故障现象

在Tunnel接口上配置了相关的参数后(例如隧道的起点、终点地址和隧道模式)仍未处于up状态。

2. 故障排除

可以按照如下步骤进行:

(1)     Tunnel接口未处于up状态的最常见原因是隧道起点的物理接口没有处于up状态。使用display interface tunneldisplay ipv6 interface tunnel命令查看隧道起点的物理接口状态为up还是down。如果物理接口状态是down,请检查网络连接。

(2)     Tunnel接口未处于up状态的另一个可能的原因是隧道的终点地址不可达。使用display ipv6 routing-tabledisplay ip routing-table命令查看是否终点地址通过路由可达。如果路由表中没有保证隧道通讯的路由项,请配置相关路由。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们