虽然整个IPv4基础设施仍然是基础,但可以用隧道机制在基础设施上部署IPv6。可以使用隧道把IPv6业务封装在IPv4数据包中,然后通过IPv4路由基础设施传输IPv6业务。如下图,通过使用IPv6隧道技术,可以在不升级IPv4核心网络的情况下,使IPv6边缘网络互通。IPv6隧道可以配置在两个边缘路由器之间,也可以配置在路由器和主机之间,但是,隧道两端的节点必须都支持IPv4和IPv6协议栈。
目前常用的IPv6隧道模式偶两种:6in4隧道/6to4隧道。
6to4隧道
6to4隧道允许本地IPv6网络通过IPv4网络,连接到远程IPv6网络。6to4隧道和6in4隧道的主要区别是,6to4隧道不是点到点的,而是点到多点的。在6to4隧道中,IPv4网络被看成是一个虚拟NBMA网络,因此路由器不是成对配置的。通过嵌入IPv6地址的IPv4地址,可以找到隧道的另一端。
IPv6边缘网络的边界路由器可以基于每个数据包,创建一个到对端IPv6网络的6to4隧道。边界路由器的IPv6地址以前缀2002::/16开始,它的格式如下图所示,这种类型的IPv6地址简称为6to4地址。
其中IPv4地址是全球***的IPv4地址,在边界路由器与IPv4网络相连的物理接口上需要配置该IPv4地址。了网标识的长度为16位,用于对边缘网络编址。隧道两端的路由器或主机必须支持IPv4和IPv6协议栈。 下面将描述一下6to4隧道的工作流程。
如下图所示,R1和 R2是6to4隧道的两端,R1和站点1内的主机都配置了6to4地址,嵌入该6to4地址的IPv4地址就是R1连接IPv4网络的IPv4地址。
R2和站点2内的主机也都配置了6to4地址,嵌入该6to4地址的IPv4地址就是R2连接IPv4网络的IPv4地址。
站点1的主机要访问站点2的主机时,IPv6报文被发送到网关R1 , R1查看该报文的目的地址,发现是6to4地址,从该6to4地址中可获得6to4隧道刘一端的IPv4地址。于是,R1将IPv6报文封装在IPv4报文中,IPv4报文的目的地址就是隧道对端的IPv4地址,源地址是隧道本端的IPv4地址。该报文被转发到R2, R2进行解封装操作,将IPv6报文发送到目的主机。
6in4 隧道
6in4 隧道是在两个IPv6 网络之间,通过IPv4 网络建立一条***链路,为隧道两端的IPv6 网络提供稳定的连接。实现的方法是,在隧道接口上手动配置IPv6 地址、隧道源IPv4 地址和隧道目的IPv4 地址。隧道两端的路由器或主机必须支持IPv4 和 IPv6 协议栈。