• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

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

目录

14-IPv6过渡技术配置

本章节下载 14-IPv6过渡技术配置  (434.54 KB)

14-IPv6过渡技术配置


1 IPv6过渡技术

1.1  IPv6过渡技术简介

在IPv6成为主流协议之前,首先使用IPv6协议栈的网络希望能与当前仍被IPv4支撑着的互联网进行正常通信,因此必须开发出IPv4和IPv6互通技术以保证IPv4能够平稳过渡到IPv6。互通技术应该对信息传递做到高效无缝。

1. 双协议栈

双协议栈是一种最简单直接的过渡机制。同时支持IPv4协议和IPv6协议的网络节点称为双协议栈节点。当双协议栈节点配置IPv4地址和IPv6地址后,就可以在相应接口上转发IPv4和IPv6报文。当一个上层应用同时支持IPv4和IPv6协议时,根据协议要求可以选用TCP或UDP作为传输层的协议,但在选择网络层协议时,它会优先选择IPv6协议栈。双协议栈技术适合IPv4网络节点之间或者IPv6网络节点之间通信,是所有过渡技术的基础。但是,这种技术要求运行双协议栈的节点有一个全球唯一的地址,实际上没有解决IPv4地址资源匮乏的问题。

2. NAT-PT

NAT-PT(Network Address Translation-Protocol Translation,附带协议转换的网络地址转换)作用于IPv4和IPv6网络边缘的设备上,用于实现IPv6与IPv4报文的转换。NAT-PT在IPv4和IPv6网络之间转换IP报头的地址,同时根据协议不同对报文做相应的语义翻译,使纯IPv4节点和纯IPv6节点之间能够透明通信。这种技术适用于仅运行IPv6的节点和仅运行IPv4的节点之间的通信,具有一定的局限性。

3. 隧道技术

隧道是一种封装技术,它利用一种网络协议来传输另一种网络协议,即利用一种网络传输协议,将其他协议产生的数据报文封装在它自己的报文中,然后在网络中传输,如IPv6 over IPv4隧道技术。

1.2  IPv6 over IPv4隧道

1.2.1  IPv6 over IPv4隧道原理

图1-1所示,IPv6 over IPv4隧道是在IPv6数据报文前封装上IPv4的报文头,通过隧道使IPv6报文穿越IPv4网络,实现隔离的IPv6网络互通。IPv6 over IPv4隧道两端的设备必须支持IPv4/IPv6双协议栈,即同时支持IPv4协议和IPv6协议。

图1-1 IPv6 over IPv4隧道原理图

 

IPv6 over IPv4隧道对报文的处理过程如下:

(1)     IPv6网络中的主机发送IPv6报文,该报文到达隧道的源端设备Device A。

(2)     Device A根据路由表判定该报文要通过隧道进行转发后,在IPv6报文前封装上IPv4的报文头,通过隧道的实际物理接口将报文转发出去。IPv4报文头中的源IP地址为隧道的源端地址,目的IP地址为隧道的目的端地址。

(3)     封装报文通过隧道到达隧道目的端设备(或称隧道终点)Device B,Device B判断该封装报文的目的地是本设备后,将对报文进行解封装。

(4)     Device B根据解封装后的IPv6报文的目的地址处理该IPv6报文。如果目的地就是本设备,则将IPv6报文转给上层协议处理;否则,查找路由表转发该IPv6报文。

1.2.2  IPv6 over IPv4隧道模式

根据隧道终点的IPv4地址的获取方式不同,隧道分为“配置隧道”和“自动隧道”。

·     如果IPv6 over IPv4隧道终点的IPv4地址不能从IPv6报文的目的地址中自动获取,需要进行手工配置,这样的隧道称为“配置隧道”。

·     如果IPv6报文的目的地址中嵌入了IPv4地址,则可以从IPv6报文的目的地址中自动获取隧道终点的IPv4地址,这样的隧道称为“自动隧道”。

根据对IPv6报文的封装方式的不同,IPv6 over IPv4隧道分为以下几种模式。

1. IPv6 over IPv4手动隧道

IPv6 over IPv4手动隧道是点到点之间的链路。建立手动隧道需要在隧道两端手工指定隧道的源端和目的端地址。

