CN100484083C - 一种地址转换方法及实现该方法的混合地址转换路由器 - Google Patents

一种地址转换方法及实现该方法的混合地址转换路由器 Download PDF

Info

Publication number
CN100484083C
CN100484083C CNB031539300A CN03153930A CN100484083C CN 100484083 C CN100484083 C CN 100484083C CN B031539300 A CNB031539300 A CN B031539300A CN 03153930 A CN03153930 A CN 03153930A CN 100484083 C CN100484083 C CN 100484083C
Authority
CN
China
Prior art keywords
address
ipv4
ipv6
network
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CNB031539300A
Other languages
English (en)
Other versions
CN1585376A (zh
Inventor
李贺军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB031539300A priority Critical patent/CN100484083C/zh
Publication of CN1585376A publication Critical patent/CN1585376A/zh
Application granted granted Critical
Publication of CN100484083C publication Critical patent/CN100484083C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种地址转换方法,是在本地IP网中设置一个IPv4/IPv6地址转换路由器,两个终端设备之间经过本地IP网发送数据时,数据发送方终端设备接入本地IP网的第一个三层设备收到要发送的数据后,判断IP数据报文中携带的三层地址是IPv4地址还是IPv6地址,如果是IPv4地址,则按目的地址正常转发;如果是IPv6地址,则将所收到的报文封装在IPv4数据包中,发送给混合地址转换路由器,由该混合地址转换路由器进行相应的处理。本发明还同时公开了一种混合地址转换路由器,采用该方法和路由器,能在网络设备改动最小的情况下,支持IPv4和IPv6地址在网中的混合使用,从而实现IPv4向IPv6网络的平滑过渡,有效保护了运营商的原有投资。

Description

一种地址转换方法及实现该方法的混合地址转换路由器
技术领域
本发明涉及IP地址转换技术,尤其涉及一种地址转换方法及实现该方法的混合地址转换路由器。
背景技术
在IP网络规划中,由于IP地址资源短缺,并且涉及到网络优化的问题,因此IP地址方案的设计至关重要。好的IP地址解决方案不仅可以减少网络负荷,还能为网络日后的扩展打下良好的基础。在IPv4体系中,IP地址又是宽带网络中的重要资源,如何充分利用地址资源是十分重要的。
在传统的IP网络中,主要采用的是IPv4网络通信协议,随着Internet的不断发展,IPv4逐渐暴露出许多不足,其中最严重、也是最迫切需要解决的就是IP地址空间耗尽和骨干路由器中路由表过于庞大的问题,这两个问题直接导致了下一代因特网协议-IPv6的诞生。IPv6除了能很好地解决上述问题外,与IPv4相比,IPv6还具有地址空间编址管理、分组处理效率、对移动性、安全性和QoS的支持等诸多明显的优势。
但是,由于Internet的规模以及目前网络中数量庞大的IPv4用户和设备,IPv4网络的基础架构已经相当完善,IPv4到IPv6的过渡不可能一次性实现。而且,目前许多企业和用户的日常工作越来越依赖于Internet,它们无法容忍在协议过渡过程中出现的问题,运营商不可能完全抛弃现有的IPv4网络,所以IPv4到IPv6的过渡是一个循序渐进的过程,只能采用不断向IPv6演进的方式。于是,就出现了同一IP网络中IPv4和IPv6并存,带来了IPv4与IPv6地址之间相互转换的问题。
实际上,IPv6在设计的过程中考虑到了IPv4到IPv6的过渡问题,并提供了一些特性使过渡过程简化,例如:IPv6地址可以使用IPv4兼容的地址,自动由IPv4地址产生;也可以在IPv4的网络上构建隧道,连接IPv6孤岛等等。虽然,针对IPv4到IPv6的过渡已提出了许多解决机制,它们的实现原理和应用环境各有侧重,但是,所有的IPv4->IPv6过渡方案都不是十分完善,在实际组网应用中也存在较多问题。
下面分别以六种有代表性的现有技术方案,说明从IPv4到IPv6过渡目前所存在的问题:
1)双栈策略。
实现IPv6结点与IPv4结点互通的最直接的方式是在IPv6结点中加入IPv4协议栈。具有双协议栈的结点称作“IPv6/v4结点”,这些结点既可以收发IPv4分组,也可以收发IPv6分组。它们可以使IPv4与IPv4结点互通,也可以直接使IPv6与IPv6结点互通。该方案具体的工作原理是:若目的地址是一个IPv4地址,则使用IPv4;若目的地址是“IPv4兼容”的IPv6地址,则将IPv6分组封装在IPv4报文里;若目的地址是其它类型的兼容地址,则使用IPv6,并进行必要的封装。IPv6/v4结点可以只支持手工配置隧道,也可以既支持手工配置也支持自动隧道。
由于双栈结点同时支持IPv4/v6协议,因此必须配置IPv4和IPv6地址。结点分别使用IPv4机制,如DHCP获取IPv4地址,使用IPv6协议机制,如无状态自动配置获取IPv6地址。每个结点所配置的IPv4和IPv6地址之间不必有关联,但是对于支持自动隧道的双栈结点,必须配置有与IPv4地址兼容的IPv6地址,地址格式是前96位为0+IPv4地址。
在本方案中,系统在预先设置的地址解析库中进行IP地址查询,查到IP地址之后,解析库向应用层返回IPv6地址、或返回IPv4地址、或返回IPv6和IPv4地址。那么,对前两种情况,应用层将分别使用IPv6或IPv4与对端通信;对第三种情况,应用层必须做出选择使用哪个地址,即使用哪个IP协议,具体选择哪个地址与应用环境有关。
双栈技术虽然互通性好、易于理解,适用于IPv4地址不缺乏的企业或运营商,起到临时过渡支持IPv6网络的作用。但由于每个IPv6节点都需要配置一个IPv4地址的IPv6地址,比较浪费IPv4地址;而且,双栈技术需要在原有IPv4节点上开发一些新的功能,对现有IPv4的设备改动较大,现有设备很多无法作出这样大的改动;另外,投资太大,没有很好地保护运营商的原有投资。
2)隧道技术。
在IPv6发展初期,必然有许多局部的纯IPv6网络,这些IPv6网络被IPv4骨干网隔离开,成为IPv6孤岛,为使这些IPv6孤岛互通,就采取隧道技术的方式来解决。也就是,利用穿越现存IPv4因特网的隧道技术将许多个IPv6孤岛连接起来,逐步扩大IPv6的实现范围。该隧道技术的工作原理是:在IPv6网络与IPv4网络间的隧道入口处,路由器将IPv6的数据分组封装入IPv4中,IPv4分组的源地址和目的地址分别是隧道入口和出口的IPv4地址,在隧道的出口处再将IPv6数据分组取出转发给目的节点。
本方案中,需要预先对隧道进行配置,包括:人工配置隧道(ConfiguredTunneling)和自动配置隧道(Automatic Tunneling)两种。人工配置隧道是指IPv6-in-IPv4隧道的目的端IPv4地址是由封装IPv6分组数据的IPv4节点预先配置的;而自动配置隧道是指IPv6-in-IPv4隧道的目的端IPv4地址不需要事先配置,但所涉及的节点必须使用IPv4兼容的IPv6地址作为目的地址,隧道端口根据该IPv4兼容的IPv6地址直接产生隧道端口的IPv4目的地址,然后建立隧道。
隧道技术只要求在隧道的入口和出口处进行修改,对其它部分没有要求,非常容易实现。但是,IPv4网络只不过是IPv6网络间的构造隧道的外部环境,并不能实现IPv4节点与IPv6节点间的直接通信,只能实现IPv6与IPv6间的互通。而且,人工配置隧道不适合规模大的网络;自动配置隧道所使用的IPv4兼容的IPv6地址同样限制了网络的适用范围。
3)隧道代理(TB,Tunnel Broker)。
由于在隧道技术中,采用手工配置隧道的扩展性很差,因此TB的主要目的就是简化隧道的配置,提供自动的配置手段。TB的结构如图1所示,其中,隧道代理(TB)负责根据用户,即双栈结点的要求建立、更改和拆除隧道,还负责将用户的IPv6地址和名字信息存放到DNS中,TB可以在多个隧道服务器中选择一个作为隧道末端(TEP)。隧道服务器(Tunnel Server)是一个双栈服务器,连接到IPv6网络上的隧道末端,它从隧道代理处接收命令,对隧道进行必要的操作。
TB的基本工作原理是:首先,双栈结点向TB提供身份和认证信息;双栈结点通过认证后,向TB提供自己的IPv4地址,即隧道端口的IPv4地址,还向TB提供双栈结点自己的名字和类型,类型是指为主机还是路由器;TB收到双栈结点提供的相关信息后,根据一些规则,如负载均衡原则来选定一个隧道服务器作为隧道的末端,同时为双栈结点分配一个IPv6地址前缀,地址前缀的长度根据对应类型而不同;并给隧道分配一个生存时间,将分配的IPv6地址前缀在DNS中进行注册;对隧道服务器进行配置,并且把相关的配置信息通知双栈主机。这样,就可在IPv4网络上建立起隧道,主机可以通过隧道服务器接入IPv6网络。
对于已建立起IPv6的因特网服务提供商(ISP)来说,使用TB技术为网络用户的扩展提供了一个方便的手段,TB可以看作是一个虚拟的IPv6ISP,为已经连接到IPv4网络上的用户提供连接到IPv6网络的手段。但是,该TB技术并不能实现IPv4节点与IPv6节点间的直接通信,只能实现IPv6与IPv6间的互通。另外,需要加入的新设备过多,投资太大;并且限制了用户必须是双栈结点。
4)双栈转换机制(DSTM)。
DSTM的组成结构如图2所示,分为:DSTM域和IPv4网络两部分,DSTM域包括:DHCPv6服务器,为IPv6网络中的双栈主机分配一个临时的IPv4全网唯一地址,同时保留这个临时分配的IPv4地址与主机IPv6永久地址之间的映射关系,此外提供IPv6隧道的隧道末端(TEP)信息;动态隧道端口(DTI),用于将IPv4报文打包到IPv6报文中;DSTM主机,与DHCPv6客户端协同工作,实现IPv6地址与IPv4地址之间的解析,每个DSTM主机上都有一个IPv4端口。
假设一个DSTM主机要与对端通信,DSTM基本的工作原理如图2中步骤1到步骤8所示:DSTM主机向DNS发出查询信息,要求返回对端的IPv4地址;DNS返回对端的IPv4地址,这里DNS不要求必须处在DSTM域里;应用层发出的第一个IPv4数据包到达DTI后;DSTM主机向DHCPv6服务器发出请求,请求一个临时的IPv4地址;DHCPv6服务器返回一个IPv4地址;DTI将该返回的IPv4分组打包,发给DSTM边缘路由器,即TEP;TEP将收到的分组拆包,同时记录IPv4地址与IPv6地址的对应信息;TEP将IPv4分组发给通信对端。
对于从对端发给DSTM主机的IPv4分组,由于在DSTM边缘路由器中已经记录有IPv4地址和IPv6地址的对应信息,因此DSTM边缘路由器可将收到的IPv4分组打包到IPv6分组里,发给DSTM主机。
可见,使用DSTM之后,对于应用层来说是透明的,应用层仍通过IPv4地址工作;对于网络来说也是透明的,DSTM域的网络上只传输IPv6分组,而IPv4网络上只传输IPv4分组。但是,本方案要求主机程序支持DSTM机制,对边缘路由器也需要进行大的改动。
5)协议转换技术。
其主要思想是:在IPv6节点与IPv4节点之间借助中间的协议转换服务器进行通信,此协议转换服务器的主要功能是把网络层协议头进行IPv6/IPv4间的转换,以适应对端的协议类型要求。
协议转换又分为两种:无状态IP/ICMP转换(SIIT,Stateless IP/ICMPTranslation)和网络地址转换-协议转换(NAT-PT,Network Address Translation-Protocol Translation)。其中,SIIT单独对IP分组和ICMP分组报文进行协议转换,不记录一个流的状态;NAT-PT是SIIT技术和IPv4网络中动态地址翻译技术的结合,它利用SIIT技术的工作机制,又利用传统的IPv4下的NAT技术来动态地给访问IPv4节点的IPv6节点分配IPv4地址。
如图3所示,SIIT的工作机理是:
当IPv4主机A要访问IPv6主机B时,主机A的IPv4地址是没有限定的全球IPv4地址,主机B的IPv6地址必须是形如::FFFF:0:a.b.c.d的IPv4翻译地址,且低32位是SIIT分配的全球IPv4地址。当主机A发出的访问主机B的分组到达SIIT时,分组中目的地址是主机B的低32位地址,SIIT判断出此地址属于其管理的IPv6-Only节点的IPv4地址空间,即做相应的IPv4到IPv6的协议分组头转换,把源地址转换成IPv4的映射地址,目的地址转换成IPv4的翻译地址,再把此IPv6分组传给主机B。
当主机B访问主机A时,主机B发出的分组中源地址是主机B的翻译地址,目的地址是主机A的映射地址,当IPv6的分组到达SIIT协议转换器时,SIIT判断出目的地是IPv4的映射地址,就要对该分组进行IPv6到IPv4的协议分组头转换,再把转换后的IPv4分组传给主机A。
如图4所示,NAT-PT处于IPv6和IPv4网络的交界处,可实现IPv6主机与IPv4主机之间的互通,需要完成IPv4和IPv6协议头之间的协议转换和能使通信双方相互识别的地址转换,也就是说,IPv4网中的主机用一个IPv4地址标识IPv6网络中的一个主机,同样,IPv6网中的主机用一个IPv6地址标识IPv4网络中的一个主机。
当IPv4主机B要与IPv6主机A通信时,先向IPv6网络中的DNS发出请求对主机A进行名字解析,该请求在途径NAT-PT时,NAT-PT上的DNS应用层网关(ALG)对其内容进行修改,即将请求类型转换,之后,转发给IPv6网络内的DNS;DNS返回的应答中包含主机A的IPv6地址,该应答在途径NAT-PT时,又被DNS-ALG将请求类型恢复,同时从IPv4地址池中分配一个地址,替换应答中的IPv6地址,并记录地址池地址与IPv6地址之间的映射信息;主机B在收到DNS应答后,即可以正常方式进行通信。数据分组再经过NAT-PT时,NAT-PT对分组头信息进行修改,由于在NAT-PT中已经记录了IPv4地址池地址与IPv6地址之间的映射信息,因此可以按原有记录的信息对地址进行转换。
上述方案中,虽然SIIT技术能有效解决IPv4节点与IPv6节点的互通,但其需要有一个备用的全局IPv4地址池来给与IPv4节点通信的IPv6节点分配IPv4地址,又由于IPv4地址空间优先,该备用的全局IPv4地址池不能很大,如此,就可能出现IPv4地址池分配地址不足的问题,不适合规模很大的网络。而NAT-PT能解决SIIT技术中备用全局IPv4地址池分配地址不足的问题,但却存在不能支持所有应用的问题,包括:1)应用层协议中如果包含有IP地址、端口等信息的应用程序,如果不将高层报文中的IP地址进行变换,则这些应用程序就无法工作,如FTP、STMP等。2)含有在应用层进行认证、加密的应用程序无法在此协议转换中工作。3)IPv4网络中不能存在IPv6结点,反之亦然。
6)SOCKS64。
参见图5所示,客户端C向目的端D发起连接,通过两个新增的功能块实现SOCKS网关机制:一个是在客户端里引入SOCKS库,它处在应用层和Socket之间,对应用层的Socket API和DNS名字解析API进行替换,这个过程称为“SOCKS化”;另一个是SOCKS网关,安装在IPv6/v4双栈结点上,是一个增强型的SOCKS服务器,能实现客户端C和目的端D之间任何协议组合的中继。当客户端C上的SOCKS库发起一个请求后,由网关产生一个相应的线程负责对连接进行中继。SOCKS库与网关之间通过SOCKS,如SOCKSv5协议通信,它们之间的连接是“SOCKS化”连接,不仅包括业务数据也包括控制信息;而网关G和目的端D之间的连接未作改动,属于正常连接。目的端D上的应用程序并不知道客户端C的存在,它认为通信对端是网关G。
SOCKS网关机制的关键是名字解析的实现,由于通信双方的地址格式不同,所以在名字解析的过程中必须进行一些处理,SOCKS网关机制中使用DNS名字解析代理的方法。也就是说,应用层无须改动,由SOCKET库将应用层发出的Socket调用改为由SOCKS客户主机向SOCKS服务器发出的Socket调用。
SOCKS64网关是一个双栈主机,它可以同时和IPv4或IPv6节点进行通信,SOCKS64的客户只与SOCKS64网关直接通信,与IPv4或IPv6节点的通信实际上由SOCKS64网关来完成。这种机制不需要修改DNS或者地址映射,可满足IPv4与IPv6节点的互操作。
该方案中,由于所有互操作都靠SOCKS64双栈代理服务器来转发完成,SOCKS64代理服务器相当于高层软件网关,实现的代价很大,并需要在客户端具有支持SOCKS代理的软件,对于用户来讲不是透明的,只能作为临时性的过渡技术。
当然,现有的解决方案还有:传输层中继(Transport Relay)技术、应用层网关代理技术等等,但这些技术对于IPv4到IPv6的过渡同样存在不同程度的缺陷。
综合以上多种IPv4到IPv6的过渡方案来看,不同的过渡策略各有优劣、应用环境不同,根据运营商具体的网络情况不同而应用,但所有的过渡技术中要么需要对网络设备,甚至用户终端设备进行较大的改动;要么就要求网络中的所有设备都支持双栈结构的,并没有一种方案是对网络改动最小且要求支持双栈结构设备最少的。
发明内容
有鉴于此,本发明的主要目的在于提供一种地址转换的实现方法,在网络设备改动最小的情况下,支持IPv4和IPv6地址在网中的混合使用,从而实现IPv4向IPv6网络的平滑过渡,有效保护了运营商的原有投资。
本发明的另一目的在于提供一种混合地址转换路由器,具有IPv4/IPv6双栈结构,能同时支持IPv4和IPv6协议,从而支持IPv4到IPv6网络的平滑过渡。
为达到上述目的,本发明的技术方案是这样实现的:
一种地址转换方法,在本地IP网出口处设置支持IPv4/IPv6双栈结构的混合地址转换路由器,
a.两个终端设备之间经过本地IP网发送数据时,该方法包括:数据发送方终端设备向外网传输的数据经过该发送方终端设备接入本地IP网的第一个三层设备时,该三层设备判断IP数据报文中携带的三层地址是IPv4地址还是IPv6地址,如果是IPv4地址,则按目的地址正常转发;如果是IPv6地址,则将所收到的报文封装在IPv4数据包中,发送给混合地址转换路由器;
b.混合地址转换路由器从所收到的IPv4数据包中提取出封装的IPv6数据,判断是否需要地址转换,如果不需要,则直接按目的地址发送;否则,先对目的地址进行转换,然后再按转换后的目的地址进行发送。
其中,所述终端设备为IPv6设备,或为IPv4设备。则所述判断是否需要地址转换为:判断是否为IPv4设备向IPv6设备发送的数据;或为判断是否为IPv6设备向IPv4设备发送的数据;或为判断是否为IPv6设备经过本地IPv4网向IPv6设备发送的数据。
上述方案中,所述第一个三层设备和混合地址转换路由器经由至少一个不支持IPv4/IPv6双栈结构的路由设备互连。所述IPv4地址为本地IP网内部分配的IPv4私网地址,或为IPv4公网地址。
本发明还提供了一种混合地址转换路由器,包括IPv4/IPv6双栈结构,该路由器还包括:
主控模块,用于网络中设备和路由信息的维护管理,与交换结构模块相连;
交换结构模块,用于设备内部模块间的数据交换,与主控模块、业务模块和地址转换模块相连;
地址转换模块,包括由至少一个转换模块组成的转换模块阵列,用于IPv4/IPv6报文地址间的转换;
业务模块,负责正常报文的转发和IP业务的处理,业务模块通过自身提供的外部接口与外部网络连接,并通过自身提供的内部接口与本地IP网相连,且,根据内部接口上配置的策略识别需要作地址转换的、封装了IPv6数据的IPv4数据包,并将需要作地址转换的数据包发送给地址转换模块。
其中,所述业务模块为具有均衡转换模块间负荷功能的业务模块。所述业务模块与快速以太网、或千兆以太网、或基于SDH的分组网(POS,Packet OverSDH)、或异步转移模式ATM网相连。
由于IPv4地址资源日益紧张以及IPv6的不断发展,从IPv4过渡到IPv6是必然趋势,本发明只需在本地IPv4网的出口处设置一个支持双栈结构的IPv4/IPv6混合地址转换路由器,所有IPv4/IPv6地址转换操作全部由该路由器完成;另外,只需对终端设备接入IP网的第一个三层设备的处理做微小改动,其它网络设备的结构和处理无需做任何改变,因此,本发明所提供的地址转换方法及实现该方法的混合地址转换路由器,具有以下的优点和特点:
1)本发明使原有的IPv4终端可持续使用,不会因IPv6的介入而废弃,从而保护了个人用户的投资;
2)本发明中,用户终端不用支持IPv4/IPv6双栈,可以是独立的IPv6终端;
3)本发明中,用户可以自行升级为IPv6终端,网络不会因为IPv6终端的加入而大范围变动;
4)本发明中,除了IPv4/IPv6混合地址转换路由器,其它网络设备都无需支持IPv4/IPv6双栈,不用对现有的IPv4网络设备做大量改变,即可通过地址转换实现本发明的组网,实现IPv4设备与IPv6设备的互通,也就是说,不需要设备大范围的升级即可实现IPv4到IPv6网络的平滑过渡,有效地保护了运营商现有的投资;
5)个人用户访问本地网服务,不需要经过地址转换,因此VoIP、VOD、H.323、ICQ、SMTP等不受限制;
6)本地网,如城域网内服务器使用IPv6地址就可以提供对外的Internet服务,不受地址转换性能的限制;
7)IPv4/IPv6混合地址组网可以根据配置好的策略有选择地进行地址转换,控制灵活,组网方便;
8)由于仅对部分需要转换的报文进行转换,大部分报文做正常的路由转发,从而减轻了混合地址转换路由器设备的负担,减少了因地址转换给网络带来的低效率问题,提高了地址转换性能;
9)本发明的混合地址转换路由器具有自动流量分配功能,需要做地址转换的数据流均匀流向地址转换模块,且支持FTP、SMTP、H.323、ICQ等多种应用层网关。
附图说明
图1为TB的组成结构示意图;
图2为DSTM的组成结构及工作原理示意图;
图3为SIIT技术的工作原理示意图;
图4为NAT-PT技术的工作原理示意图;
图5为SOCKS64技术的工作机制示意图;
图6为本发明混合地址转换路由器的组成结构示意图;
图7为本发明应用时的组网结构图;
图8为本发明地址转换方法实现的流程示意图。
具体实施方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
本发明的核心思想是:在本地IP网中设置一个IPv4/IPv6地址转换路由器,并且,在每个终端设备接入本地IP网的第一个三层设备中增加一个地址类型的判断,使所有需要进行IPv4和IPv6转换的数据包经过本地IP网传输时,全部送至IPv4/IPv6地址转换路由器,由该路由器进行地址转换以及相应的处理。如此,只需要该IPv4/IPv6地址转换路由器支持双栈结构,而且只需对终端接入IP网络的第一个三层设备的处理做微小改动,其它网络设备的结构和处理无需做任何改变,即可实现IPv4设备与IPv6设备的互通。
本发明所涉及的IPv4/IPv6混合地址转换路由器(CATR,Coexistent AddressTranslate Router)通常设置于本地IP网的网络出口处,该CATR采用IPv4/IPv6双栈结构,同时支持IPv4、IPv6路由和转发,可同时处理来自内部和外部的IPv4/IPv6报文,并支持IPv4和IPv6的地址转换。这里,CATR可以设置于骨干网的网络出口处;对于有多个小网,如企业网、公司网经过网络汇聚层连入骨干网的情况,该CATR也可以设置于网络汇聚层上,相当于设置在各个小网的网络出口处。
CATR的组成结构如图6所示,包括:主控模块、交换结构模块、地址转换模块和业务模块。其中,主控模块负责网络中路由信息的维护管理、设备本身的管理等;交换结构模块负责设备内部各模块之间的数据交换;地址转换模块负责IPv4/IPv6报文地址间的相互转换,地址转换模块进一步包含若干个独立的转换模块,是一个转换模块阵列,地址转换的具体实现方式可以采用现有的成熟技术,如NAT-PT等,并同时实现ALG等功能;业务模块负责正常报文的转发、IP业务的处理等,业务模块提供业务接口,可以接快速以太网、千兆以太网以及POS、ATM等,业务模块提供分布式路由处理能力,实现路由查找和转发。业务模块可分为两部分:一部分处理外部网络的数据报文和业务,另一部分处理本地网的数据报文和业务,连接外部网络的业务模块提供外部接口连接到外部Internet,可以连接到省网或国家网骨干上,该接口可以连接IPv6网络,也可以连接到IPv4网络;连接本地网的业务模块提供内部接口接收和发送IPv4数据报文,其中包括封装了IPv6数据的IPv4报文。
所述的内部接口可配置若干策略,根据策略识别需要做地址转换的数据包,如图6所示,虚线表示需要转换的数据流,实线表示不需要转换的数据流,具体的配置策略包括以下三种:
1)对经由内部接口来自于本地网第一个三层设备的数据包,如果本地网为IPv4网,则该数据包分为三种情况:第一种是从IPv4设备发送给IPv6设备的数据包;第二种是从IPv6设备发送给IPv4设备的数据包;第三种是从IPv6设备经过IPv4网络传输发送给IPv6设备的数据包。那么,CATR提取出数据包,如果该数据包目的地址是IPv6地址,即访问的是IPv6服务器,则直接按照IPv6路由转发;如果该数据包源地址为IPv6地址、目的地址为IPv4地址,即访问的是IPv4服务器,则送至相应的转换模块进行地址转换。如果本地网为IPv6网,则存在IPv6设备发给IPv4设备、IPv4设备发给IPv6设备或IPv4设备经过IPv6网发给IPv4设备的数据包,处理方案类似,目的地址为IPv4的直接转发,源地址为IPv4、目的地址为IPv6的,送至相应的转换模块。
2)对经由内部接口来自于本地网IPv4主机的数据,如果访问的是IPv4服务器,即目的地址为IPv4,则直接按照IPv4路由转发;如果访问的是IPv6服务器,即目的地址为IPv6,则送至相应的转换模块进行地址转换,这里本地网为IPv4网。
3)对来自外部接口的数据包,同样也根据数据包中的内容判断,以本地网为IPv4网为例,如果访问的是IPv4服务器,则直接按照IPv4路由转发;如果访问的是IPv6服务器,则送至相应的转换模块进行地址转换。
由于本发明CATR中的地址转换模块有一个以上转换模块,因此本发明CATR中的业务模块还具有转换模块间均衡的功能,可以使转换流量均匀的在各转换模块之间分配,实现转换的负荷分担,从而降低单个转换模块的性能要求和实现难度。转换模块的均衡策略可以基于源IP、目的IP,也可以是更为精细的IP流分类。分配的基本策略是:使转换相同的数据流在同一个转换模块中处理,同时使流量在各转换模块间尽量均匀。由于负荷分担分布式处理,每个转换模块负担较小,可以使转换模块具有足够的处理能力。
图7为本发明应用时的组网结构图,如图7所示,本地IPv4网,如城域网或省网内可以同时存在IPv4地址和IPv6地址,终端设备如终端用户的计算机既可以使用IPv4地址,也可以使用IPv6地址;网络出口采用CATR进行地址管理和转换。那么,本地终端设备发送给外网的数据,经过二层(L2)设备,如L2交换机、第一个三层(L3)设备,如L3交换机传输到本地IPv4网中,再经过网络传输,从与外网连接的网络出口发送至外网。
在本地IPv4网的网络出口处设置有一个CATR,传输过程中,终端设备接入本地IP网的第一个L3设备要对当前收到的数据包中的三层IP地址进行判断,即判断该三层IP地址是IPv4地址还是IPv6地址,确定是否需要封装;数据包传到CATR,CATR也会根据数据包中的IP地址进行相应处理。同样,从外网向本地终端设备传输的数据,即数据包返回时也要进行对应的处理,具体地说就是,外网向本地终端设备传输的数据从CATR进入本地IPv4网后,CATR对该数据包进行分析,如果是发送给IPv4设备的,直接按目的地址转发;如果是发给IPv6设备的,则先进行地址转换,然后再按转换后的地址发送。
可以看出,在本地IPv4网中,终端设备接入本地IPv4网的第一个三层设备不用支持IPv4/IPv6双栈,只需作微小的改动,确切地说,只需增加一个地址类型的判断和对IPv6数据的封装;并且,在第一个三层设备与CATR之间存在的路由设备也可以是普通的IPv4设备,不用支持IPv4/IPv6双栈,且不用作任何改动。
基于图7所示的组网结构,以某终端设备向外部网络发送数据为例,如图8所示,本发明地址转换的实现方法具体包括以下的步骤:
步骤801~804:终端设备向外网传输的数据经过该终端设备接入本地IPv4网的第一个三层设备时,该三层设备判断当前收到的IP报文中携带的三层地址为IPv4地址还是IPv6地址,如果是IPv4地址则按目的地址正常流程转发,即直接按目的路由转发;如果是IPv6地址,则将此报文封装在一个IPv4数据包中,该封装后的IPv4数据包的目的IPv4地址是CATR的地址,源IPv4地址是该三层设备的地址,这样,被封装的IPv4数据包就可以经过本地网正常的路由转发,到达设置于网络出口的CATR,由CATR进行相应的处理。
这里,本地IPv4网内部分配的地址可以是IPv4私网地址,也可以是IPv4公网地址;在第一个三层设备与CATR之间存在的路由设备可以是普通的IPv4设备,不用支持IPv4/IPv6双栈;第一个三层设备也不用支持IPv4/IPv6双栈。
步骤805~808:CATR接收并解析所收到的IPv4数据包,从IPv4数据包中提取出封装的IPv6数据,判断是否需要进行地址转换,如果不需要,比如目标地址是IPv6地址,则按目的地址路由直接转发;否则,比如源地址是IPv6、目标地址为IPv4的情况,则CATR选择一个转换模块对该数据包进行地址转换,并按转换后的目的地址发送该IP数据包。
这里的CATR采用IPv4/IPv6双栈结构,同时支持IPv4、IPv6路由和转发,可同时处理来自内部和外部的IPv4/IPv6报文,并支持IPv4和IPv6的地址转换,采用现有的NAT-PT技术实现地址转换。但是,CATR根据配置策略,只对数据报文有选择地进行地址转换,通常仅对需要转换的数据报文,如:仅对IPv6报文进行地址转换,而对大部分IPv4报文只做正常的路由转发。所述的配置策略就是指在内部接口设置的配置策略。
上述方案是指将CATR设置于骨干网,一般,对于较大的城市或地区,也可在网络的汇聚层实现CATR,通过降低CATR网络层次,实现分布式的地址转换,可以提高地址转换的性能。
本发明的方案不仅可以用于IPv4网和IPv6网间设备的数据传输,也可以用于同一网内,IPv4设备和IPv6设备间的数据传输,总之,以上所述仅为本发明的较佳实施例而已,并非用来限定本发明的保护范围。

