参考阅读
对于IPv6,你需要知道的问题对于IPv6,你需要知道的问题
6over4的手工隧道
顾名思义,6over4是一种ipv6的过度技术,当然还有Dual stack,本Blog主要介绍6over4tunnel中的手工隧道
GRE隧道
GRE叫做通用路由封装协议,精髓在于通用二字,即没有什么封装是GRE不能做到的
实验环境
需求:使黄色和绿色区域的两个ipv6孤岛互通,通过6over4的手工隧道实现
实现:
1、首先使用OSPF将v4域的路由打通
2、配置v6孤岛的地址,使用Lookup1
以上只是简单的操作,重点在于tunnel的配置
3、双栈的边界路由器配置GRE隧道
[R1-Tunnel0/0/0]di th
[V200R003C00]
#
interface Tunnel0/0/0
ipv6 enable
ipv6 address 2001:13::1/64 #这里是隧道的v6地址
tunnel-protocol gre #配置隧道的工作模式
source LoopBack0 #这个是v4栈的地址
destination 3.3.3.3 #P2P的v4栈的地址,注意只有P2P才能指定destination
#
return
[R3-Tunnel0/0/0]di th
[V200R003C00]
#
interface Tunnel0/0/0
description 1.1.1.1
ipv6 enable
ipv6 address 2001:13::3/64
tunnel-protocol gre
source LoopBack0
destination 1.1.1.1
#
return
4、双栈路由器配置v6的静态路由,P2P可以用出接口(隧道口),P2MP不能使用出接口,只能配成NextHop
[R1]ipv6 route-static 2001:3:: 64 Tunnel0/0/0
若配置为NextHop
[R1]ipv6 route-static 2001:3:: 64 2001:13::3
注意,这里出接口的配置虽然导致下一跳不是对端,但是P2P环境,将数据扔给隧道口就完事了,因为对端肯定就是一个,但是P2MP不能这么做
R3做相似的配置
[R3]ipv6 route-static 2001:1:: 64 Tunnel0/0/0
测试:
抓包也可以看到,v4地址后面一层是GRE封装,GRE封装内是v6栈
6over4隧道
与上面的配置大同小异,只需修改隧道的工作模式为6over4即可
[R1-Tunnel0/0/0]di th
[V200R003C00]
#
interface Tunnel0/0/0
ipv6 enable
ipv6 address 2001:13::1/64
tunnel-protocol ipv6-ipv4
source LoopBack0
destination 3.3.3.3
#
return
[R3-Tunnel0/0/0]di th
[V200R003C00]
#
interface Tunnel0/0/0
description 1.1.1.1
ipv6 enable
ipv6 address 2001:13::3/64
tunnel-protocol ipv6-ipv4
source LoopBack0
destination 1.1.1.1
#
return
测试:
抓包可以看出,v6over在v4内
总结比较
6over4隧道 :v4知道后面是v6的头,这是最佳实践
GRE隧道 :v4不知道GRE内部是什么
缺点:
- 头部开销越大,有效载荷就少一些,头部开销多了4B,有效载荷就少4B;
- 多一层封装,多一层开销;
- 头部开销导致数据载荷变小。封装开销变大
优点:
GRE 通用路由封装;里面随意封装,还可以封装v4、mpls、等等