手动隧道可以建立在连接IPv4网络和IPv6网络的两个边缘路由器之间,实现隔离的IPv6网络跨越IPv4网络通信;也可以建立在边缘路由器和IPv4/IPv6双栈主机之间,实现隔离的IPv6网络跨越IPv4网络与双栈主机通信。

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地址可以自动确定隧道的目的端地址。

IPv4兼容IPv6自动隧道的建立非常方便。但是,由于它使用IPv4兼容IPv6地址,采用IPv4兼容IPv6自动隧道通信的主机和路由器必须具有全球唯一的IPv4地址,无法解决IPv4地址空间耗尽的问题,存在一定的局限性。

3. 6to4隧道

·     普通6to4隧道

6to4隧道是点到多点的自动隧道,主要建立在边缘路由器之间,用于通过IPv4网络连接多个IPv6孤岛。

6to4隧道两端采用特殊的6to4地址,其格式为:2002:abcd:efgh:子网号::接口ID/48。其中:2002表示固定的IPv6地址前缀;abcd:efgh为用16进制表示的IPv4地址(如1.1.1.1可以表示为0101:0101),用来唯一标识一个6to4网络(如果IPv6孤岛中的主机都采用6to4地址,则该IPv6孤岛称为6to4网络),6to4网络的边缘路由器上连接IPv4网络的接口地址需要配置为此IPv4地址;子网号用来在6to4网络内划分子网;子网号和接口ID共同标识了一个主机在6to4网络内的位置。通过6to4地址中嵌入的IPv4地址可以自动确定隧道的终点,使隧道的建立非常方便。

6to4地址中采用一个全球唯一的IPv4地址标识了一个6to4网络,克服了IPv4兼容IPv6自动隧道的局限性。

·     6to4中继

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

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

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

 

4. ISATAP隧道

ISATAP隧道是点到多点的自动隧道技术,为IPv6主机通过IPv4网络接入IPv6网络提供了一个较好的解决方案。

使用ISATAP隧道时,IPv6报文的目的地址要采用特殊的ISATAP地址。ISATAP地址格式为:Prefix:0:5EFE:abcd:efgh/64。其中,64位的Prefix为任何合法的IPv6单播地址前缀;abcd:efgh为用16进制表示的32位IPv4地址(如1.1.1.1可以表示为0101:0101),该IPv4地址不要求全球唯一。通过ISATAP地址中嵌入的IPv4地址可以自动确定隧道的终点,使隧道的建立非常方便。

ISATAP隧道主要用于跨越IPv4网络在IPv6主机与边缘路由器之间、两个边缘路由器之间建立连接。

图1-3 ISATAP隧道原理图

 

5. 6RD隧道

·     普通6RD隧道

6RD隧道是点到多点的自动隧道技术,是对6to4隧道的扩展。相对于6to4网络,6RD网络的IPv6地址前缀不再局限于2002::/16,而是由运营商分配,并且不再要求将整个32位的IPv4地址都嵌入到IPv6地址中,可以只是嵌入一部分。

图1-4 6RD网络的IPv6地址格式

 

 

6RD网络的IPv6地址格式如图1-4所示,其中:6RD prefix表示运营商的IPv6地址前缀,长度为n bits;IPv4 address表示部分或完整的隧道源端的IPv4地址,长度为o bits,用16进制表示(如配置IPv4前缀长度为8 bits、后缀长度为8 bits,那么1.2.3.4地址的前缀为01,后缀为04,IPv4 address为0203);6RD prefix和IPv4 address共同构成6RD Delegated Prefix(6RD授权前缀),用来唯一标识一个6RD网络(如果IPv6孤岛中的主机都采用6RD地址,则该IPv6孤岛称为6RD网络);子网号用来在6RD网络内划分子网;子网号和接口ID共同标识了一个主机在6RD网络内的位置。通过6RD地址中嵌入的IPv4地址以及6RD前缀、IPv4前缀和后缀可以自动确定隧道的终点,使隧道的建立非常方便。

·     6RD中继

普通6RD隧道只能用于前缀为6RD授权前缀的6RD网络之间的通信,但在IPv6网络中也会存在未采用6RD授权前缀的地址。为了实现6RD网络和非6RD网络通信,必须有一台6RD路由器作为网关转发到非6RD网络的报文,这台路由器就叫做6RD中继(6RD Border Relay,简称BR)路由器,而6RD网络的边缘路由器叫做6RD用户侧(6RD Customer Edge,简称CE)路由器。