Claims (8)

1、一种地址转换方法,其特征在于,在本地IP网出口处设置支持IPv4/IPv6双栈结构的混合地址转换路由器,
a.两个终端设备之间经过本地IP网发送数据时,该方法包括:数据发送方终端设备向外网传输的数据经过该发送方终端设备接入本地IP网的第一个三层设备时,该三层设备判断IP数据报文中携带的三层地址是IPv4地址还是IPv6地址,如果是IPv4地址,则按目的地址正常转发;如果是IPv6地址,则将所收到的报文封装在IPv4数据包中,发送给混合地址转换路由器;
b.混合地址转换路由器从所收到的IPv4数据包中提取出封装的IPv6数据,判断是否需要地址转换,如果不需要,则直接按目的地址发送;否则,先对目的地址进行转换,然后再按转换后的目的地址进行发送。
2、根据权利要求1所述的方法,其特征在于,所述终端设备为IPv6设备,或为IPv4设备。
3、根据权利要求1所述的方法,其特征在于,所述第一个三层设备和混合地址转换路由器经由至少一个不支持IPv4/IPv6双栈结构的路由设备互连。
4、根据权利要求1所述的方法,其特征在于,所述IPv4地址为本地IP网内部分配的IPv4私网地址,或为IPv4公网地址。
5、根据权利要求2所述的方法,其特征在于,所述判断是否需要地址转换为:判断是否为IPv4设备向IPv6设备发送的数据;或为判断是否为IPv6设备向IPv4设备发送的数据;或为判断是否为IPv6设备经过本地IPv4网向IPv6设备发送的数据。
6、一种混合地址转换路由器,其特征在于,包括IPv4/IPv6双栈结构,该路由器还包括:
主控模块,用于网络中设备和路由信息的维护管理,与交换结构模块相连;
交换结构模块,用于设备内部模块间的数据交换,与主控模块、业务模块和地址转换模块相连;
地址转换模块,包括由至少一个转换模块组成的转换模块阵列,用于IPv4/IPv6报文地址间的转换;
业务模块,负责正常报文的转发和IP业务的处理,业务模块通过自身提供的外部接口与外部网络连接,并通过自身提供的内部接口与本地IP网相连,且,根据内部接口上配置的策略识别需要作地址转换的、封装了IPv6数据的IPv4数据包,并将需要作地址转换的数据包发送给地址转换模块。
7、根据权利要求6所述的方法,其特征在于,所述业务模块为具有均衡转换模块间负荷功能的业务模块。
8、根据权利要求6所述的方法,其特征在于,所述业务模块与快速以太网、或千兆以太网、或基于SDH的分组网(POS,Packet Over SDH)、或异步转移模式ATM网相连。
CNB031539300A 2003-08-20 2003-08-20 一种地址转换方法及实现该方法的混合地址转换路由器 Expired - Lifetime CN100484083C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031539300A CN100484083C (zh) 2003-08-20 2003-08-20 一种地址转换方法及实现该方法的混合地址转换路由器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031539300A CN100484083C (zh) 2003-08-20 2003-08-20 一种地址转换方法及实现该方法的混合地址转换路由器

