CN101909042B - 具有IPv4应用的主机通过IPv6网络进行通信的方法和系统 - Google Patents
具有IPv4应用的主机通过IPv6网络进行通信的方法和系统 Download PDFInfo
- Publication number
- CN101909042B CN101909042B CN2009100858878A CN200910085887A CN101909042B CN 101909042 B CN101909042 B CN 101909042B CN 2009100858878 A CN2009100858878 A CN 2009100858878A CN 200910085887 A CN200910085887 A CN 200910085887A CN 101909042 B CN101909042 B CN 101909042B
- Authority
- CN
- China
- Prior art keywords
- packet
- ipv4
- ipv6
- main frame
- packet header
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及移动通信领域,尤其涉及具有IPv4应用的主机通过IPv6网络进行通信的技术。本发明提供了一种具有IPv4应用的主机通过IPv6网络进行通信的系统和方法,包括:主机根据IPv4应用向通信对端发送的信息生成IPv4数据包,将数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送;NAT设备接收到主机发送的数据包,将接收的数据包的包头转换为IPv4数据包的包头后,通过IPv4网络转发;通信对端通过IPv4网络接收到NAT设备转发的数据包。由于NAT设备仅是对数据包的包头部分进行转换,而不必涉及对传输层头和数据部分进行转换,大大减少了系统的处理负担,使得单点失效发生的概率下降。
Description
技术领域
本发明涉及移动通信领域,尤其涉及具有IPv4应用的主机通过IPv6网络进行通信的技术。
背景技术
随着全球IPv4(Internet Protocol version 4,第4版本互联网协议)地址的耗尽和业务对终端“永远在线”的要求,IPv6(Internet Protocol version 6,第6版本互联网协议)技术的部署将成为必然。为了逐步引入IPv6网络的概念,IPv6网络以及IPv4/IPv6双栈网络的建设将成为IPv6技术部署的第一步。然而,目前的主机具有大量的IPv4应用,IPv6应用的数量与之相比却微乎其微,因此在IPv6过渡方案初期如何解决IPv6网络中主机间IPv4应用的访问与互通将成为IPv6过渡中需要考虑的一个重要问题。
在现有技术中,SIIT算法提供了IPv6应用(IPv6 Application)通过IPv6网络和IPv4网络与IPv4节点通信的方法。该方法中在数据包进出IPv6网络的网络拓扑路径上设置有SIIT翻译器,当网络中出现大量访问外部IPv4应用(IPv4 Application)的数据流时,SIIT翻译器需要对每个数据流进行翻译并保存其状态,这使得网络系统的处理负担很大,容易造成系统中单点失效。
此外,现有技术的BIS算法提供了一种IPv4应用访问IPv6网络中的IPv6节点的方法。在该方法中,在IPv4应用的主机中添加翻译模块,用于监测TCP/IP模块与网卡驱动程序之间的数据流,并进行相应IPv4与IPv6数据包之间的相互翻译。当与其他IPv6主机进行通信时,在这台主机内部给对应IPv6主机分配一些IPv4地址,这些地址只在这台主机内部使用。而且,这种分配过程是通过DNS协议自动来完成的。这样,IPv4应用的主机可以通过翻译模块将发送给对端IPv6节点的数据包转换为IPv6数据包,或者将接收的IPv6数据包转换为IPv4数据包传递给IPv4应用,实现与IPv6网络中IPv6节点的通信。但是,在实际应用的场景中,有可能出现IPv4应用需要通过IPv6网络访问另一个IPv4应用,那么BIS算法并没有针对这种场景给出解决方案。
现有技术的另一个方案中,提出在IPv4和IPv6网络边缘上部署边界转换网关设备,边界转换网关设备将从IPv6网络发送到IPv4网络的数据包转换为IPv4数据包,将从IPv4网络发送到IPv6网络的数据包转换为IPv6数据包。那么,结合该方案与上述的BIS算法则可以解决IPv4应用通过IPv6网络访问另一个IPv4应用的问题。但是,由于需要在IPv4和IPv6网络边缘上部署专门的边界转换网关设备来实现数据包的转换,导致网络系统的处理负担很大,容易造成单点失效的问题。
综上所述,现有技术所提供的IPv4应用通过IPv6网络访问另一个IPv4应用的方法都需要在IPv4和IPv6网络边缘上部署专门的设备(比如上述的SIIT翻译器或者边界转换网关设备)进行地址翻译以及充当应用层网关(ALG)的应用信息转换功能(即应用层网关功能)。尤其是应用层网关功能的添加已被实践证明将会给网络系统增加较大的处理负担,容易导致单点失效的问题。
发明内容
本发明实施例提供了一种具有IPv4的主机及其通过IPv6网络进行通信的方法和系统,用以实现IPv4应用通过IPv6网络访问另一个IPv4应用时,减小网络系统的处理负担。
一种具有IPv4应用的主机通过IPv6网络进行通信的方法,包括:
所述主机根据IPv4应用向通信对端发送的信息生成IPv4数据包;并
将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送;
NAT设备通过所述IPv6网络接收到所述主机发送的数据包;并
将接收的数据包的包头转换为IPv4数据包的包头后,通过IPv4网络转发;
所述通信对端通过所述IPv4网络接收到所述NAT设备转发的数据包,解析该数据包获取所述主机发送的信息。
一种具有IPv4应用的主机通过IPv6网络进行通信的系统,包括:
第一主机,用于根据本机的IPv4应用向第二主机发送的信息生成IPv4数据包;并将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送;
NAT设备,用于通过所述IPv6网络接收所述第一主机发送的数据包;并将接收的数据包的包头转换为IPv4数据包的包头后,通过IPv4网络转发;
第二主机,用于通过所述IPv4网络接收所述NAT设备转发的数据包,并解析该数据包获取所述第一主机发送的信息。
一种具有IP v4应用的主机通过IPv6网络进行通信的方法,包括:
第一主机根据本机的IPv4应用向第二主机发送的信息生成IPv4数据包;并
将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送;
所述第二主机通过所述IPv6网络接收到所述第一主机发送的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包,并解析该IPv4数据包获取所述第一主机的IPv4应用发送的信息。
一种具有IP v4应用的主机通过IP v6网络进行通信的系统,包括:
第一主机,用于根据本机的IPv4应用向第二主机发送的信息生成IPv4数据包;并将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送;
第二主机,用于通过所述IPv6网络接收到所述第一主机发送的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包,并解析该IPv4数据包获取所述第一主机的IPv4应用发送的信息。
一种基于IPv4应用的主机,包括:
数据包生成模块,用于根据IPv4应用向通信对端发送的信息生成IPv4数据包;
第一包头转换模块,用于将生成的IPv4数据包的包头转换为IPv6数据包的包头;
数据包发送模块,用于将所述第一包头转换模块转换后的数据包通过IPv6网络发送。
本发明实施例由于主机将IPv4数据包的包头转换为IPv6数据包的包头,使得该数据包可以通过IPv6网络传输,并且不必涉及对传输层头和数据部分进行转换,大大减少了系统的处理负担。
进一步,由于在IPv6与IPv4网络的边界处设置的NAT设备将数据包的包头又转换回IPv4数据包的包头,从而形成完整的IPv4数据包,使之可以通过IPv4网络发送到IPv4网络中的IPv4节点或者具有IPv4应用的主机。而NAT设备仅是对数据包的包头部分进行转换,而不必涉及对传输层头和数据部分进行转换,大大减少了系统的处理负担,使得单点失效发生的概率下降。
附图说明
图1为本发明实施例的具有IPv4应用的主机通过IPv6网络进行通信的系统示意图;
图2a、2b为本发明实施例的具有IPv4应用的主机通过IPv6网络进行通信的方法流程示意图;
图3为本发明实施例的具有IPv4应用的主机通过IPv6网络获取IPv4网络中DNS服务器的域名服务的方法流程示意图;
图4为本发明实施例的具有IPv4应用的主机的内部结构框图。
具体实施方式
本发明实施例在具有IPv4应用的主机中将IPv4数据包的包头转换为IPv6数据包的包头,对于数据包的传输层头和数据部分则不进行转换;在IPv6和IPv4网络边缘上的NAT设备在通过IPv6网络接收到数据包后,将该数据包的包头换成IPv4数据包头后即得到IPv4数据包,并通过IPv4网络向通信对端发送IPv4数据包。这样,设置在IPv6和IPv4网络边缘上的NAT设备不必对整个数据包(包括传输层头和数据部分)进行转换,只需对数据包的包头进行转换,减小了网络系统的处理负担,使得单点失效发生的概率大大下降。
反之亦然,NAT设备在通过IPv4网络接收到数据包后,将该数据包的包头换成IPv6数据包头后,通过IPv6网络发送给具有IPv4应用的主机,该主机将接收的数据包的包头转换为IPv4数据包的包头后即得到IPv4数据包传递到IPv4应用进行处理。
下面结合附图详细说明本发明实施例的具体技术方案。
在如图1所示的具有IPv4应用的主机通过IPv6网络进行通信的系统中,包括:与IPv6网络相连的主机A101、NAT设备102、与IPv4网络相连的主机B103。
其中,主机A101中具有IPv4应用,当然主机A101中也可以具有IPv6应用。主机A101与IPv6网络相连,通过IPv6网络发送或接收数据包。
NAT设备102设置于IPv6网络与IPv4网络的边界处,用以将IPv6网络的数据包向IPv4网络转发,或者将IPv4网络的数据包向IPv6网络转发。
主机B103为具有IPv4应用的主机,其可以纯IPv4节点,也可以是具有IPv4/IPv6的双栈节点。主机B103通过IPv4网络接收IPv4数据包、并通过IPv4网络发送IPv4数据包。
主机A101通过IPv6网络与主机B103进行通信的过程如图2所示,包括如下步骤:
S201、主机A101根据IPv4应用发送的信息生成IPv4数据包。
主机A101根据IPv4应用需要发送给对端通信设备主机B103的信息,调用套接字API(Application Programming Interface,应用编程接口)函数(SocketAPI函数),并根据TCP(Transmission Control Protocol,传输控制协议)/UDP(User Datagram Protocol,用户数据报协议)/IP(Internet Protocol,互联网协议)v4协议生成IPv4数据包。
S202、主机A101将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送。
为了能够使生成的数据包能够在IPv6网络中传输,主机A101将生成的IPv4数据包的包头转换为IPv6数据包的包头。具体为,主机A101将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并且将包头中的本机和通信对端(主机B103)的IPv4地址转换为IPv6地址,而对于数据包的传输层头和数据部分都不进行转换。
地址转换的具体方法为:在主机A101中维护了一个保存了IPv4地址与IPv6地址对应关系的映射表;IPv4到IPv6地址间的转换分别采用了无状态的址翻译方式,实现主机向IPv6网络发送数据包的封装。其具体方法是在IPv4地址前增加96位的IPv6前缀,形成对应的IPv6地址,该IPv6前缀属于周知前缀(well-know prefix),可由网络运营商进行指定。根据该对应关系表将包头中的本机和通信对端的IPv4地址转换为对应的IPv6地址。
S203、NAT(Network Address Translation,网络地址翻译)设备102(具体可以是NAT64设备)接收主机A101发送的数据包。
NAT设备102通过IPv6网络接收到主机A101发送的数据包。
S204、NAT设备102将接收的数据包的包头转换为IPv4数据包的包头后,通过IPv4网络转发该数据包。
在NAT设备102中将接收的数据包的包头转换为IPv4数据包的包头时,将IPv6的前缀去掉,即可得到对应的IPv4地址。
NAT设备102在将接收的数据包的包头转换为IPv4数据包的包头后,通过IPv4网络转发该数据包。也就是说,NAT设备102不用对整个数据包进行转换,不必涉及对数据包的传输层头和数据部分进行转换,其只要对包头部分进行转换就可以得到IPv4数据包,从而通过IPv4网络转发该IPv4数据包。这样,相比于现有技术中设置于IPv6和IPv4网络边界的设备,对数据包的解析、转换工作大大减少了,减小了系统的处理负担,从而可以尽量避免单点失效。
S205、主机B103通过IPv4网络接收到NAT设备102转发的数据包。
主机B103通过IPv4网络接收到NAT设备102转发的数据包后,对IPv4数据包进行解析获得信息,并将获得的信息传送到主机B103的IPv4应用,主机B103的IPv4应用对接收的信息进行处理,或者返回信息。
之后,主机B103根据IPv4应用返回的信息生成IPv4数据包,并向主机A101返回数据包的过程与上述过程类似,为其逆过程:
S206、主机B103通过IPv4网络向主机A101返回IPv4数据包。
S207、NAT设备102将从IPv4网络接收的数据包的包头转换为IPv6数据包的包头后,通过IPv6网络转发该数据包。
具体为,NAT设备102将接收的主机B103通过IPv4网络发送的数据包的包头转换为IPv6数据包的包头。在NAT设备中可存储预先规定的IPv6前缀信息(即周知前缀),在IPv4地址的基础上增加周知前缀从而得到对应的IPv6地址。在NAT设备中存储的映射表中保存有IPv6地址和IPv4地址的对应关系。NAT设备102根据存储的映射表将包头中的IPv4地址换为对应的IPv6地址;之后,NAT设备102通过IPv6网络转发转换后的数据包。
S208、主机A101通过IPv6网络接收到数据包后,将数据包的包头转换为IPv4数据包的包头。
主机A101通过IPv6网络接收到数据包后,将数据包的包头转换为IPv4数据包的包头,从而获得IPv4数据包。在包头转换过程中,主机A101包头中的IPv6地址的前缀去掉从而得到对应的IPv4地址。
S209、主机A101将获得的IPv4数据包进行解析后得到的信息传递到IPv4应用。
主机A101对获得的IPv4数据包进行解析得到相关信息,并将得到的信息传送到IPv4应用进行处理。由此,实现两个IPv4应用通过IPv6网络的双向通信。
显然,应用上述方法也可以实现两个具有IPv4应用的主机直接通过IPv6网络进行通信,假设主机A101直接通过IPv6网络与具有IPv4应用的主机——主机C105进行通信,其具体步骤如图2b所示,包括如下步骤:
S221、主机A101根据IPv4应用发送的信息生成IPv4数据包。
主机A101根据IPv4应用需要发送给对端通信设备主机C105的信息,调用Socket API函数,并根据TCP/UDP/IPv4协议生成IPv4数据包。
S222、主机A101将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送。
为了能够使生成的数据包能够在IPv6网络中传输,主机A101将生成的IPv4数据包的包头转换为IPv6数据包的包头。具体为,主机A101将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并且将包头中的本机和通信对端(主机C105)的IPv4地址转换为IPv6地址,而对于数据包的传输层头和数据部分都不进行转换。转换方法与上述步骤S202所述,此处不再赘述。
S223、主机C105通过IPv6网络接收到主机A101发送的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包。
主机C105将接收的数据包进行包头转换的方法同上述步骤S204中NAT设备102转换的方法,此处不再赘述。
S224、主机C105得到IPv4数据包后,可以对IPv4数据包进行解析获取信息。
主机C105可以根据TCP/UDP/IPv4协议,并调用相关的Socket API函数,对IPv4数据包进行解析,从而获取信息发送给本机的IPv4应用。
S225、主机C105的IPv4应用也可以向主机A101的IPv4应用返回信息。
S226、主机C105根据IPv4应用返回的信息生成IPv4数据包。
S227、主机C105将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送。主机C105将生成的IPv4数据包的包头转换为IPv6数据包的包头的方法与主机A101相同,此处不再赘述。
S228、主机A101通过IPv6网络接收到主机C105返回的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包。
S229、主机A101得到IPv4数据包后,对IPv4数据包进行解析获取返回信息,将返回信息传递给IPv4应用。
此外,在现有技术中也没提出具有IPv4应用的主机如何通过IPv6网络获取IPv4网络中DNS(Domain Name System,域名系统)服务器的域名服务的解决方案,而本发明实施例进一步提供了具有IPv4应用的主机通过IPv6网络向IPv4网络中DNS服务器发送DNS请求获取对端通信设备IP地址的具体方法,在执行上述的通信过程之前,可以通过如图3所示的流程来获取对端通信设备的IP地址,具体包括如下步骤:
S301、主机A101的IPv4应用发起DNS请求。
假设主机A101的IPv4应用在与主机B103通信前,需要获取主机B103的IP地址,则主机A101的IPv4应用根据该需求发起DNS请求。
S302、主机A101根据IPv4应用发起的DNS请求生成基于IPv4的DNS请求报文。
S303、主机A101将生成的DNS请求报文的数据包包头转换为IPv6数据包包头后,通过IPv6网络发送。包头的转换方法与上述步骤S202相同,此处不再赘述。
由于,主机A101仅是将包头部分进行转换而没有对数据部分进行转换,因此,转换后的DNS请求报文依然是A类型的DNS请求报文,而不是IPv6网络中通常传输的基于IPv6的AAAA类型的DNS请求报文。
S304、NAT设备102接收主机A101发送的DNS请求报文后,将接收的DNS请求报文的数据包包头转换为IPv4数据包的包头。
包头的具体转换方法与上述步骤S204相同,此处不再赘述。在NAT设备102对DNS请求报文进行数据包包头转换后,DNS请求报文仍是A类型的DNS请求报文。
S305、NAT设备102将转换后的报文通过IPv4网络发送到DNS服务器104。
S306、DNS服务器104返回包含主机B103的IPv4地址的DNS回复信息。
S307、NAT设备102对DNS回复信息的数据包包头转换为IPv6数据包包头。具体的转换方法与上述步骤S207相同,此处不再赘述。
S308、NAT设备102将经过包头转换的DNS回复信息通过IPv6网络发送到主机A101。
S309、主机A101通过IPv6网络接收到DNS回复信息后,将接收的DNS回复信息的数据包包头转换为IPv4数据包包头,得到基于IPv4的DNS回复信息。
S310、主机A101对基于IPv4的DNS回复信息进行解析后将DNS回复传送给IPv4应用。IPv4应用可以根据DNS回复中的通信对端(主机B103)的IPv4地址向通信对端发送信息。
本领域技术人员可以理解,虽然上述说明中,为便于理解,对方法的步骤采用了顺序性描述,但是应当指出,对于上述步骤的顺序并不作严格限制。
上述主机A101中的内部框图,如图4所示,包括:数据包生成模块401、第一包头转换模块402、数据包发送模块403。
数据包生成模块401用于根据主机A101的IPv4应用向通信对端发送的信息生成IPv4数据包;
第一包头转换模块402用于将数据包生成模块401生成的IPv4数据包的包头转换为IPv6数据包的包头;
数据包发送模块403用于将第一包头转换模块402转换后的数据包通过IPv6网络发送。
主机A101还可以包括:数据包接收模块404、第二包头转换模块405、数据包解析模块406。
数据包接收模块404用于通过所述IPv6网络接收到通信对端返回的数据包;该返回的数据包具体是通信对端通过IPv4网络返回的、并经过NAT设备102进行包头转换的数据包(即将数据包包头转换为IPv6数据包包头的数据包)。
第二包头转换模块405用于将数据包接收模块404接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包;
数据包解析模块406用于解析第二包头转换模块405得到的IPv4数据包,获取所述通信对端返回的信息。
上述的数据包生成模块401以及数据包解析模块406具体是调用SocketAPI函数,并根据TCP/UDP/IPv4协议生成或解析数据包的;第一包头转换模块402、第二包头转换模块405进行包头转换的方法与上述方法步骤中介绍的相同,此处不再赘述。
本发明实施例由于主机将IPv4数据包的包头转换为IPv6数据包的包头,使得该数据包可以通过IPv6网络传输,并且不必涉及对传输层头和数据部分进行转换,大大减少了系统的处理负担。
进一步,由于在IPv6与IPv4网络的边界处设置的NAT设备将数据包的包头又转换回IPv4数据包的包头,从而形成完整的IPv4数据包,使之可以通过IPv4网络发送到IPv4网络中的IPv4节点或者具有IPv4应用的主机。而NAT设备仅是对数据包的包头部分进行转换,而不必涉及对传输层头和数据部分进行转换,大大减少了系统的处理负担,使得单点失效发生的概率下降。
并且,本发明实施例还提供了IPv4应用通过IPv6网络获取IPv4网络中DNS服务器的域名服务的方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读取存储介质中,如:ROM/RAM、磁碟、光盘等。
还可以理解的是,附图或实施例中所示的装置结构仅仅是示意性的,表示逻辑结构。其中作为分离部件显示的模块可能是或者可能不是物理上分开的,作为模块显示的部件可能是或者可能不是物理模块。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种具有IPv4应用的主机通过IPv6网络进行通信的方法,其特征在于,包括:
所述主机根据第4版本互联网协议IPv4应用向通信对端发送的信息生成IPv4数据包;并将生成的IPv4数据包的包头转换为第6版本互联网协议IPv6数据包的包头后,通过IPv6网络发送,所述将生成的IPv4数据包的包头转换为第6版本互联网协议IPv6数据包的包头是指将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并将包头中的本机和通信对端的IPv4地址转换为IPv6地址;
网络地址翻译NAT设备通过所述IPv6网络接收到所述主机发送的数据包;并将接收的数据包的包头转换为IPv4数据包的包头后,通过IPv4网络转发;
所述通信对端通过所述IPv4网络接收到所述NAT设备转发的数据包,解析该数据包获取所述主机发送的信息。
2.如权利要求1所述的方法,其特征在于,在所述通信对端通过所述IPv4网络接收到所述NAT设备转发的数据包后,还包括:
所述通信对端通过IPv4网络向所述主机返回IPv4数据包;
所述NAT设备通过所述IPv4网络接收到返回的IPv4数据包后,将该数据包的包头转换为IPv6数据包的包头后,通过IPv6网络转发;
所述主机通过所述IPv6网络接收到所述NAT设备转发的数据包后,将接收的数据包的包头转换为IPv4数据包的包头后得到IPv4数据包,解析该IPv4数据包获取所述通信对端返回的信息。
3.如权利要求1所述的方法,其特征在于,在所述主机根据IPv4应用向通信对端发送的信息生成IPv4数据包之前,还包括:
所述主机的IPv4应用为获取所述通信对端的地址发起域名服务系统DNS请求;
所述主机根据所述DNS请求生成基于IPv4的DNS请求报文;并将该DNS请求报文的数据包包头转换为IPv6数据包包头后,通过IPv6网络发送;
所述NAT设备通过所述IPv6网络接收到所述主机发送的报文;并将接收的DNS请求报文的数据包包头转换为IPv4数据包的包头后通过IPv4网络发送到DNS服务器;
所述NAT设备接收所述DNS服务器返回的DNS回复信息;并将DNS回复信息的数据包包头转换为IPv6数据包包头后,通过IPv6网络向所述主机转发;
所述主机通过IPv6网络接收到转发的DNS回复信息后,将接收的DNS回复信息的数据包包头转换为IPv4数据包包头,得到基于IPv4的DNS回复信息,解析所述基于IPv4的DNS回复信息得到所述通信对端的地址。
4.一种具有IPv4应用的主机通过IPv6网络进行通信的系统,其特征在于,包括:
第一主机,用于根据本机的IPv4应用向第二主机发送的信息生成IPv4数据包;并将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送,所述将生成的IPv4数据包的包头转换为第6版本互联网协议IPv6数据包的包头是指将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并将包头中的本机和通信对端的IPv4地址转换为IPv6地址;
NAT设备,用于通过所述IPv6网络接收所述第一主机发送的数据包;并将接收的数据包的包头转换为IPv4数据包的包头后,通过IPv4网络转发;
第二主机,用于通过所述IPv4网络接收所述NAT设备转发的数据包,并解析该数据包获取所述第一主机发送的信息。
5.如权利要求4所述的系统,其特征在于,
所述第二主机还用于通过IPv4网络向所述主机返回IPv4数据包;以及
所述NAT设备还用于通过所述IPv4网络接收返回的IPv4数据包;并将该数据包的包头转换为IPv6数据包的包头后,通过IPv6网络转发;以及
所述第一主机还用于通过所述IPv6网络接收到所述NAT设备转发的数据包后,将接收的数据包的包头转换为IPv4数据包的包头后得到IPv4数据包,解析该IPv4数据包获取所述第二主机返回的信息。
6.如权利要求4所述的系统,其特征在于,还包括:DNS服务器;以及
所述第一主机还用于在本机IPv4应用为获取所述通信对端的地址发起DNS请求后,根据所述DNS请求生成基于IPv4的DNS请求报文;并将该DNS请求报文的数据包包头转换为IPv6数据包包头后,通过IPv6网络发送;以及
所述NAT设备还用于通过所述IPv6网络接收到所述第一主机发送的报文;并将接收的DNS请求报文的数据包包头转换为IPv4数据包的包头后通过IPv4网络发送到所述DNS服务器;以及所述NAT设备接收所述DNS服务器返回的DNS回复信息,并将DNS回复信息的数据包包头转换为IPv6数据包包头后,通过IPv6网络向所述第一主机转发;
所述第一主机通过IPv6网络接收到转发的DNS回复信息后,将接收的DNS回复信息的数据包包头转换为IPv4数据包包头,得到基于IPv4的DNS回复信息,解析所述基于IPv4的DNS回复信息得到所述第二主机的地址。
7.一种具有IP v4应用的主机通过IP v6网络进行通信的方法,其特征在于,包括:
第一主机根据本机的IPv4应用向第二主机发送的信息生成IPv4数据包;并将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送,所述将生成的IPv4数据包的包头转换为IPv6数据包的包头是指将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并将包头中的本机和通信对端的IPv4地址转换为IPv6地址;
所述第二主机通过所述IPv6网络接收到所述第一主机发送的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包,并解析该IPv4数据包获取所述第一主机的IPv4应用发送的信息。
8.如权利要求7所述的方法,其特征在于,在所述第二主机获取所述第一主机的IPv4应用发送的信息后,还包括:
第二主机根据本机的IPv4应用向所述第一主机返回的信息生成IPv4数据包,并将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送;
所述第一主机通过所述IPv6网络接收到所述第二主机返回的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包,并解析该IPv4数据包获取所述第二主机的IPv4应用发送的信息。
9.如权利要求7或8所述的方法,其特征在于,所述将生成的IPv4数据包的包头转换为IPv6数据包的包头,具体包括:
将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并且将包头中的本机和通信对端的IPv4地址转换为对应的IPv6地址。
10.一种具有IP v4应用的主机通过IP v6网络进行通信的系统,其特征在于,包括:
第一主机,用于根据本机的IPv4应用向第二主机发送的信息生成IPv4数据包;并将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送,所述将生成的IPv4数据包的包头转换为IPv6数据包的包头是指将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并将包头中的本机和通信对端的IPv4地址转换为IPv6地址;
第二主机,用于通过所述IPv6网络接收到所述第一主机发送的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包,并解析该IPv4数据包获取所述第一主机的IPv4应用发送的信息。
11.如权利要求10所述的系统,其特征在于,
所述第二主机还用于根据本机的IPv4应用向所述第一主机返回的信息生成IPv4数据包,并将生成的IPv4数据包的包头转换为IPv6数据包的包头后,通过IPv6网络发送;以及
所述第一主机还用于通过所述IPv6网络接收到所述第二主机返回的数据包后,将接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包,并解析该IPv4数据包获取所述第二主机的IPv4应用发送的信息。
12.一种基于IPv4应用的主机,其特征在于,包括:
数据包生成模块,用于根据IPv4应用向通信对端发送的信息生成IPv4数据包;
第一包头转换模块,用于将生成的IPv4数据包的包头转换为IPv6数据包的包头,所述将生成的IPv4数据包的包头转换为IPv6数据包的包头是指将生成的IPv4数据包包头的格式转换为IPv6数据包的包头格式,并将包头中的本机和通信对端的IPv4地址转换为IPv6地址;
数据包发送模块,用于将所述第一包头转换模块转换后的数据包通过IPv6网络发送。
13.如权利要求12所述的主机,其特征在于,还包括:
数据包接收模块,用于通过所述IPv6网络接收到通信对端返回的数据包;
第二包头转换模块,用于将所述数据包接收模块接收的数据包的包头转换为IPv4数据包的包头,得到IPv4数据包;
数据包解析模块,用于解析该IPv4数据包获取所述通信对端返回的信息。
14.如权利要求12或13所述的主机,其特征在于,所述数据包生成模块生成的IPv4数据包具体为基于IPv4的DNS请求报文;以及所述通信对端具体为DNS服务器。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100858878A CN101909042B (zh) | 2009-06-03 | 2009-06-03 | 具有IPv4应用的主机通过IPv6网络进行通信的方法和系统 |
US13/375,969 US8909812B2 (en) | 2009-06-03 | 2010-06-03 | Method and device for communication for host device with IPv4 application |
PCT/CN2010/000793 WO2010139194A1 (zh) | 2009-06-03 | 2010-06-03 | 具有IPv4应用的主机进行通信的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100858878A CN101909042B (zh) | 2009-06-03 | 2009-06-03 | 具有IPv4应用的主机通过IPv6网络进行通信的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101909042A CN101909042A (zh) | 2010-12-08 |
CN101909042B true CN101909042B (zh) | 2012-12-26 |
Family
ID=43264361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100858878A Active CN101909042B (zh) | 2009-06-03 | 2009-06-03 | 具有IPv4应用的主机通过IPv6网络进行通信的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101909042B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107251517B (zh) | 2015-03-13 | 2020-10-16 | 华为技术有限公司 | 接入网系统、处理数据包的方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1505792A2 (en) * | 2003-08-07 | 2005-02-09 | Sharp Kabushiki Kaisha | Apparatus and methods for providing communication between systems having different protocol versions |
CN1578296A (zh) * | 2003-07-29 | 2005-02-09 | 华为技术有限公司 | 双栈过渡的实现方法 |
CN1716954A (zh) * | 2005-05-27 | 2006-01-04 | 清华大学 | 基于过渡机制的IPv6网和IPv4网间互通的方法 |
-
2009
- 2009-06-03 CN CN2009100858878A patent/CN101909042B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1578296A (zh) * | 2003-07-29 | 2005-02-09 | 华为技术有限公司 | 双栈过渡的实现方法 |
EP1505792A2 (en) * | 2003-08-07 | 2005-02-09 | Sharp Kabushiki Kaisha | Apparatus and methods for providing communication between systems having different protocol versions |
CN1716954A (zh) * | 2005-05-27 | 2006-01-04 | 清华大学 | 基于过渡机制的IPv6网和IPv4网间互通的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101909042A (zh) | 2010-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101447935B (zh) | 数据包转发方法、系统及设备 | |
US8909812B2 (en) | Method and device for communication for host device with IPv4 application | |
JP3531367B2 (ja) | トランスレータ | |
KR101785760B1 (ko) | 사설 ipv4 도달가능성으로 ds-라이트 향상을 위한 방법 및 네트워크 요소 | |
CN1711739B (zh) | 支持穿过网络地址转换机制的 6to4 遂道协议的方法和设备 | |
CN101931658B (zh) | 具有IPv4应用的IPv6主机进行通信的方法与装置 | |
US20050117605A1 (en) | Network address and port translation gateway with real-time media channel management | |
US20030193965A1 (en) | Packet communication method and apparatus and a recording medium storing a packet communication program | |
CN101552848B (zh) | 一种基于会话初始协议的会话方法及设备 | |
US20020181500A1 (en) | Packet communication method and apparatus and a recording medium storing a packet communication program | |
CA2884683C (en) | Split network address translation | |
US20060146870A1 (en) | Transparent communication with IPv4 private address spaces using IPv6 | |
JP2006050626A (ja) | ネットワークアドレス変換方法および装置 | |
CN103236964B (zh) | 基于Linux的DS-Lite实现方法及其CPE接入设备 | |
JP2005236824A (ja) | IPv6/IPv4トランスレータ | |
CN101848247A (zh) | 实现IPv6主机访问IPv4主机的方法、获取IPv6地址前缀的方法和转换装置 | |
CN102143241B (zh) | 主机间的访问方法、设备及系统 | |
US7764686B1 (en) | Migration to IPv6 using combination of globally significant and locally significant IPv4 addresses | |
CN102387221B (zh) | 一种数据转发方法及系统 | |
CN1870633B (zh) | 通过双栈移动IPv6节点支持移动IPv4的方法 | |
CN114301867A (zh) | 增强纯IPv6 SIP客户端与纯IPv4服务器或客户端之间的通信的方法和系统 | |
Jayanthi et al. | Transition and mobility management in the integrated IPv4 and IPv6 network-A systematic review | |
CN101909042B (zh) | 具有IPv4应用的主机通过IPv6网络进行通信的方法和系统 | |
CN101909041A (zh) | 具有IPv4应用的主机通过IPv6网络进行通信的方法和系统 | |
CN102238084B (zh) | 一种跨域报文的转发方法、装置、路由设备和客户端 |
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 |