图1-5所示,在6RD用户侧路由器Device A上配置一条到达非6RD网络的静态路由,下一跳地址指向6RD中继路由器Device C的6RD地址,这样,所有去往该网络的报文都会被转发到6RD中继路由器,之后再由6RD中继路由器转发到非6RD网络中,从而实现6RD网络与非6RD网络的互通。

图1-5 6RD隧道和6RD中继原理图

1.3  IPv4 over IPv6隧道

1.3.1  IPv4 over IPv6隧道原理

随着IPv6网络的广泛部署,IPv6网络将逐渐取代IPv4网络,占据主导地位。尚未被IPv6网络取代的IPv4网络将形成孤岛,需要通过IPv6网络互通。IPv4 over IPv6隧道在IPv4报文上封装IPv6的报文头,通过隧道使IPv4报文穿越IPv6网络,从而实现通过IPv6网络连接隔离的IPv4网络孤岛。

图1-6 IPv4 over IPv6隧道原理图

 

IPv4报文在隧道中传输经过封装与解封装两个过程,以图1-6为例说明这两个过程:

·     封装过程

Device A连接IPv4网络的接口收到IPv4报文后,首先交由IPv4协议栈处理。IPv4协议栈根据IPv4报文头中的目的地址判断该报文需要通过隧道进行转发,则将此报文发给Tunnel接口。

Tunnel接口收到此报文后添加IPv6报文头,IPv6报文头中源IPv6地址为隧道的源端地址,目的IPv6地址为隧道的目的端地址。封装完成后将报文交给IPv6模块处理。IPv6协议模块根据IPv6报文头的目的地址重新确定如何转发此报文。

·     解封装过程

解封装过程和封装过程相反。从连接IPv6网络的接口接收到IPv6报文后,将其送到IPv6协议模块。IPv6协议模块检查IPv6报文封装的协议类型。若封装的协议为IPv4,则报文进入隧道处理模块进行解封装处理。解封装之后的IPv4报文被送往IPv4协议模块进行二次路由处理。

1.3.2  IPv4 over IPv6隧道模式

IPv4 over IPv6隧道分为IPv4 over IPv6手动隧道和DS-Lite隧道两种。

1. IPv4 over IPv6手动隧道

IPv4 over IPv6手动隧道需要手动配置隧道的源和目的IPv6地址,以便根据配置的地址在IPv4报文上封装IPv6报文头,使报文能通过隧道穿越IPv6网络。IPv4 over IPv6手动隧道是一种点到点的虚拟链路。

2. DS-Lite隧道

DS-Lite(Dual Stack Lite,轻量级双协议栈)技术综合了IPv4 over IPv6隧道技术和NAT(Network Address Translation,网络地址转换)技术,利用隧道技术实现通过IPv6网络连接隔离的IPv4网络,利用NAT技术实现不同的用户网络共享相同的IPv4地址空间,减缓IPv4地址的耗尽速度。

图1-7 DS-Lite组网图

 

图1-7所示,DS-Lite网络主要由几个部分组成:

·     DS-Lite隧道

DS-Lite隧道是B4设备和AFTR之间的IPv4 over IPv6隧道,用来实现IPv4报文跨越IPv6网络传输。

·     B4(Basic Bridging BroadBand,基本桥接宽带)设备

B4设备是位于用户网络侧、用来连接ISP(Internet Service Provider,互联网服务提供商)网络的设备,通常为用户网络的网关。B4设备作为DS-Lite隧道的一个端点,负责将用户网络的IPv4报文封装成IPv6报文发送给隧道的另一个端点,同时将从隧道接收到的IPv6报文解封装成IPv4报文发送给用户网络。

某些用户网络的主机也可以作为B4设备,直接连接到ISP网络,这样的主机称为DS-Lite主机。

·     AFTR(Address Family Transition Router,地址族转换路由器)

AFTR是ISP网络中的设备。AFTR同时作为DS-Lite隧道端点和NAT网关设备。

