YESLAB学霸日记—华为数通之IPv6过渡技术-ISATAP隧道及IPv4 over IP
作者:互联网
实验名称:ISATAP隧道及IPv4 over IPv6隧道实验
实验目的
1、 配置并验证IPv6 Over IPv4自动隧道-ISATAP隧道,观察报文封装
2、 配置并验证IPv4 over IPv6隧道,观察报文封装
实验拓扑
实验步骤
1:基本的IP地址配置,ISP IPv4 IGP 为OSPF(本步骤省略)
2:配置并验证IPv6 Over IPv4自动隧道-ISATAP隧道,观察报文封装
ISATAP隧道是IPv6 Over IPv4自动隧道的一种,支持R2R,H2R,R2H。采用ISATAP隧道专用地址,与6to4隧道专用地址不同的是,ISATAP隧道专用地址将IPv4地址作为接口ID,前64bits网络前缀可以采用手工配置或者通过IPv6无状态自动配置从路由器获取,第65bit至96bit采用固定格式000000ug00000000 0101111011111110,其中如果接口的IPv4地址是全局唯一的,则u位为1,否则u为0;g位是IEEE群体/个体标志。由于ISATAP是通过接口标识来表现的,所以,ISATAP地址有全局单播地址、链路本地地址、ULA地址(唯一本地地址)、组播地址等形式,只需要使用不同的网络前缀即可。所以ISATAP隧道也是自动隧道中唯一可以支持动态路由协议的。
AR2的loopback0接口配置ip地址2.2.2.2 32,注意观察隧道生成的ISATAP地址是否u bit=1.在AR2、AR4、AR8上配置隧道接口,封装协议为ipv6-ipv4 isatap,IPv6前缀采用手动指定的方式,以AR2为例:
查看隧道接口通过eui-64形成的接口地址:
查询相关资料发现虽然IANA保留给ISATAP的32比特的中u bit做了定义,但实际上windows主机使用的都是0100:5EFE,华为、Cisco路由器使用的是0000:5EFE。
至此AR2、AR4、AR8隧道接口地址可以互相ping通:
ISATAP隧道的过渡技术无需依据隧道接口ISATAP地址规划网络,使用普通的IPv6网络,配置静态路由即可实现互通。重新规划网络,在AR1、AR5、AR9上配置指向边界路由器的默认路由,在AR2、AR4、AR8上配置到达业务网段的静态路由,下一跳采用隧道对端通过eui-64形成的全球单播地址,如图所示:
在AR1 ping 2045::5,同时在AR2 G0/0/1开启接口抓包,观察报文封装:
结果不通。在AR2上 ping 2045::5是通的,但如果使用源地址2012::2 ping 2045::5则不通:
原因分析:在AR2上直接ping时使用的是出接口的地址,即Tunnel0/0/10的IPv6地址,并可以依据IPv6路由下一跳判断出隧道对端地址,并进行正确的IPv4报头封装;回包的IPv6目的地址是隧道的直连路由,可以直接依据目的地址判断出隧道对端IPv4地址,从而进行正确封装。据此判断可能是模拟器的bug,业务数据在经过隧道接口时,无法依据路由下一跳判断出应该封装哪个隧道对端IPv4地址,进而引发丢包。
由于ISATAP可以生成固定的链路本地地址,且隧道在判断目的端时是依据接口ID的低32bit,而OSPFv3即采用链路本地地址作为源地址发包,所以ISATAP隧道是可以支持动态路由协议的,唯一需要做的是将网络类型改为NBMA,采用peer指定邻居。
将先前配置的静态路由删除,配置OSPFv3,以AR2为例:
配置完成后,查看邻居关系:
此时业务网段路由便可相互学习到,查看R1的路由表:
但由于模拟器的bug,业务网段数据在到底隧道接口时依旧无法正确封装而被丢包:
3:配置并验证IPv4 over IPv6隧道,观察报文封装
修改网络结构,将ISP网络修改为IPv6,IGP采用OSPFv3,Site1、Site2修改为IPv4网络,拓扑如下:
修改完成后,AR2和AR4的loopback0口可以相互访问:
在AR2和AR4上配置隧道接口,封装协议采用ipv4-ipv6,以AR2为例,配置如下:
在AR1、AR2、AR4、A5分别配置到对端的路由:
在AR1上ping AR5的G0/0/0接口地址10.1.45.5,并在AR2的G0/0/01开启接口抓包
可以ping通。
转发过程分析:当IPv4数据报文到达边界路由器的时候,边界路由器查找IPV4路由表,发现应该通过隧道接口转发,于是将数据转发至隧道,隧道封装协议为IPv4-IPv6,由于隧道的源目IPv6地址已经明确指定,所以在IPv4数据报文外再封装一个IPv6报头,封装完成后查找IPv6路由表,从相应的接口转发出去。中间路由器R3依据外层IPv6报头转发数据。当数据到达边界路由器R4时,R4发现目的地址是设备的一个接口地址,解封装,发现是IPv4报文,再查找IPv4路由表,由于是直连路由,所以请求目的IP地址的MAC地址,将报文重新做二层封装后从相应的接口转发出去,R5即可收到报文。回包过程类似。
实验心得
1、ISATAP隧道由于其特殊的地址格式,唯一一个IPv6-IPv4自动隧道中可以支持动态路由协议的过渡技术。当由于ensp的bug在实验过程中业务数据不通。
2、IPv4-IPv6隧道属于手动隧道,因为需要在隧道中手动指定源目地址。适合与在向IPv6过渡的后期,少量的IPv4 Site之间互访,如果访问不同的Site则需要配置不同的隧道并指定源目地址,配置较为繁琐。但现阶段只有这一种IPv4-IPv6隧道技术。
更多问题联系QQ 2852378190
标签:ISATAP,隧道,学霸,IP,接口,地址,IPv4,IPv6 来源: https://blog.51cto.com/14476517/2474041