摘要 简要介绍了IPv4(Internet protocol version 4)和IPv6(Internet protocol version 6),指出了从IPv4向IPv6过渡的必然性,阐述了三种基本的过渡技术在安全性和应用等方面的优势和局限。最后,对当前互联网向IPv6过渡问题进行了总结与展望。
经过20多年的发展和完善,基于IPv4的Internet已经被证明是技术成熟的、容易实现且具有良好互操作性的网络协议,可以说它取得了巨大的成功。然而随着快速增长的Internet连接要求和语音、数据、图像、视频、多媒体等不断增加的新业务的出现,当前的IPv4网络的固有缺陷已经造成了地址空间缺乏、路由表急剧膨胀、缺乏对移动和网络服务质量的支持等一系列问题。
基于已有的研究成果,解决IP地址短缺的问题可以采用以下3个措施[1]:
1)采用无类别编址(CIDR),使IP地址的分配更加合理;
2)采用网络地址转换(NAT)方法以节省全球IP地址;
3)采用具有更大地址空间的新版本的网际协议IPv6。
尽管上述前两项措施的采用延缓了IP地址的耗尽时间,但不能从根本上解决IP地址短缺的问题。因此,采用128 bit地址长度的IPv6才是长远之计。
但是由于目前Internet中数量庞大的IPv4设备和用户,以及IPv6网络和IPv4网络所采用的网际协议地址和协议格式的差异,使得现行的IPv4网络不可能在短时间内全部升级为IPv6网络。因此在当前IPv4地址占主导的网络环境下,IPv4向IPv6的平滑过渡问题成了决定IPv6能否取得成功的重要因素和本文研究的基本出发点。
1、IPv4和IPv6简介
现在被全球广泛使用的网际协议IPv4是IP的第四版,至今已有近30年的历史。IPv4的设计思想成功地造就了目前的国际互联网,其核心价值体现在简单、灵活和开放性。从技术上看,IPv4在过去的应用中发挥了重要作用,并取得了辉煌的业绩。但是随着近年来Internet应用的急剧增加,IPv4已经露出很多弊端,如IP地址匮乏、安全性不是内嵌的、网络管理复杂等,原来的IPv4已经无法满足现有网络快速发展的需要。
IPv6是IETF(Internet Engineering Task Force)设计的新一代网际协议,采用128 bit地址长度,扩大了地址空间,一劳永逸地解决了地址短缺问题。同时它还为主机接口提供不同类型的地址配置,如全球地址、全球单播地址、多播地址、任播地址和链路本地地址等。
与IPv4相比,IPv6的优势还体现在以下方面:
简化的报头和灵活的扩展;地址的自动配置;采用了内置的IP通信安全协议,在网络层对数据提供分组和加密服务;支持组播方式;提供了服务质量保证;支持即插即用,支持真正的移动性等。
但是从安全的角度来说,IPv6实质上并不比IPv4更加安全。IPv6标准的起草者、思科总部的两位杰出网络技术领袖Fred Baker和Tony Hain认为,IPv6从根本上来说,只是改变了IP地址的协议包,并不能解决现在的IPv4中的安全问题。但是由于IPsec提供端到端安全性的两个基本组件的认证和加密都是IPv6协议所必备的,而在IPv4中它们只是可选的,因此,采用IPv6安全性会更加简便、一致。
2、IPv4向IPv6过渡技术
在IPv4向IPv6平滑过渡过程中有3个问题需要注意,一是如何充分利用现有的IPv4资源,节约成本并保护原使用者的利益;二是在实现网络设备互联互通的同时实现信息高效无缝传递;三是IPv4向IPv6的实现应该是逐步的和渐进的,而且尽可能地简便。目前主要有3种解决过渡问题的基本技术:双协议栈、隧道技术、NAT-PT(地址/协议转换)。
2.1 IPv4/IPv6双协议栈(dual stack)
双协议栈(以下简称为“双栈”)技术是在指在终端设备和网络节点上既安装IPv4又安装IPv6的协议栈。从而实现使用IPv4或IPv6的节点间的信息互通。支持IPv4/IPv6双栈的路由器,作为核心层边缘设备支持向IPv6的平滑过渡。一个典型的IPv4/IPv6双协议栈结构如图1所示[2]。在以太网中,数据报头的协议字段分别用值0x86dd和00x0800来区分所采用的是IPv6还是IPv4[3]。
图1 IPv4/IPv6双协议栈结构
双栈方式的工作机制可以简单描述为:链路层解析出接收到的数据包的数据段,拆开并检查包头。如果IPv4/IPv6包头中的第一个字段,即IP包的版本号是4,该包就由IPv4的协议栈来处理;如果版本号是6,则由IPv6的协议栈处理。
IPv4/IPv6双协议栈的工作过程如图2所示。
图2 支持IPv4和IPv6的双协议栈应用
双栈机制是使IPv6节点与IPv4节点兼容的最直接的方式,互通性好,易于理解。但是双协议栈的使用将增加内存开销和CPU占用率,降低设备的性能,也不能解决地址紧缺问题。同时由于需要双路由基础设施,这种方式反而增加了网络的复杂度。
2.2 隧道(tunneling)技术
随着IPv6网络的发展,出现了许多局部的IPv6网络。为了实现这些孤立的IPv6网络之间的互通,采用隧道技术。隧道技术是在IPv6网络与IPv4网络间的隧道入口处[4],由路由器将IPv6的数据分组封装入到IPv4分组中。IPv4分组的源地址和目的地址分别是隧道入口和出口的IPv4地址。在隧道的出口处拆封IPv4分组并剥离出IPv6数据包。
隧道技术的优点在于隧道的透明性,IPv6主机之间的通信可以忽略隧道的存在,隧道只起到物理通道的作用。在IPv6发展初期,隧道技术穿越现存IPv4因特网实现了IPv6孤岛间的互通,从而逐步扩大了IPv6的实现范围,因而是IPv4向IPv6过渡初期最易于采用的技术。
根据隧道节点的组成情况,隧道可分为以下4种类型:路由器—路由器隧道、路由器—主机隧道、主机—主机隧道、主机—路由器隧道。在实践中,根据隧道建立的方式不同,隧道技术可分为:构造隧道、自动配置隧道、组播隧道以及IPv6 to IPv4隧道。
为简化隧道的配置,提供自动的配置手段,以提高配置隧道的扩展性,采用隧道代理(TB)。
隧道代理的主要功能是:根据用户(双栈结点)的要求建立、更改和拆除隧道[5];在多个隧道服务器中选择一个作为TEP(tunnel end point)IPv6地址,以实现负载均衡;负责将用户的IPv6地址和名字信息存放到DNS(域名服务器)里,实现节点IPv6的域名解析。
从这个意义上说,TB可以看作是一个虚拟的IPv6 ISP,它为已经连接到IPv4网络上的用户即TB的客户提供了连接到IPv6网络的一种便捷方式。
2.3 NAT-PT
目前最有名的地址翻译机制NAT-PT(network address translation-protocol translation)分为静态NAT-PT和动态NAT-PT两种。NAT-PT的使用基于这样一个基本假设[6]:当且仅当无其他本地IPv6或IPv6 to IPv4隧道可用时考虑使用该技术。它是SIIT(stateless IP/ICMP translation algorithm)协议转换技术和IPv4网络中动态地址翻译(NAT)技术结合与改进。该技术适用于过渡的初始阶段,使得基于双协议栈的主机,能够运行IPv4与IPv6应用程序互相通信。该机制要求主机必须是双栈的,同时要在协议栈中插入3个特殊的扩展模块:域名解析服务器、IPv4/IPv6地址映射器和IPv4/IPv6翻译器。一个典型的NAT-PT系统如图3所示。
图3 NAT-PT系统
NAT-PT处于IPv6和IPv4网络的交界处,可以实现IPv6主机与IPv4主机之间的互通。协议转换的目的是实现IPv4和IPv6协议头之间的转换;地址转换则是为了让IPv6和IPv4网络中的主机能够识别对方。也就是说,IPv4网络中的主机用一个IPv4地址标识IPv6网络中的一个主机,而IPv6网络中的主机用一个IPv6地址标识IPv4网络中的一个主机。
当一台IPv4主机要与IPv4对端通信时,NAT-PT从IPv4地址池中分配一个IPv4池地址标识IPv6对端。在IPv4与IPv6主机通信的全过程中,由NAT-PT负责处理IPv4池地址与IPv6主机之间的映射关系。在NAT-PT中,使用ALG(application level gateway,应用层网关)对分组载荷中的IP地址进行格式转换。由于目前IPv4地址匮乏,NAT技术广泛运行于当前的互联网络,将NAT升级成NAT-PT进而实现IPv4和IPv6网络的互联和从IPv4向IPv6的平滑过渡。
采用NAT-PT技术,需要转换IP数据包的头标,带来的问题是破坏了端到端的服务,有可能限制业务提供平台的容量和扩展性,从而可能成为网络性能的瓶颈。
3、IPv4向IPv6过渡技术的应用策略
从前面总结的过渡机制可以看出,每种机制都不是普遍适用的,都只适用于某一种或几种特定的网络情况,而且常常需要和其他技术组合使用。在实际应用时要综合考虑各种实际情况制定合适的过渡策略。在IPv4向IPv6过渡时期,通常应采用如下的组网原则:
1)在能直接建立IPv6链路的情况下使用纯IPv6路由;
2)在不能使用IPv6链路的情况下,IPv6节点之间使用隧道技术;
3)双协议栈的IPv6/IPv4节点和纯IPv6节点或者纯IPv4的节点通信不需要采用协议转换,而直接“自动”选择相应的协议进行通信;
4)对于纯IPv6节点和纯IPv4节点之间的互通,则应该使用协议转换(NAT-PT)或者应用层网关(ALG)技术,设计的协议转换器或者ALG应该尽量保证在不修改原有应用的情况下就可以使用。
4、结束语
IPv4自身的局限性注定了当前IPv4支撑的Internet会逐渐、平稳地过渡到以IPv6为核心的新一代网络上,但其过渡过程想必也一定会是漫长的。向IPv6网络过渡呈现出先边缘后核心的趋势,即先行升级的都是一些小型的边缘网络,其后才是大型的核心网络。在不同的过渡阶段、不同的网络环境应分别采用不同的过渡技术和机制。只有针对具体应用,在不同的过渡阶段明确应用的类型和范围并结合其他技术,合理选择转换机制,才能顺利地以较小的代价实现IPv4网络向IPv6的平稳过渡。
参考文献:
[1] RAICU Ioan, ZEADALˋLY Cherali.Evaluating IPv4 to IPv6 transition mechanisms [A].Telecommunications ICT 2003 10th International Conference[C].[S.1.]:IEEE, 2003,2:1091-1098.
[2] WADDINGTON D.G, FANGZHE Chang.Realizing the transition to IPv6[J].IEEE Communications Magazine, 2002,40(6):138-147.
[3] HSIEH I-Ping, KAO Shang-Juh.Managing the co-existing network of IPv6 and IPv4 under various transition mechanisms [A].Third International Conference on Information Technology and Applications (ICITAˊ05)[C].[S.1.]:IEEE, 2005,2:765-771.
[4] DUNN T.Marketplace-the IPv6 transition[A].IEEE Internet Computing [C].[S.1.]:IEEE,2002,6:11-13.
[5] DURAND A,FASANO P,GUARDINI I,et al. IPv6 Tunnel Broker[EB/OL].RFC 3053,2001-01.
[6] TSIRTSIS G,SRISURESH P.Network address translation-protocol translation(NAT-PT)[EB/OL].RFC 2766,2000-02.
来源:中国联通网站