AFTR从DS-Lite隧道接收到B4设备发送的IPv6报文后,为该B4设备分配Tunnel ID,并记录B4设备的IPv6地址(报文中的源IPv6地址)与Tunnel ID的对应关系。AFTR对IPv6报文进行解封装,将解封装后的用户网络报文的源IPv4地址(私网地址)转换为公网地址,并将转换后的报文发送给目的IPv4主机。AFTR进行NAT转换时,同时记录NAT映射关系和Tunnel ID,以便实现不同B4设备连接的用户网络地址可以重叠。

AFTR接收到目的IPv4主机返回的应答报文后,将目的IPv4地址(公网地址)转换为对应的私网地址,并根据记录的Tunnel ID获取对应的B4设备的IPv6地址,作为封装后IPv6报文的目的地址。AFTR将NAT转换后的报文封装成IPv6报文通过隧道发送给B4设备。

提示

DS-Lite只支持用户网络内的IPv4主机主动访问公网上的IPv4主机;公网上的IPv4主机不能主动访问用户网络内的IPv4主机。

 

图1-8 DS-Lite报文转发流程

 

采用独立的网关设备作为B4设备时,报文转发过程中源和目的IP地址、源和目的端口号的变化如图1-8所示。报文转发过程的关键步骤为:

·     B4设备和AFTR对报文进行封装和解封装。

·     AFTR对IPv4报文进行NAT转换。

说明

图1-8所示为PAT模式的动态地址转换。使用静态地址转换时不同B4设备连接的用户网络地址不能重叠,因此DS-Lite隧道一般使用动态地址转换。有关NAT的详细介绍,请参见“NAT配置指导”中的“NAT”。

 


2 配置IPv6 over IPv4隧道

2.1  IPv6 over IPv4隧道配置任务简介

IPv6 over IPv4隧道配置任务如下:

(1)     配置IPv6 over IPv4隧道

请选择以下一项任务进行配置:

¡     配置IPv6 over IPv4手动隧道

¡     配置IPv4兼容IPv6自动隧道

¡     配置6to4隧道

¡     配置ISATAP隧道

(2)     (可选)配置丢弃含有IPv4兼容IPv6地址的IPv6报文

(3)     (可选)开启隧道报文的分片检查功能

2.2  配置IPv6 over IPv4手动隧道

2.2.1  配置限制和指导

·     在本端设备上为隧道指定的目的端地址,应该与在对端设备上为隧道指定的源端地址相同;在本端设备上为隧道指定的源端地址,应该与在对端设备上为隧道指定的目的端地址相同。

·     在同一台设备上,隧道模式相同的Tunnel接口建议不要同时配置完全相同的源端地址和目的端地址。

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

·     本配置任务仅列出了配置IPv6 over IPv4手动隧道涉及的隧道接口相关的基础配置命令(interface tunnelsourcedestinationtunnel dfbit enable命令),关于隧道接口的更多配置命令的详细介绍,请参见“接口管理命令参考”中的“隧道接口”。

2.2.2  配置步骤

(1)     进入系统视图。

system-view

(2)     进入模式为IPv6 over IPv4手动隧道的Tunnel接口视图。

interface tunnel number [ mode ipv6-ipv4 ]

(3)     设置Tunnel接口的IPv6地址。

详细配置方法,请参见“三层技术-IP业务配置指导”中的“IPv6基础”。

(4)     设置隧道的源端地址或源接口。

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

缺省情况下,未设置隧道的源端地址和源接口。

如果设置的是隧道的源端地址,则该地址将作为封装后隧道报文的源IP地址;如果设置的是隧道的源接口,则该接口的主IP地址将作为封装后隧道报文的源IP地址。

(5)     设置隧道的目的端地址。

destination ipv4-address

缺省情况下,未设置隧道的目的端地址。

隧道的目的端地址是对端接收报文的接口的地址,该地址将作为封装后隧道报文的目的地址。

(6)     (可选)设置封装后隧道报文的DF(Don’t Fragment,不分片)标志。

tunnel dfbit enable

缺省情况下,未设置隧道报文的不分片标志,即转发隧道报文时允许分片。

2.3  配置IPv4兼容IPv6自动隧道

2.3.1  配置限制和指导

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

·     对于自动隧道,隧道模式相同的Tunnel接口建议不要同时配置完全相同的源端地址。

·     本配置任务仅列出了配置IPv4兼容IPv6自动隧道涉及的隧道接口相关的基础配置命令(interface tunnelsourcetunnel dfbit enable命令),关于隧道接口的更多配置命令的详细介绍,请参见“接口管理命令参考”中的“隧道接口”。

