论文部分内容阅读
【摘要】 IPv6作为下一代互联网基础协议用以解决IPv4地址短缺问题。由于IPv6与IPv4网络的不兼容性以及巨大的IPv4设备存量,向IPv6过渡必将是一个渐进而缓慢的过程。本文介绍了目前存在的各种主要IPv6过渡技术包括双栈,隧道,网络地址-协议转换以及IPv6 over MPLS等各种过渡技术,并分析了各自的优缺点以及适用环境。
【关键词】 IPv6 双栈 隧道 网络地址-协议转换 IPv6 over MPLS
一、前言
IPv4 地址紧缺与分配不均已成为制约互联网发展的突出问题。IPv6地址为128位长度,理论上可以提供3.4X1038地址空间,可以很好的解决IPv4地址空间不足的问题。由于IPv6与IPv4网络的不兼容性以及巨大的IPv4设备存量,向IPv6过渡必将是一个渐进而缓慢的过程。本文介绍了目前存在的各种主要IPv6过渡技术包括双栈,隧道,网络地址-协议转换以及IPv6 over MPLS等各种过渡技术,并分析了各自的优缺点以及适用环境。
二、双栈
双栈技术允许IPv4和IPv6应用同时存在于网络中。它要求网络设备能够同时支持IPv4和IPv6协议栈,应用程序可以选择使用IPv4或者IPv6与另一方进行通信。同时也允许没有升级的老的程序继续使用IPv4。双栈技术对于同时存在IPv4和IPv6应用程序的网络来说是一个有效的策略。问题在于双栈技术不仅仅要求网络中所有的路由器等设备需要支持双栈技术,同时每个设备也同时需要配置IPv4和IPv6两种地址,使用IPv4和IPv6两种路由协议,需要更多的管理和维护的成本。这限制了双栈技术的扩展性,通常适用于小型内部网络。
三、隧道
3.1 手动配置隧道
手工配置隧道需要手工配置隧道的端点的IPv4地址,从而在两个IPv6端点之间建立起来一条虚拟的点到点连接,将IPv6报文封装在IPv4报文里穿越IPv4网络。手工配置隧道原理简单,使用灵活,也提供了对IPv6报文转发路径的控制能力,安全性好。但每一条隧道都需要手工配置,维护管理的成本要大于自动隧道,这限制了手工隧道的可扩展性。
3.2 GRE 隧道
GRE隧道是一种通用的隧道技术用于实现标准的点到点隧道,可以将一种报文封装在另一种报文里。IPv6 over IPv4 GRE 隧道使用了标准的GRE隧道协议,此时IPv4作为承载协议,而IPv6 作为旅客协议。GRE同样是一种需要手工配置的隧道,存在与手工隧道相同的优缺点。另外与其他的隧道技术只能封装IPv6报文相比,GRE隧道可以封装各种其他协议。
3.3 ISATAP 隧道
ISATAP 隧道是一种自动的点到多点隧道。在ISATAP中,IPv4地址被嵌入到IPv6地址中,如图1所示。当使用ISATAP隧道时,隧道端点的IPv4地址自动从ISATAP地址中提取,隧道不需要手工配置。由于嵌入了IPv4地址将使得用户IPv6地址的管理和使用变得更加复杂。
3.4 6to4隧道
与ISATAP隧道相似,6to4隧道也将IPv4地址嵌入到IPv6地址中,并统一使用2002::/16作为IPv6地址前缀,如图2所示。
当使用6to4隧道时,隧道端点的IPv4地址自动从6to4地址中提取,隧道不需要手工配置。同时可以使用6to4中继路由器同时连接6to4网络与普通的IPv6网络。当非6to4的IPv6 报文到达6to4路由器后将被转发到6to4中继路由器,并进一步被转发到普通IPv6网络中去。
与ISATAP隧道相比,6to4隧道只需要给每一个6to4网络分配一个IPv4地址,大大减少了IPv4地址的使用量以及维护管理的成本。
3.5 6RD隧道
在6to4网络部署中,即使使用了6to4中继路由器也可能导致一些问题。因为所有的6to4网络使用了通用的地址前缀2002::/16,6to4的作用域已经超出了服务提供商的网络范围,服务提供商不能确保非6to4报文被正确的转发到合适的6to4中继路由器。6RD隧道是对6to4隧道的一种扩展,与6to4最大的区别在于不使用2002::/16作为前缀,而使用服务提供商自己拥有的IPv6前缀,如图3所示。这样将6RD隧道的作用域被限制在服务提供商内部。与6to4隧道相比,6RD更利于服务提供商部署实施。
3.6 Teredo 隧道
目前很多用户需要穿越网络地址转换服务器(NAT)才能连接到互联网。在未来的IPv6网络中将不再需要NAT服务器,但在从IPv4到IPv6的迁移过程中,NAT将是我们必须要考虑的一个迁移场景。Teredo隧道技术将IPv6报文封装在IPv4的UDP包内,可以使IPv6报文穿越 NAT服务器。Teredo是一种半自动的隧道技术,客户端必须手动配置Teredo服务器的地址,只用于穿越NAT场景。
四、IPv6 over MPLS
MPLS即多协议标签交换,是一种可提供多业务能力的交换技术,服务提供商可以选择将IPv6服务集成到MPLS架构中,作为一种过渡方案。
(1)CE路由器部署 IPv6 over MPLS。(2)PE路由器部署 IPv6 over MPLS。(3)IPv6 over MPLS VPN。
五、NAT-PT
NAT-PT(网络地址-协议转换)进行IPv4与IPv6报文的相互转换,支持IPv6与IPv4互相通信。NAP-PT的好处在于不需要对现有支持IPv4的设备升级就可以与IPv6网络通信,但也存在严重的问题,如无法通过上层协议携带地址信息,不支持分片和组播,无法通过完整性检查,存在安全隐患等。根据RFC4966,不推荐使用NAT-PT。
六、结论
本文分析了目前存在的各种IPv6过渡技术,各种过渡技术均有其各自的优点和缺点,有着各自的适用过渡场景,并没有一种普遍适用的过渡技术。 因此,在实际网络建设中,应根据网络扩展性、安全性、网络性能,成本等多方面因素综合考虑选择适合网络自身特征的过渡技术。
参 考 文 献
[1] RFC2473 Generic Packet Tunnelling in IPv6 Specification
[2] RFC2766 Network Address Translation - Protocol Translation (NAT-PT)
[3] RFC2784 Generic Routing Encapsulation (GRE)
[4] RFC3056 Connection of IPv6 Domains via IPv4 Clouds
[5] RFC3068 An Anycast Prefix for 6to4 Relay Routers
【关键词】 IPv6 双栈 隧道 网络地址-协议转换 IPv6 over MPLS
一、前言
IPv4 地址紧缺与分配不均已成为制约互联网发展的突出问题。IPv6地址为128位长度,理论上可以提供3.4X1038地址空间,可以很好的解决IPv4地址空间不足的问题。由于IPv6与IPv4网络的不兼容性以及巨大的IPv4设备存量,向IPv6过渡必将是一个渐进而缓慢的过程。本文介绍了目前存在的各种主要IPv6过渡技术包括双栈,隧道,网络地址-协议转换以及IPv6 over MPLS等各种过渡技术,并分析了各自的优缺点以及适用环境。
二、双栈
双栈技术允许IPv4和IPv6应用同时存在于网络中。它要求网络设备能够同时支持IPv4和IPv6协议栈,应用程序可以选择使用IPv4或者IPv6与另一方进行通信。同时也允许没有升级的老的程序继续使用IPv4。双栈技术对于同时存在IPv4和IPv6应用程序的网络来说是一个有效的策略。问题在于双栈技术不仅仅要求网络中所有的路由器等设备需要支持双栈技术,同时每个设备也同时需要配置IPv4和IPv6两种地址,使用IPv4和IPv6两种路由协议,需要更多的管理和维护的成本。这限制了双栈技术的扩展性,通常适用于小型内部网络。
三、隧道
3.1 手动配置隧道
手工配置隧道需要手工配置隧道的端点的IPv4地址,从而在两个IPv6端点之间建立起来一条虚拟的点到点连接,将IPv6报文封装在IPv4报文里穿越IPv4网络。手工配置隧道原理简单,使用灵活,也提供了对IPv6报文转发路径的控制能力,安全性好。但每一条隧道都需要手工配置,维护管理的成本要大于自动隧道,这限制了手工隧道的可扩展性。
3.2 GRE 隧道
GRE隧道是一种通用的隧道技术用于实现标准的点到点隧道,可以将一种报文封装在另一种报文里。IPv6 over IPv4 GRE 隧道使用了标准的GRE隧道协议,此时IPv4作为承载协议,而IPv6 作为旅客协议。GRE同样是一种需要手工配置的隧道,存在与手工隧道相同的优缺点。另外与其他的隧道技术只能封装IPv6报文相比,GRE隧道可以封装各种其他协议。
3.3 ISATAP 隧道
ISATAP 隧道是一种自动的点到多点隧道。在ISATAP中,IPv4地址被嵌入到IPv6地址中,如图1所示。当使用ISATAP隧道时,隧道端点的IPv4地址自动从ISATAP地址中提取,隧道不需要手工配置。由于嵌入了IPv4地址将使得用户IPv6地址的管理和使用变得更加复杂。
3.4 6to4隧道
与ISATAP隧道相似,6to4隧道也将IPv4地址嵌入到IPv6地址中,并统一使用2002::/16作为IPv6地址前缀,如图2所示。
当使用6to4隧道时,隧道端点的IPv4地址自动从6to4地址中提取,隧道不需要手工配置。同时可以使用6to4中继路由器同时连接6to4网络与普通的IPv6网络。当非6to4的IPv6 报文到达6to4路由器后将被转发到6to4中继路由器,并进一步被转发到普通IPv6网络中去。
与ISATAP隧道相比,6to4隧道只需要给每一个6to4网络分配一个IPv4地址,大大减少了IPv4地址的使用量以及维护管理的成本。
3.5 6RD隧道
在6to4网络部署中,即使使用了6to4中继路由器也可能导致一些问题。因为所有的6to4网络使用了通用的地址前缀2002::/16,6to4的作用域已经超出了服务提供商的网络范围,服务提供商不能确保非6to4报文被正确的转发到合适的6to4中继路由器。6RD隧道是对6to4隧道的一种扩展,与6to4最大的区别在于不使用2002::/16作为前缀,而使用服务提供商自己拥有的IPv6前缀,如图3所示。这样将6RD隧道的作用域被限制在服务提供商内部。与6to4隧道相比,6RD更利于服务提供商部署实施。
3.6 Teredo 隧道
目前很多用户需要穿越网络地址转换服务器(NAT)才能连接到互联网。在未来的IPv6网络中将不再需要NAT服务器,但在从IPv4到IPv6的迁移过程中,NAT将是我们必须要考虑的一个迁移场景。Teredo隧道技术将IPv6报文封装在IPv4的UDP包内,可以使IPv6报文穿越 NAT服务器。Teredo是一种半自动的隧道技术,客户端必须手动配置Teredo服务器的地址,只用于穿越NAT场景。
四、IPv6 over MPLS
MPLS即多协议标签交换,是一种可提供多业务能力的交换技术,服务提供商可以选择将IPv6服务集成到MPLS架构中,作为一种过渡方案。
(1)CE路由器部署 IPv6 over MPLS。(2)PE路由器部署 IPv6 over MPLS。(3)IPv6 over MPLS VPN。
五、NAT-PT
NAT-PT(网络地址-协议转换)进行IPv4与IPv6报文的相互转换,支持IPv6与IPv4互相通信。NAP-PT的好处在于不需要对现有支持IPv4的设备升级就可以与IPv6网络通信,但也存在严重的问题,如无法通过上层协议携带地址信息,不支持分片和组播,无法通过完整性检查,存在安全隐患等。根据RFC4966,不推荐使用NAT-PT。
六、结论
本文分析了目前存在的各种IPv6过渡技术,各种过渡技术均有其各自的优点和缺点,有着各自的适用过渡场景,并没有一种普遍适用的过渡技术。 因此,在实际网络建设中,应根据网络扩展性、安全性、网络性能,成本等多方面因素综合考虑选择适合网络自身特征的过渡技术。
参 考 文 献
[1] RFC2473 Generic Packet Tunnelling in IPv6 Specification
[2] RFC2766 Network Address Translation - Protocol Translation (NAT-PT)
[3] RFC2784 Generic Routing Encapsulation (GRE)
[4] RFC3056 Connection of IPv6 Domains via IPv4 Clouds
[5] RFC3068 An Anycast Prefix for 6to4 Relay Routers