Chinaunix首页 | 论坛 | 博客
  • 博客访问: 897030
  • 博文数量: 148
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 3920
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-30 18:17
文章分类

全部博文(148)

文章存档

2008年(148)

我的朋友

分类: 系统运维

2008-04-26 09:40:00


    因特网从IPV4向IPV6网络转换没有一个确定的日期,向IPV6的全面转换将持续很长一
段时间。从96年起,IETF提出了很多用于网络过渡的机制和策略。本篇将讲到三类策略:
 
    1、双协议栈(DUAL STACK):网络中的主机、服务器和路由器可以同时使用IPV4和I
PV6协议栈。当双栈节点连接到一个启用双栈的网络时,双栈模式为节点在IPV6或IPV4上建
立端到端的会话提供了灵活性。
    2、隧道封装(TUNNELING):隧道使孤立的IPV6主机、服务器、路由器和域利用现有
的IPV6基础设施与其他IPV6网络通信。孤立的IPV6主机也能够利用IPV4作为传输层建立端
到端IPV6会话。隧道机制就是用IPV4封装IPV6数据包并且把这些封装了的数据包通过IPV4
网络送往一个IPV4目的节点,目的节点拆封数据包并剥离出IPV6数据包。有很多技术来实
现IPV4隧道的配置和创建
    3、协议转换:IPV6网络上IPV6单协议网络的节点与IPV4网络上IPV4单协议网络的节点
进行通信是可能的,不过,这些机制需要在IPV4和IPV6两种网络的边界上进行协议转换。
 
    下面分别对每类策略进行简单的说明:
    1、双协议栈:简单地说,就是节点即可使用IPV4地址,也可使用IPV6地址。但这里有
一个问题,节点到底使用哪个协议进行通信呢,有两种方法可以强制一个双栈节点在IPV6
连接可用时使用IPV6协议栈
    *:用户手动控制:如果用户已知目的IPV6主机名的IPV6地址,就可以直接使用IPV6地
址来建立会话。
    **:使用DNS服务:可以在域名服务(DNS)中配置一个既有IPV4地址也有IPV6地址的
完全合格域名(FQDN)。FQDN可以是一个描述IPV4地址的A记录,也可以是一个描述IPV6地
址的AAAA记录。如果一个IPV4单协议网络的应用请求域名服务,用A记录解析FQDN。如果应
用收到A记录,就用这个IPV4地址和该主机通信;一个IPV6单协议网络的应用请求域名服务
,用一个AAAA记录解析FQDN。如果应用收到AAAA记录,就用这个IPV6地址和该主机通信;
一个同时支持IPV6和IPV4的应用请求域名服务,用所有可能类型的地址解析FQDN。应用首
先查找AAAA记录,如果没有找到AAAA记录,就继续查找A记录用于通信。
    2、隧道:隧道就是把IPV6数据包封装在IPV4中,然后通过现有的IPV4网络传输,到达
后再把IPV6数据包提出来,再与IPV6网络进行通信。为建立隧道面设计的协议和技术很多
,下面简单说说几种常用的
    配置隧道:配置隧道在双栈节点上被启用并静态地配置。因为配置隧道是IPV6支持的
第一个过渡机制,所以在目前所有可用的IPV6实现中被广泛地支持。在配置隧道的每一端
,必须手动地给隧道接口分配IPV4地址和IPV6地址。
    隧道代理:配置隧道需要在两个端点手动进行配置,因此,当静态配置时,配置隧道
机制是不可扩展的。为了方便IPV4网络上配置隧道的部署,IETF定义了一种被称为隧道代
理的机制。隧道代理是一个外部系统,而不是路由器,它在IPV4网络中作为服务器,并接
受双栈节点的隧道建立请求。基本上,双栈节点在IPV4网络上使用HTTP向隧道代理发送请
求,终端用户可以填写一个网页来给他们的双栈节点请求一个配置隧道。然后隧道代理会
返回在双栈路由器上建立配置隧道所需要的IPV4地址、IPV6地址和默认的IPV6路由。一个
隧道代理可以选择向双栈节点提供一个脚本来简化操作系统上配置隧道的配置。最后,隧
道代理在双栈路由器上远程地使用命令启用配置隧道。双栈路由器收须连接到IPV6域。在
隧道代理规范中,隧道代理和双栈路由器使用不同的IPV4地址。
    隧道服务器:隧道服务器是隧道代理的简化模型。隧道服务器把代理和双栈路由器结