2.3.2  配置步骤

(1)     进入系统视图。

system-view

(2)     进入模式为IPv4兼容IPv6自动隧道的Tunnel接口视图。

interface tunnel number [ mode ipv6-ipv4 auto-tunnel ]

(3)     设置Tunnel接口的IPv6地址。

详细配置方法,请参见“三层技术-IP业务配置指导”中的“IPv6基础”。

(4)     设置隧道的源端地址或源接口。

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

缺省情况下,未设置隧道的源端地址和源接口。

如果设置的是隧道的源端地址,则该地址将作为封装后隧道报文的源IP地址;如果设置的是隧道的源接口,则该接口的主IP地址将作为封装后隧道报文的源IP地址。

(5)     (可选)设置封装后隧道报文的DF(Don’t Fragment,不分片)标志。

tunnel dfbit enable

缺省情况下,未设置隧道报文的不分片标志,即转发隧道报文时允许分片。

2.3.3  IPv4兼容IPv6自动隧道典型配置举例

1. 组网需求

图2-1所示,两台具有双协议栈的设备Device A和Device B通过IPv4网络连接。网络管理员希望建立IPv4兼容IPv6自动隧道,使得这两台设备能够通过IPv6协议互通。

2. 组网图

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

3. 配置准备

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

4. 配置步骤

(1)     配置Device A

# 配置接口GigabitEthernet1/0/1的地址。

<DeviceA> system-view

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-GigabitEthernet1/0/1] ip address 192.168.100.1 255.255.255.0

[DeviceA-GigabitEthernet1/0/1] quit

# 创建模式为IPv4兼容IPv6自动隧道的接口Tunnel0。

[DeviceA] interface tunnel 0 mode ipv6-ipv4 auto-tunnel

# 配置Tunnel0接口的IPv6地址为IPv4兼容IPv6地址::192.168.100.1/96。

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

# 配置Tunnel0接口的源接口为GigabitEthernet1/0/1。

[DeviceA-Tunnel0] source gigabitethernet 1/0/1

(2)     配置Device B

# 配置接口GigabitEthernet1/0/1的地址。

<DeviceB> system-view

[DeviceB] interface gigabitethernet 1/0/1

[DeviceB-GigabitEthernet1/0/1] ip address 192.168.50.1 255.255.255.0

[DeviceB-GigabitEthernet1/0/1] quit

# 创建模式为IPv4兼容IPv6自动隧道的接口Tunnel0。

[DeviceB] interface tunnel 0 mode ipv6-ipv4 auto-tunnel

# 配置Tunnel0接口的IPv6地址为IPv4兼容IPv6地址::192.168.50.1/96。

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

# 配置Tunnel0接口的源接口为GigabitEthernet1/0/1。

[DeviceB-Tunnel0] source gigabitethernet 1/0/1

5. 验证配置

# 完成上述配置后,在Device A和Device B上分别执行display ipv6 interface命令,可以看出Tunnel0接口处于up状态。(具体显示信息略)

# 从Device A和Device B上可以Ping通对端的IPv4兼容IPv6地址。下面仅以Device A为例。

[DeviceA-Tunnel0] ping ipv6 ::192.168.50.1

Ping6(56 data bytes) ::192.168.100.1 --> ::192.168.50.1, press CTRL_C to break

56 bytes from ::192.168.50.1, icmp_seq=0 hlim=64 time=17.000 ms

56 bytes from ::192.168.50.1, icmp_seq=1 hlim=64 time=9.000 ms

56 bytes from ::192.168.50.1, icmp_seq=2 hlim=64 time=11.000 ms

56 bytes from ::192.168.50.1, icmp_seq=3 hlim=64 time=9.000 ms

56 bytes from ::192.168.50.1, icmp_seq=4 hlim=64 time=11.000 ms

 

--- Ping6 statistics for ::192.168.50.1 ---

5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss

round-trip min/avg/max/std-dev = 9.000/11.400/17.000/2.939 ms

2.4  配置6to4隧道

2.4.1  配置限制和指导

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

·     对于自动隧道,隧道模式相同的Tunnel接口建议不要同时配置完全相同的源端地址。

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

