实验名称

IPv6 over IPv4手动及GRE隧道实验



实验目的

1、 配置并验证IPv6 over IPv4手动隧道,观察报文封装

2、 配置并验证IPv6 over IPv4 GRE隧道,观察报文封装


实验拓扑

 

实验步骤

1:基本的IP地址配置,ISP IPv4网络IGP采用OSPF(本步骤省略)

2: 配置并验证IPv6 over IPv4手动隧道,观察报文封装

AR2和AR4支持双栈协议,首先在AR2和AR4创建一个隧道接口,隧道协议类型为ipv6 over ipv4,隧道源地址为自身的loopback0,隧道的目的地址为对端的loopback0,隧道接口分别配置ipv6地址

配置完成后,经过隧道转发的IPv6报文会再封装一个IPv4头部,交个ipv4协议栈处理,通物理接口转发出去,中间设备转发时只看IPv4报文头。此时隧道两端的ipv6地址即可互通,互通的方式既是ipv6 over ipv4,

在AR1和AR2之间、AR2和AR4之间、AR4和AR5之间运行OSPFv3,都属于区域0,将AR1与AR2的互联接口、AR4与AR5的互联接口、AR2和AR4的Tunnel接口宣告进OSPFv3,以AR5和AR4配置为例:


配置完成后再AR1上查看IPv6的路由表

可以看到AR1已经学习到AR5的loopback0的路由。

在AR1上以loopback0为源地址ping AR5的loopback0接口地址,同时在AR2的G0/0/1接口开启抓包:

AR1 ping AR5,数据从AR1发出去的时候是纯IPv6数据包,当数据到达AR2的时候,AR2查找路由表(实际查找FIB表),发现数据是通过Tunnel0/0/10接口发出去的,而该隧道接口的封装方式是ipv6 over ipv4,所以在封装一个ipv4报头,源目ip地址为隧道的源目IP地址,封装完成后交给ipv4协议栈处理,再查找路由表,发现目的地址10.4.4.4是通过G0/0/1接口发出去的,封装下一跳MAC转发给下一跳R3;R3转发时只看外层IPv4报头,依据路由表将数据交给R4;R4收到报文后,发现目的地址时自己隧道tunnel0/0/10的接口地址,解封装发现时ipv6报文,交给ipv6协议栈处理,查找ipv6路由表,通过物理接口g0/0/0交给下一跳;R5收到数据包后,报文目的地址既是自己,解封装交给上层协议处理。回包过程类似。

3:配置并验证IPv6 over IPv4 GRE隧道,观察报文封装

将隧道的封装协议改为GRE,重新配置隧道的源目IP地址,同时配置GRE隧道的key并开启keepalive,以AR2配置为例:


修改后带Tunnel up,路由协议收敛完成后,AR1和AR5即可正常通信:

实验心得

手动隧道最大的问题是源目IP需要手动配置,适合于两个IPv6 site之间通信,当多个IPv6 site要互通时配置较为繁琐。优点是支持动态路由协议,

获取最多实验报告,请联系