本页使用了标题或全文手工转换

IPv6过渡机制

维基百科,自由的百科全书
(重定向自IPv6转换机制
跳到导航 跳到搜索

IPv6过渡机制指那些用来促进InternetIPv4架构向下一代地址系统——IPv6过渡的技术。具体来说,就是那些允许仅与IPv4或IPv6网络连接的主机能够访问与之不同协议下资源的方法。

为了达到IPv6的技术标准,必须有简单有效的过渡方案从现有的IPv4过渡到IPv6。互联网工程任务组(IETF)通过IETF的Internet草案RFC来指导相关工作组讨论开发这些方法。一些基础的IPv6过渡机制定义在 RFC 4213 中。

无状态IP/ICMP转换[编辑]

无状态IP/ICMP转换(SIIT)是在IPv6IPv4报文头格式之间进行转换。SIIT方法定义一类被称为IPv4转换(IPv4-translated)地址的IPv6地址。这类地址的前缀为::ffff:0:0/96,也可被写作::ffff:a.b.c.d,其中IPv4格式的地址a.b.c.d表示一个使能IPv6(IPv6-enabled)的节点。选择这个前缀是为了生成一个为0的校验值,以此来避免改变传输协议头中的校验值。[1]

此算法可以使IPv6主机无需拥有一个永久的IPv4地址就能与仅有IPv4的主机通信。地址分配和路由的细节并没有在此规范中被提及。

这个规范由NGTRANS IETF工作组制订,草案由Sun Microsystems的E. Nordmark于2000年2月作为RFC 2765发布。2011年,RFC 2765被RFC 6145代替[2]。RFC 2765的地址格式化部分被定义在RFC 6052中[3]

RFC 6144定义IPv4/IPv6转换的框架[4]

隧道中间人[编辑]

隧道中间人将IPv6流量封装在IPv4互联网的传输链接中(通常使用6in4),从而提供IPv6连接。也就是在IPv4互联网上建立IPv6隧道,而这些隧道可以通过隧道设置协议(TSP)或AYIYA来管理。[5]

6rd[编辑]

6rd是一种在ISPIPv4架构上实现快速部署IPv6服务的机制。它使用IPv4IPv6之间的无状态地址映射,在用户节点之间建立自动隧道,以IPv4报文的形式传输IPv6报文。

此方案第一次被大规模部署是在2007年末(RFC 5569 [6])。 RFC 5969[7]详述了此协议。

传输中继转换[编辑]

RFC 3142 定义传输中继转换(TRT)方法。这是最常见的NAT-PT/NAPT-PT形式,只不过其依赖于在AAAA与A记录之间的DNS转换,这种转换机制被称为DNS-ALG,定义在 RFC 2694

NAT64[编辑]

NAT64 and DNS64.

NAT64是一种可以让IPv6主机与IPv4服务器通信的机制。NAT64服务器需要至少一个IPv4地址和一个32位的IPv6网段(例如:64:ff9b::/96,见 RFC 6052RFC 6146 )。IPv6客户端将希望与之通信的IPv4地址嵌入在这32位之中,并将数据包发往生成的地址。NAT64服务器则创建IPv6与IPv4地址间的NAT映射,使得它们可以彼此通信。[8]

DNS64[编辑]

DNS64是指一种专门的DNS服务器,当它处理某个域的AAAA记录查询时,如果只找到了A记录,那么它会用A记录来合成AAAA记录。合成的IPv6地址的第一部分指向一个IPv6/IPv4的转换器,而第二部分则嵌入了A记录的IPv4地址。指向的转换器通常是一个NAT64服务器。DNS64的标准在RFC 6147中规定。[9]

这种过渡机制存在两个值得注意的问题:

  • 它只适合使用DNS查找远程主机地址的情形,如果直接使用IPv4地址,DNS64将不会参与。
  • 因为DNS64服务器需要返回并非域所有者所指定的记录,因此如果执行转换的DNS服务器不是域所有者的服务器,对DNSSEC校验将会失败。

ISATAP[编辑]

ISATAP是一种IPv6过渡机制,在双栈节点之间通过IPv4网络传输IPv6数据包。

不同于6over4(较早的基于IPv4多播的类似协议),ISATAP将IPv4用作虚拟的非广播多路访问网络(NBMA)的数据链路层,因此底层的IPv4网络架构无需支持多播。

464XLAT[编辑]

464XLAT(RFC 6877)可以使仅有IPv6网络上的客户端访问仅有IPv4的互联网服务(例如 Skype)。[10][11]

客户端(例如Skype)通过SIIT转换器将IPv4数据包转换成IPv6,然后(通过仅有IPv6的网络)发送到NAT64转换器。NAT64转换器将IPv6数据包重新转换回IPv4,最后(通过支持IPv4的网络)发送到仅有IPv4的服务器(例如Skype服务器)。SIIT转换器(客户端转换器,CLAT:customer-side translator)可以由客户端自己实现,也可以在支持IPv4的中间网络上实现(如果互联网也支持IPv4,那就不需要464XLAT了);NAT64转换器(服务端转换器,PLAT:provider-side translator)必须可以同时联系到服务器和客户端(通过CLAT)。

网站[编辑]

SixXS[编辑]

SixXS(Six Access)是一个免费的、非盈利性、提供零成本服务的网站。SixXS提供IPv6通道,通过IPv6服务访问网站,因通讯数据被加密,因此可以避免遭到互联网审查。后缀“.sixxs.org”代表使用sixxs.org提供的IPv6网关,该网关将来自IPv6网络的http访问请求转换成IPv4的http请求,访问任何其他IPv4的http都可以使用这个网关,在地址后面加上“.sixxs.org”即可。不过该项目已于2017-06-06停止服务,2017-07-01正式结束。

参考文献[编辑]

  1. ^ RFC 2765 - 无状态IP/ICMP转换算法(SIIT), E. Normark (February 2000)
  2. ^ RFC 6145 IP/ICMP Translation Algorithm
  3. ^ RFC 6052 - IPv6 Addressing of IPv4/IPv6 Translators
  4. ^ RFC 6144 - Framework for IPv4/IPv6 Translation
  5. ^ RFC:3053
  6. ^ RFC 5569 IPv6 Rapid Deployment on IPv4 Infrastructures (6rd)
  7. ^ RFC 5969 IPv6 Rapid Deployment on IPv4 Infrastructures (6rd) -- Protocol Specification
  8. ^ RFC 6146 Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers
  9. ^ RFC 6147 DNS64: DNS Extensions for Network Address Translation from IPv6 Clients to IPv4 Servers
  10. ^ Video: 464XLAT Live Demo at World IPv6 Congress in Paris. Internet Society. 3 April 2013. 
  11. ^ 464XLAT -- A Solution for Providing IPv4 Services Over and IPv6-only Network. T-Mobile USA. [5 August 2013]. 
  • IPv6 in Practice, Benedikt Stockebrand (2006), ISBN 3-540-24524-3
  • RFC 2767, Bump-in-the-Stack
  • RFC 3338, Bump-in-the-API
  • RFC 3089, Socks-based Gateway
  • RFC 6219, The China Education and Research Network (CERNET) IVI Translation Design and Deployment for the IPv4/IPv6 Coexistence and Transition