·     本配置任务仅列出了配置6to4隧道涉及的隧道接口相关的基础配置命令(interface tunnelsourcetunnel dfbit enable命令),关于隧道接口的更多配置命令的详细介绍,请参见“接口管理命令参考”中的“隧道接口”。

2.4.2  配置步骤

(1)     进入系统视图。

system-view

(2)     进入模式为6to4隧道的Tunnel接口视图。

interface tunnel number [ mode ipv6-ipv4 6to4 ]

(3)     设置Tunnel接口的IPv6地址。

详细配置方法,请参见“三层技术-IP业务配置指导”中的“IPv6基础”。

(4)     设置隧道的源端地址或源接口。

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

缺省情况下,未设置隧道的源端地址和源接口。

如果设置的是隧道的源端地址,则该地址将作为封装后隧道报文的源IP地址;如果设置的是隧道的源接口,则该接口的主IP地址将作为封装后隧道报文的源IP地址。

(5)     (可选)设置封装后隧道报文的DF(Don’t Fragment,不分片)标志。

tunnel dfbit enable

缺省情况下,未设置隧道报文的不分片标志,即转发隧道报文时允许分片。

2.4.3  6to4隧道典型配置举例

1. 组网需求

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

2. 组网图

图2-2 6to4隧道组网图

3. 配置思路

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

·     Device A上接口GigabitEthernet1/0/2的IPv4地址为2.1.1.1/24,转换成6to4地址后的前缀为2002:0201:0101::/48,Host A的地址必须使用该前缀。

·     Device B上接口GigabitEthernet1/0/2的IPv4地址为5.1.1.1/24,转换成6to4地址后的前缀为2002:0501:0101::/48,Host B的地址必须使用该前缀。

4. 配置准备

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

5. 配置步骤

(1)     配置Device A

# 配置接口GigabitEthernet1/0/2的地址。

<DeviceA> system-view

[DeviceA] interface gigabitethernet 1/0/2

[DeviceA-GigabitEthernet1/0/2] ip address 2.1.1.1 24

[DeviceA-GigabitEthernet1/0/2] quit

# 配置接口GigabitEthernet1/0/1的地址为6to4地址2002:0201:0101:1::1/64。

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-GigabitEthernet1/0/1] ipv6 address 2002:0201:0101:1::1/64

[DeviceA-GigabitEthernet1/0/1] quit

# 创建模式为6to4隧道的接口Tunnel0。

[DeviceA] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

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

# 配置Tunnel0接口的源接口为GigabitEthernet1/0/2。

[DeviceA-Tunnel0] source gigabitethernet 1/0/2

[DeviceA-Tunnel0] quit

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

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

(2)     配置Device B

# 配置接口GigabitEthernet1/0/2的地址。

<DeviceB> system-view

[DeviceB] interface gigabitethernet 1/0/2

[DeviceB-GigabitEthernet1/0/2] ip address 5.1.1.1 24

[DeviceB-GigabitEthernet1/0/2] quit

# 配置接口GigabitEthernet1/0/1的地址为6to4地址2002:0501:0101:1::1/64。

[DeviceB] interface gigabitethernet 1/0/1

[DeviceB-GigabitEthernet1/0/1] ipv6 address 2002:0501:0101:1::1/64

[DeviceB-GigabitEthernet1/0/1] quit

# 创建模式为6to4隧道的接口Tunnel0。

[DeviceB] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

[DeviceB-Tunnel0] ipv6 address 3002::1/64

# 配置Tunnel0接口的源接口为GigabitEthernet1/0/2。

[DeviceB-Tunnel0] source gigabitethernet 1/0/2

[DeviceB-Tunnel0] quit

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

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

6. 验证配置

完成以上配置之后,Host A与Host 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

2.4.4  6to4中继典型配置举例

1. 组网需求

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

2. 组网图

图2-3 6to4中继组网图

3. 配置思路

6to4中继设备的配置与6to4设备的配置相同,但为实现6to4网络与IPv6网络的互通,需要在6to4设备上配置到IPv6网络的路由,下一跳指向6to4中继设备的6to4地址。6to4中继设备上接口GigabitEthernet1/0/2的IPv4地址为6.1.1.1/24,转换成6to4地址后的前缀为2002:0601:0101::/48,6to4设备上配置的到IPv6网络的路由下一跳可以是符合该前缀的任意一个地址。

