RFC2893中分配给IPv6封装在IPv4中的协议号是41,表示IPv4包里面的上层协议数据是
IPv6数据包。采用隧道方式存在的问题主要有:由于在IPv6数据包前面插入20Byte的IPv4头,可能会造成分段,从而影响性能;ICMPv4错误消息只返回IPv4报头外的8Byte,这样IPv6源站点无法得知IPv6地址信息;协议号41有可能被防火墙过滤掉;IPv6 in IPv4隧道无法穿越一个起用动态端口转换的NAT,在大多数NAT配置中,提供NAT功能的设备并不具备成为隧道路由器的功能。即使NAT设备普遍支持各种隧道功能,还是有一些应用场合包含多层NAT。
当前基于IPv4的MPLS已经比较成熟,可以借助MPLS L2/L3 VPN技术来连接IPv6的网络。基于MPLS技术的过渡方案有在CE路由器上配置隧道、基于MPLS电路的IPv6透传、在PE路由器上起用IPv6(6PE)和基于IPv6的MPLS。在C正路由器上配置隧道方案要求C正路由器支持双栈,CE和PE之间运行IPv4,CE负责将IPv6数据封装在IPv4中通过MPLS传送到对端的C正路由器;基于MPLS电路的IPv6透传将IPv6的数据包通过Any Transport over MPLS(MPLS/AtoM,基于MPLS的任何传输方式)或Ethernet over MPLS(EoMPLS,基于MPLS的以太网)来传递,路由器需要支持Atom特性,相当于L2 VPN;6PE方案是在PE路由器上提供双栈功能,IPv6数据包被封装在二层标签里进行传送,外层标签由LDP分发,内层标签由BCP4+分发,相当于L3 VPN;基于IPv6的MPLS是将IPv4的MPLS核心网络升级到IPv6,其核心网的控制平面需要升级到IPv6以支持核心网的IPv6路由和IPv6的LDP。如果需要提供IPv4/IPv6共存的服务,则需要双控制平面的支持。