Publications (2)

Publication Number Publication Date
CN1585376A CN1585376A (zh) 2005-02-23
CN100484083C true CN100484083C (zh) 2009-04-29

Family

ID=34597922

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031539300A Expired - Lifetime CN100484083C (zh) 2003-08-20 2003-08-20 一种地址转换方法及实现该方法的混合地址转换路由器

Country Status (1)

Country Link
CN (1) CN100484083C (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100362829C (zh) * 2005-02-24 2008-01-16 华为技术有限公司 IPv6和IPv4 GPRS核心网互通的方法及装置
CN1333568C (zh) * 2005-05-27 2007-08-22 清华大学 基于过渡机制的IPv6网和IPv4网间互通的方法
CN1741502B (zh) * 2005-09-23 2010-04-21 清华大学 基于4over6的IPv6和IPv4网间互通的方法
CN101075944B (zh) * 2006-05-19 2011-03-16 华为技术有限公司 一种ip地址分配方法及系统
CN101087296B (zh) * 2006-06-08 2011-06-15 上海亿人通信终端有限公司 利用网络处理器实现IPv4/IPv6网络协议转换的方法
CN1968273B (zh) * 2006-10-26 2010-08-18 杭州华三通信技术有限公司 一种支持IPv6业务的方法及其应用的交换设备
CN101345774B (zh) * 2008-08-13 2012-02-29 成都市华为赛门铁克科技有限公司 实现业务代理的装置、系统及方法
CN101447935B (zh) 2008-11-20 2011-12-21 华为技术有限公司 数据包转发方法、系统及设备
CN101707637B (zh) * 2009-11-27 2013-05-08 中兴通讯股份有限公司 一种分配ip地址的方法及系统
CN101841572B (zh) * 2009-12-25 2013-09-25 北京网康科技有限公司 一种支持IPv6网络的IPv4网络设备及其实现方法
CN101902391B (zh) * 2010-03-15 2013-01-16 杭州华三通信技术有限公司 基于智能的静态路由进行报文转发的方法和设备
CN101789981B (zh) * 2010-03-18 2014-03-19 杭州华三通信技术有限公司 双协议栈数据传输的方法和设备
CN102821032B (zh) * 2011-06-10 2016-12-28 中兴通讯股份有限公司 一种快速转发数据包的方法及三层设备
CN103023787B (zh) * 2011-09-26 2016-01-20 百度在线网络技术(北京)有限公司 数据中心系统及装置和提供服务的方法
CN104509046B (zh) * 2013-07-12 2017-12-29 华为技术有限公司 一种数据通信方法、设备和系统
CN103401800B (zh) * 2013-07-31 2016-08-03 杭州华三通信技术有限公司 一种链路负载均衡方法和设备
CN103812868B (zh) * 2014-02-20 2018-03-16 北京极科极客科技有限公司 基于IPv4/IPv6转换实现免费上网的方法及其系统
CN103888554B (zh) * 2014-03-24 2017-12-01 广州杰赛科技股份有限公司 IPv4与IPv6互通的域名解析方法和系统
CN103957152B (zh) * 2014-04-22 2017-04-19 广州杰赛科技股份有限公司 IPv4与IPv6网络通信方法及NAT‑PT网关
CN105391813A (zh) * 2015-10-13 2016-03-09 北京极科极客科技有限公司 一种socks透明代理的方法及装置
CN111343244B (zh) * 2018-08-23 2023-01-31 贵州白山云科技股份有限公司 云分发网络调度方法、装置及计算机可读存储介质
CN113783971A (zh) * 2020-06-10 2021-12-10 中兴通讯股份有限公司 地址管理方法、网络设备及存储介质
CN111953700B (zh) * 2020-08-18 2023-04-07 中国工商银行股份有限公司 会话保持方法及装置
CN113518066A (zh) * 2021-03-25 2021-10-19 国网浙江省电力有限公司衢州供电公司 一种地址代理转换的扫描系统及地址转换方法
CN115567484A (zh) * 2021-06-30 2023-01-03 中国电信股份有限公司 数据转发方法、网络侧边缘路由器和网络系统

Also Published As

Publication number Publication date
CN1585376A (zh) 2005-02-23

Similar Documents

Publication Publication Date Title
CN100484083C (zh) 一种地址转换方法及实现该方法的混合地址转换路由器
CN102577330B (zh) 用于在网络环境中提供转换机制的装置、逻辑和方法
CN102148773B (zh) 一种IPv6协议和IPv4协议转换的方法及系统
CN101155115B (zh) 一种自动隧道的实现方法及设备
CN104270475B (zh) 基于NAT64实现IPv4网络与IPv6网络互通的系统及方法
JP3531367B2 (ja) トランスレータ
CN1333568C (zh) 基于过渡机制的IPv6网和IPv4网间互通的方法
CN100413289C (zh) 基于P2P在IPv4上实现IPv6高性能互联的方法
CN102308523B (zh) 数据通信网络配置方法、网关网元及数据通信系统
CN101316272A (zh) 构建因特网协议版本4和6混合网络的多协议层翻译方法
JPH11112577A (ja) Lanシステム間相互接続方式及びネットワークサービスシステム
CN104170331A (zh) 用于vxlan的l3网关
CN101499965B (zh) 一种基于IPSec安全关联的网络报文路由转发和地址转换方法
CN100563215C (zh) 一种报文路由交换装置及其方法
CN102739810A (zh) IPv4CP/SP和IPv6网络互通的方法与设备
CN102148766A (zh) 一种三层功能组网下pon内业务互通的方法
CN112187674B (zh) 支持IPv4和IPv6双栈混合的网络结构和组网方法
CN102984070A (zh) 一种以太网无编号接口实现数据转发方法
CN102891903A (zh) 一种nat转换方法及设备
CN102340547B (zh) 运营级IPv4向IPv6的平滑过渡方法、设备和系统
CN1333559C (zh) Wcdma系统中建立特殊操作维护通道的方法
CN101383834A (zh) 在6to4网络间转发IPv6组播报文的方法及6to4设备
CN102098353B (zh) 基于分布式哈希表DHT实现IPv4和IPv6互通的系统和方法
CN100459566C (zh) 进行网络地址转换的网络中隧道中继的实现方法
CN100334858C (zh) 一种利用双重隧道机制穿透nat的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20090429