4. 配置准备

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

5. 配置步骤

(1)     配置Device A

# 配置接口GigabitEthernet1/0/2的地址。

<DeviceA> system-view

[DeviceA] interface gigabitethernet 1/0/2

[DeviceA-GigabitEthernet1/0/2] ip address 2.1.1.1 255.255.255.0

[DeviceA-GigabitEthernet1/0/2] quit

# 配置接口GigabitEthernet1/0/1的地址为6to4地址2002:0201:0101:1::1/64。

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-GigabitEthernet1/0/1] ipv6 address 2002:0201:0101:1::1/64

[DeviceA-GigabitEthernet1/0/1] quit

# 创建模式为6to4隧道的接口Tunnel0。

[DeviceA] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

[DeviceA-Tunnel0] ipv6 address 2002::1/64

# 配置Tunnel0接口的源接口为GigabitEthernet1/0/2。

[DeviceA-Tunnel0] source gigabitethernet 1/0/2

[DeviceA-Tunnel0] quit

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

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

# 配置到纯IPv6网络的缺省路由,指定路由的下一跳地址为6to4中继设备的6to4地址。

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

(2)     配置Device B

# 配置接口GigabitEthernet1/0/2的地址。

<DeviceB> system-view

[DeviceB] interface gigabitethernet 1/0/2

[DeviceB-GigabitEthernet1/0/2] ip address 6.1.1.1 255.255.255.0

[DeviceB-GigabitEthernet1/0/2] quit

# 配置接口GigabitEthernet1/0/1的地址。

[DeviceB] interface gigabitethernet 1/0/1

[DeviceB-GigabitEthernet1/0/1] ipv6 address 2001::1/16

[DeviceB-GigabitEthernet1/0/1] quit

# 创建模式为6to4隧道的接口Tunnel0。

[DeviceB] interface tunnel 0 mode ipv6-ipv4 6to4

# 配置Tunnel0接口的IPv6地址。

[DeviceB-Tunnel0] ipv6 address 2003::1/64

# 配置Tunnel0接口的源接口为GigabitEthernet1/0/2。

[DeviceB-Tunnel0] source gigabitethernet 1/0/2

[DeviceB-Tunnel0] quit

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

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

6. 验证配置

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

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

2.5  配置ISATAP隧道

2.5.1  配置限制和指导

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

·     对于自动隧道,隧道模式相同的Tunnel接口建议不要同时配置完全相同的源端地址。

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

·     本配置任务仅列出了配置ISATAP隧道涉及的隧道接口相关的基础配置命令(interface tunnelsourcetunnel dfbit enable命令),关于隧道接口的更多配置命令的详细介绍,请参见“接口管理命令参考”中的“隧道接口”。

2.5.2  配置步骤

(1)     进入系统视图。

system-view

(2)     进入模式为ISATAP隧道的Tunnel接口视图。

interface tunnel number [ mode ipv6-ipv4 isatap ]

(3)     设置Tunnel接口的IPv6地址。

详细配置方法,请参见“三层技术-IP业务配置指导”中的“IPv6基础”。

(4)     设置隧道的源端地址或源接口。

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

缺省情况下,未设置隧道的源端地址和源接口。

如果设置的是隧道的源端地址,则该地址将作为封装后隧道报文的源IP地址;如果设置的是隧道的源接口,则该接口的主IP地址将作为封装后隧道报文的源IP地址。

(5)     (可选)设置封装后隧道报文的DF(Don’t Fragment,不分片)标志。

tunnel dfbit enable

缺省情况下,未设置隧道报文的不分片标志,即转发隧道报文时允许分片。

2.5.3  ISATAP隧道典型配置举例

1. 组网需求

图2-4所示,IPv6网络和IPv4网络通过ISATAP设备相连,在IPv4网络侧分布着一些IPv6主机。要求将IPv4网络中的IPv6主机通过ISATAP隧道接入到IPv6网络。

2. 组网图

图2-4 ISATAP隧道组网图

3. 配置步骤

(1)     配置Device

# 配置接口GigabitEthernet1/0/2的地址。

<Device> system-view

[Device] interface gigabitethernet 1/0/2

[Device-GigabitEthernet1/0/2] ipv6 address 3001::1/64

[Device-GigabitEthernet1/0/2] quit

