IPv6是“Internet Protocol Version 6 ” 的缩写,它是IETF设计的用于替代现行版本IP协议-IPv4-的下一代IP协议。
目前Internet中广泛使用的IPv4协议,也就是人们常说的IP协议,已经有近20年的历史了。随着Internet技术的迅猛发展和规模的不断扩大,IPv4已经暴露出了许多问题,而其中最重要的一个问题就是IP地址资源的短缺。有预测表明,以目前Internet发展的速度来计算,在未来的5到10年间,所有的IPv4地址将分配完毕。尽管目前已经采取了一些措施来保护IPv4地址资源的合理利用,如非传统网络区域路由和网络地址翻译,但是都不能从根本上解决问题。
为了彻底解决IPv4存在的问题,IETF从1995年开始就着手研究开发下一代IP协议,即IPv6。IPv6具有长达128位的地址空间,可以彻底解决IPv4地址不足的问题,除此之外,IPv6还采用了分级地址模式、高效IP包头、服务质量、主机地址自动配置、认证和加密等许多技术。
一、IPv6的地址格式和结构
IPv6采用了长度为128位的IP地址,而IPv4的IP地址仅有32位,因此IPv6的地址资源要比IPv4丰富得多。
IPv6的地址格式与IPv4不同。一个IPv6的IP地址由8个地址节组成,每节包含16个地址位,以4个十六进制数书写,节与节
之间用冒号分隔,其书写格式为x:x:x:x:x:x:x:x,其中每一个x代表四位十六进制数。除了128位的地址空间,IPv6还为点对点通信设计了一种具有分级结构的地址,这种地址被称为可聚合全局单点广播地址(aggregatable global unicast address),开头3个地址位是地址类型前缀,用于区别其它地址类型,其后依次为13位TLA ID、32位 NLA ID、16位SLA ID和64位主机接口ID,分别用于标识分级结构中自顶向底排列的TLA(Top Level Aggregator,顶级聚合体)、NLA(Next Level Aggregator,下级聚合体)、SLA(Site Level Aggregator,位置级聚合体)和主机接口。TLA是与长途服务供应
商和电话公司相互连接的公共网络接入点,它从国际Internet注册机构(如IANA)处获得地址。NLA通常是大型ISP,它从TLA处申请获得地址,并为SLA分配地址。SLA也可称为订阅者(subscriber),它可以是一个机构或一个小型 ISP。SLA负责为属于它的订阅者分配地址。SLA通常为其订阅者分配由连续地址组成的地址块,以便这些机构可以建立自己的地址分级结构以识别不同的子网。分级结构的最底层是网络主机。
二、IPv6中的地址配置
大家知道,当主机IP地址需要经常改动的时候,手工配置和管理静态IP地址是一件非常烦琐和困难的工作。在IPv4中,DHCP协议可以实现主机IP地址的自动设置。其工作过程大致如下:一个DHCP服务器拥有一个IP地址池,主机从DHCP服务器申请IP地址并获得有关的配置信息(如缺省网关、DNS服务器等),由此达到自动设置主机IP地址的目的。IPv6继承了IPv4的这种自动配置服务,并将其称为全状态自动配置(stateful autoconfiguration)。
除了全状态自动配置,IPv6还采用了一种被称为无状态自动配置(stateless autoconfiguration)的自动配置服务。在无状态自动配置过程中,主机首先通过将它的网卡MAC地址附加在链接本地地址前缀1111111010之后,产生一个链接本地单点广播地址(IEEE已经将网卡MAC地址由48位改为了64位。如果主机采用的网卡的MAC地址依然是48位,那么IPv6网卡驱动程序会根据IEEE的一个公式将48位MAC地址转换为64位MAC地址)。接着主机向该地址发出一个被称为邻居探测(neighbor discovrey)的请求,以验证地址的唯一性。如果请求没有得到响应,则表明主机自我设置的链接本地单点广播地址是唯一的。否则,主机将使用一个随机产生的接口ID组成一个新的链接本地单点广播地址。然后,以该地址为源地址,主机向本地链接中所有路由器多点广播一个被称为路由器请求(router solicitation)的数据包,路由器以一个包含一个可聚合全局单点广播地址前缀和其它相关配置信息的路由器公告来响应该请求。主机用它从路由器得到的全局地址前缀加上自己的接口ID,自动配置全局地址,然后就可以与Internet中的其它主机通信了。
使用无状态自动配置,无需手动干预就能够改变网络中所有主机的IP地址。例如,当企业更换了联入Internet的ISP时,将从新ISP处得到一个新的可聚合全局地址前缀。ISP把这个地址前缀从它的路由器上传送到企业路由器上。由于企业路由器将周期性地向本地链接中的所有主机多点广播路由器公告,因此企业网络中所有主机都将通过路由器公告收到新的地址前缀,此后,它们就会自动产生新的IP地址并覆盖旧的IP地址。
三、IPv6中的安全协议
安全问题是Internet应用中的一个重要问题。由于在 IP协议设计之初没有考虑安全性,因而在早期的Internet上时常发生诸如企业或机构网络遭到攻击、机密数据被窃取等事情。为了加强Internet的安全性,从 1995年开始,IETF着手研究制定了一套用于保护IP通信的IP安全(IP Security,IPSec)协议。IPSec是IPv6的一个组成部分,也是IPv4的一个可选扩展协议。
IPSec提供了两种安全机制:认证和加密。认证机制是指 IP通信的数据接收方能够确认数据发送方的真实身份以及数据在传输过程中是否遭到改动。加密机制通过对数据进行编码来保证数据的机密性,以防数据因在传输过程中被他人窃取而失密。
IPSec的认证包头(Authentication Header,AH)协议定义了认证的应用方法,封装安全负载(Encapsulating Security Payload,ESP)协议定义了加密和可选认证的应用方法。在实际进行IP通信时,可以根据安全需求同时使用这两种协议或选择使用其中的一种。AH和ESP都可以提供认证服务,不过,AH提供的认证服务要强于ESP。
在一个特定的IP通信中使用AH或ESP时,协议将与一组安全信息和服务发生关联,称为安全关联(Security Association,SA)。SA可以包含认证算法、加密算法、用于认证和加密的密钥。IPSec使用一种密钥分配和交换协议,如Internet安全关联和密钥管理协议(ISAKMP),来创建和维护SA。SA是一个单向的逻辑连接,即两个主机之间的认证通信将使用两个SA,分别用于通信的发送方和接收方。
IPSec定义了两种模式的SA:传输模式SA和隧道模式SA。传输模式SA是在IP包头(以及任何可选的扩展包头)之后和任何高层协议(如TCP或UDP)包头之前插入AH或ESP包头,隧道模式SA是将整个原始的IP数据包放入一个新的IP数据包中。在采用隧道模式SA时,每一个IP数据包都有两个IP包头:外部IP包头和内部IP包头。外部IP包头指定将对IP数据包进行IPSec处理的目的地址,内部IP包头指定原始IP数据包最终的目的地址。传输模式SA只能用于两个主机之间的IP通信,而隧道模式SA既可以用于两个主机之间的IP通信,还可以用于两个安全网关之间或一个主机与一个安全网关之间的IP通信。安全网关可以是路由器、防火墙或VPN设备。
做为IPv6的一个组成部分,IPSec是一个网络层协议。它只负责其下层的网络安全,并不负责其上层应用的安全,如Web、电子邮件和文件传输等。因此,验证一个Web会话,依然需要使用SSL协议。
四、IPv6的功能变化
IPv6技术在IP报头中删除了一些不必要的IPv4功能,加强了IPv4原有的一些功能,并且还增加了许多新功能。这些新增的功能是:
1、anycast功能
anycast是指向提供同一服务的所有服务器都能识别的通用地址(anycast地址)发送IP分组,路由控制系统可以将该分组送至最近的服务器。 例如,利用anycast功能用户可以访问到离他最近的DNS服务器和文件服务器等。
2、即插即用功能
这里所说的即插即用功能是指计算机在接入Internet时可自动获取、登录必要的参数的自动配置功能和地址检索等功能。
3、安全功能
上面已经介绍过了。
4、QoS功能
利用IPv6头标中的4比特优先级域和24比特的流标记域为进行业务优先级控制提供了广阔的空间。随着互联网接入设备的日益复杂化和服务类型的多样化,网络基础设施为上层提供各种服务质量已经越来越得到人们的关注。
五、IPv4向IPv6的过渡
尽管IPv6比IPv4具有明显的先进性,但是要想在短时间内将Internet和各个企业网络中的所有系统全部从 IPv4升级到IPv6是不可能的。IPv6与IPv4系统在Internet中长期共存是不可避免的现实。因此,实现由IPv4向IPv6的平稳过渡是导入IPv6的基本前提。确保过渡期间IPv4网络与IPv6网络互通是至关重要的。
目前,从IPv4过渡到IPv6的方法有3种:兼容IPv4的IPv6地址、双IP协议栈和基于IPv4隧道的IPv6。
1、兼容IPv4的IPv6地址是一种特殊的IPv6单点广播地址,一个IPv6节点与一个IPv4节点可以使用这种地址在IPv4网络中通信。这种地址是由96个0位加上32位IPv4地址组成的,例如,假设某节点的IPv4地址是192.56.1.1,那么兼容IPv4的IPv6地址就是0:0:0:0:0:0:C038:101。
2、双IP协议栈是在一个系统(如一个主机或一个路由器)中同时使用IPv4和IPv6两个协议栈。这类系统既拥有 IPv4地址,也拥有IPv6地址,因而可以收发IPv4和IPv6两种IP数据包。
3、与双IP协议栈相比,基于IPv4隧道的IPv6是一种更为复杂的技术,它是将整个IPv6数据包封装在IPv4数据包中,由此实现在当前IPv4网络中的IPv6节点与IPv4节点之间的IP通信。基于IPv4隧道的IPv6实现过程分为三个步骤:封装、解封和隧道管理。封装,是指由隧道起始点创建一个IPv4 数据包头,将IPv6数据包装入一个新的IPv4数据包中。解封,是指由隧道终结点移去IPv4包头,还原原始的IPv6数据包。隧道管理,是指由隧道起始点维护隧道的配置信息,如隧道支持的最大传输单元(MTU)的尺寸等。IPv4隧道有四种方案:路由器对路由器、主机对路由器、主机对主机、路由器对主机。
六、IPv6与移动通信技术之间的关系
目前,在移动通信领域正在掀起IP化热潮。实际上,制订下一代移动通信系统"IMT-2000"标准的3GPP已经决定在下一代移动通信技术的基本协议中采用IPv6。IPv6有望在移动通信领域率先正式使用。手机可以说是移动通信领域中普及最广泛、影响力最大的移动通信设备,因此,能否顺利实现手机电话的IPv6化对IPv6技术今后的发展、完善和普及将产生很大的影响。反过来讲,IPv6技术的成熟和发展也将进一步带动移动设备IPv6化的进程。
2000年底,诺基亚公司推出了世界上第一个支持IPv6的端到端的GPRS网络。该网络的推出是迈向新一代IP移动网络的重要一步。网络运营商可以通过GPRS网络向用户提供新型的服务,使他们充分享受到IPv6带来的益处,如全球覆盖性和端到端的安全性等。支持IPv6的端到端的GPRS网络将使网络运营商从基于IPv4的服务向基于IPv6的服务平滑过渡。在过渡期间,基于IPv6和IPv4的服务可以在网络中共存,而且只需通过软件对现有的网络设备进行升级就可以使GPRS网络支持IPv6。相比于传统的互联网服务如WEB浏览和电子邮件等,移动互联网服务需要为消费者带来更多的互动性和个性。通过在移动互联网网络中实施IPv6,网络运营商可以更加灵活地应对市场的需求。除了为互联网带来更多的地址资源以外,IPv6还为网络带来很多重要的要素,其中之一就是服务质量的提升。由于3GPP已经将IPv6定为所有IP蜂窝式网络所必备的功能,它将成为3G的重要组成部分。
事物的发展总是两方面的,尽管IPv6具备许多适合移动通信设备的功能和优点,但是将IPv6应用于移动通信设备中不是一帆风顺的,安全性是制约IPv6应用于移动通信的一个重要因素,这主要是由于移动通信所依赖的传输介质和移动通信设备应具有的漫游功能。
前不久,有报道称安全专家在目前提出的移动通信IPv6解决方案中找到了安全漏洞。这一漏洞的发现,意味着IETF将不得不开发新的方法来识别使用IPv6地址的漫游设备。 与IPv4不同,IPv6使用新的方法保证漫游在Internet上的无线设备的安全。用户需要不断获得新的所在地IP地址,然后通知他的主地址他已经移动。而在IPv4机制下,漫游设备通过主地址来获得识别,所有与该设备的通信需要先发往主地址,再转发到当前地址。移动IPv6产生一种新的被称为“绑定更新”的消息,用于某设备移动到新地区时为其确定身份。这一机制可以加速基于IPv6的无线通信。当“绑定更新”被识别后,与该设备的通信可以直接接往新地址而无需再通过主地址中转。最初,移动IP工作组打算使用现有的IP安全协议(IP-Sec)来保护“绑定更新”信息。但是IETF的安全专家最近宣布IP-Sec不能胜任这一工作,原因有二:1、IP-Sec需要依靠一套公共密钥系统来运做,但该系统尚未实施。2、IP-Sec的关键管理组件需要终端设备有较高的处理能力。这就意味着,移动IP工作组必须找到一种更加安全的认证加密机制来保证移动IPv6的安全性。
七、总结
目前,Windows 2000、Unix、Solaris操作系统的一些测试版本中已经引入了IPv6,其他一些操作系统的IPv6版本也正在逐步开发。另外,已经有厂商尝试应用IPv6开发新型应用软件。
IPv6是用于建立可靠的、可管理的、安全和高效的IP网络的一个长期解决方案。因此,尽管IPv6的实际应用还需要一段时间,但是了解和研究IPv6的重要特性以及它针对目前IP网络存在的问题而提供的解决方案,对于制定企业网络的长期发展计划,规划网络应用的未来发展方向,都是十分有益的。