合在一个系统中,而不是两单独的系统,请求一个配置隧道的方法大体上跟隧道代理相同
,这里就不多说了,但是隧道服务器比之隧道代理是有优点的。
    采用6TO4:在两个IPV6域间建立、操作、管理和支持配置隧道至少需要两个实体的同
步。对于某些组织来说有些麻烦。IETF定义了另一种称为6TO4的机制来简化通过隧道在IP
V4网络上配置IPV6。这种机制在由IPV6节点组成的站点之间动态采用隧道方法,不需要手
动地事先调整隧道的源和目的IPV4地址。IPV6数据包的隧道封装根据6TO4站点上产生的数
据包的目的地址自动完成。这种机制在站点边缘的边界路由器上启用,6TO4路由器必须通
过IPV4路由器基础设施到达其他的6TO4站点和6TO4路由器。6TO4前缀都基于IANA分配的20
02::/16地址空间。每个6TO4站点至少使用一个分配给6TO4路由器的全球单播IPV4地址。
IPV4的32位地址被转换为16进制格式后附加在2002::/16前缀后面。最终的表现形式是2
002:IPV4-ADDRESS::/48。6TO4前缀基于全球惟一的IPV4地址,所以没有必要在6TO4站
点之间传播/48前缀的IPV6路由。
    6TO4中继:提供IPV6因特网流量转发到非2002::/16前缀的网络。如果公共6TO4中继
离你的站点很远,会造成你的站点和IPV6因特网之间的IPV6流量的网络性能很差。为了帮
助一个6TO4站点在因特网上找到可用的6TO4中继并且给6TO4机制增加更多可扩展性,RFC3
068引入了一个任意播前缀,这样6TO4数据包可以被自动路由到IPV4因特网上最近的6TO4中
继。IANA分配了6TO4中继任意播前缀192.88.99.0/24专门用于自动路收6TO4数据包到最近
的6TO4中继。在6TO4配置中,可以使用ipv6 route ::/0 2002:c058:6301::命令配置默认
的IPV6路由。
    通过GRE隧道部署IPV6:对域内使用IS-IS作为IPV6路由选择协议的组织提供了方便,
这里就不说了。
    ISATAP隧道:站点间自动隧道寻址协议(ISATAP)是在一个管理域(如一个站点)内
用IPV4传输IPV6的隧道传输机制,它可以在IPV4网络上创建一个虚拟IPV6网络。IPV6数据
包在IPV4中的隧道封装在ISAPTAP主机之间或者ISATAP主机和ISATAP路由器之间执行。隧道
封装是自动的,意味阒当启用了ISATAP时没有必要在主机上应用手动配置,对于ISATAP主
机到ISATAP路由器的隧道,ISATAP主机必须首先从可用的路由器列表中找出一个ISATAP路
由器的IPV4地址。分配给ISATAP主机和ISATAP路由器的ISATAP地址由专用的可聚合全球单
播IPV6地址和特殊格式的接口标识组合而成。一个ISATAP主机上启用的ISATAP地址使用本
地链路前缀(FE80::/10)。必须给站点内的ISATAP操作分配一个可聚合或者本地站点的
/64前缀。ISATAP主机通过在IPV4上建立起来的ISATAP隧道从ISATAP路由器发送的广播消息
中接收/64前缀。ISATAP在ISATAP IPV6地址中嵌入IPV4地址。接口标识在IANA保留给ISAT
AP的高阶32位0000:5EFE后追加32位IPV4地址
    IPV4兼容隧道:用处不大,不说了。
    TEREDO隧道:这是IETF设计的用于IPV4到IPV6过渡的一种新隧道机制。它的主要目标
是传送IPV6数据包到隐藏在IPV4单协议网络域上NAT设备后的双栈节点,这是因为协议41(
配置隧道和6TO4使用)不能穿过NAT。TEREDO使用IPV4的UDP数据报传送IPV6数据包。通过
使用单个IPV4地址与一个NAT设备的UDP映射,TEREDO可以在IPV4的UDP数据报上传送IPV6连
接到同一个NAT设备后的多个节点。TEREDO机制由TEREDO服务器、TEREDO中继和客户端组成
。服务器连接到IPV4网络,它管理着客户端之间的信令流量;中继充当IPV6路由器,它连
接到IPV6网络并且能够在IPV4的UDP数据包上提供IPV6连接到NAT之后的TEREDO客户端。客
户端上必须配置TEREDO服务器的IPV4地址。
    各种隧道机制就说这么些了,虽然有点多,其实还没说明白,有兴趣还是看RFC文档吧
阅读(1315) | 评论(0) | 转发(0) |
0

上一篇:2005年中北大学IPV6记事

下一篇:ICMPv6

给主人留下些什么吧!~~