# 配置接口GigabitEthernet1/0/1的地址。

[Device] interface gigabitethernet 1/0/1

[Device-GigabitEthernet1/0/1] ip address 1.1.1.1 255.0.0.0

[Device-GigabitEthernet1/0/1] quit

# 创建模式为ISATAP隧道的接口Tunnel0。

[Device] interface tunnel 0 mode ipv6-ipv4 isatap

# 配置Tunnel0接口采用EUI-64格式形成IPv6地址。

[Device-Tunnel0] ipv6 address 2001:: 64 eui-64

# 配置Tunnel0接口的源接口为GigabitEthernet1/0/1。

[Device-Tunnel0] source gigabitethernet 1/0/1

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

[Device-Tunnel0] undo ipv6 nd ra halt

[Device-Tunnel0] quit

(2)     配置ISATAP主机

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

# 在主机上安装IPv6协议。

C:\>ipv6 install

# 在Windows XP上,ISATAP接口通常为接口2,查看这个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 Device 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:1.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设备的IPv4地址。

C:\>netsh interface ipv6 isatap set router 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 Device Discovery

  routing preference 1

  EUI-64 embedded IPv4 address: 1.1.1.2

  router link-layer address: 1.1.1.1

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

    preferred link-local fe80::5efe:1.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:1.1.1.2,同时还有一行信息“uses Device Discovery”表明主机启用了设备发现。

# 查看主机上的IPv6路由信息。

C:\>ipv6 rt

2001::/64 -> 2 pref 1if+8=9 life 29d23h59m43s (autoconf)

::/0 -> 2/fe80::5efe:1.1.1.1 pref 1if+256=257 life 29m43s (autoconf)

(3)     配置IPv6主机

# 配置一条到边界设备隧道的路由。

C:\>netsh interface ipv6 set route 2001::/64 5 3001::1

4. 验证配置

# 在ISATAP主机上Ping IPv6主机的地址,可以Ping通,表明ISATAP隧道已经成功建立,ISATAP主机可访问IPv6网络中的主机。

C:\>ping 3001::2

 

Pinging 3001::2 with 32 bytes of data:

 

Reply from 3001::2: time=1ms

Reply from 3001::2: time=1ms

Reply from 3001::2: time=1ms

Reply from 3001::2: time=1ms

 

Ping statistics for 3001::2:

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

Approximate round trip times in milli-seconds:

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

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

1. 配置限制和指导

IPv4兼容IPv6自动隧道不支持配置丢弃含有IPv4兼容IPv6地址的IPv6报文。

2. 配置步骤

(1)     进入系统视图。

system-view

(2)     配置丢弃含有IPv4兼容IPv6地址的IPv6报文。

tunnel discard ipv4-compatible-packet

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

本命令的详细介绍,请参见“接口管理命令参考”中的“隧道接口”。

2.7  开启隧道报文的分片检查功能

(1)     进入系统视图。

system-view

(2)     开启隧道报文的分片检查功能。

tunnel ipv6-fragmentation-check enable

缺省情况下,隧道报文的分片检查功能处于关闭状态。

2.8  IPv6 over IPv4隧道显示和维护

2.8.1  显示IPv6 over IPv4隧道接口的信息

可在任意视图下执行以下命令:

·     显示IPv6 over IPv4隧道接口的信息。

display tunnel-interface [ number ]

本命令的详细介绍,请参见“接口管理命令参考”中的“隧道接口”。

·     显示IPv6 over IPv4隧道接口的相关信息。

display interface [ tunnel [ number ] ] [ brief [ description | down ] ]

本命令的详细介绍,请参见“接口管理命令参考”中的“隧道接口”。

·     显示IPv6 over IPv4隧道接口的IPv6相关信息。

display ipv6 interface [ tunnel [ number ] ] [ brief ]

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

2.8.2  清除IPv6 over IPv4隧道的统计信息

请在用户视图下执行以下命令:

·     清除IPv6 over IPv4隧道接口的统计信息。

reset counters interface [ tunnel [ number ] ]

本命令的详细介绍,请参见“接口管理命令参考”中的“接口公共”。

·     清除IPv6 over IPv4隧道接口的IPv6统计信息。

reset ipv6 statistics [ slot slot-number ]

 

 

 

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

新华三官网
联系我们