IPv4/v6综合组网研究:隧道策略( 三 )


6to4隧道实现相对简单,支持的设备较多,但这种机制在网络布置中有一定的耦合性,6to4域与纯IPv6进行通信时需要6to4中继器 。当然,作为一种隧道机制,6to4同样也面临着安全问题,而且由于有6to4中继器的存在,问题更为复杂 。
6over4隧道(RFC2529)
6over4隧道使得没有直接与IPv6路由器相连的孤立IPv6主机通过IPv4组播域(以此作为虚拟链路层)形成IPv6的互联 。所以,在同一个IPv4的组播域中,至少需要有一个使用6over4的IPv6路由器和该6over4主机连接 。通过6over4机制,IPv6可以独立于底层的链路,而且可以跨越支持组播的IPv4子网 。
6over4机制要求IPv4网络支持组播功能,但目前的大多数网络均没有此功能,因此在实际应用中,它很少被利用 。另外,利用IPv4的组播特性作为虚拟链路层,是一种本地传送机制,适用范围很小,只适用于双栈主机间的通信,不能解决将一个孤立节点连接到全局IPv6网络中的问题 。6over4隧道通常只能应用在网络边缘,例如企业网和接入网 。
ISATAP机制
ISATAP可以使IPv4站点内的双栈节点通过自动隧道接入到IPv6路由器,答应与IPv6路由器不共享同一物理链路的双栈节点通过IPv4自动隧道将数据包送达IPv6下一跳 。ISATAP使用一个内嵌IPv4地址的IPv6地址,无论站点使用的是全球还是私有IPv4地址,都可以在站点内使用IPv6-in-IPv4自动隧道技术 。ISATAP地址格式既可以使用站点单播IPv6地址前缀,也可以使用全局单播IPv6地址前缀,即能够支持站点和全局的IPv6路由 。ISATAP机制通常应用在网络边缘,如企业网或接入网 。ISATAP可以和6to4技术联合使用 。
Teredo隧道
位于NAT后的IPv6节点采用一般的隧道技术(IPv6-over-IPv4)是不能和NAT域外的IPv6节点进行通信的,因为目前的NAT一般不支持协议类型为41(也就是IPv6-over-IPv4)的数据包 。Teredo隧道有别于一般的IPv6-over-IPv4隧道,确切地讲,它是一种IPv6-over-UDP隧道,数据包通过被封装在UDP载荷中的方式穿过NAT 。
Teredo隧道的通信实体包括客户端、服务器、中继、特定于Teredo主机的中继 。Teredo客户端是指支持Teredo隧道接口的IPv4/v6节点,通过此隧道界面,数据包传送给其他的Teredo客户端以及IPv6网络上的其他节点(通过Teredo中继) 。Teredo地址只是分配给 Teredo客户端,其他实体并不分配Teredo地址 。Teredo服务器指连接IPv4网络与IPv6网络的IPv4/v6节点,支持用来接收数据包的Teredo隧道接口,其常见作用是帮助 Teredo客户端进行地址配置,协助在Teredo客户端之间或者客户端与纯IPv6主机之间建立通信连接,它使用UDP 3544端口侦听Teredo通信 。Teredo中继指能够在IPv4网络上的Teredo客户端之间(使用Teredo隧道接口)以及与纯IPv6主机之间传送数据包的IPv4/v6路由器,它使用UDP 3544端口侦听Teredo通信 。特定于Teredo主机的中继指同时具有IPv4与IPv6 Internet连接并无需Teredo中继即可通过 IPv4网络直接与Teredo客户端通信的IPv4/v6节点,它使用UDP 3544端口侦听Teredo通信 。它能够使Teredo客户端与6to4主机、带有非6to4全球地址前缀的IPv6主机或者组织内部地址中使用全球前缀的ISATAP以及6over4 主机进行有效通信 。
Teredo隧道可使NAT域内的IPv6节点获得全球性的IPv6连接,在IPv4地址匮乏而广泛运行NAT的地区,尤其是中国,它无疑具有较好的应用前景 。但Teredo的运行需要Relay的支持,而且它不支持隧道中间存在Symmetric NAT;另外,Teredo地址采用规定格式的前缀也不符合IPv6路由分等级的思想 。这些不足在一定程度上将影响Teredo的部署 。
假如原来的IPv6、6to4或者ISATAP连接可用,那么主机就不必作为Teredo的客户端 。现在,越来越多的IPv4 NAT经过了升级以便能够支持6to4 ,而且IPv6连接变得越来越普遍,因此,Teredo的使用将会越来越少,直到完全被放弃 。

推荐阅读