CN101938531A - 一种IPv4网络与IPv6网络通信的方法、系统及装置 - Google Patents
一种IPv4网络与IPv6网络通信的方法、系统及装置 Download PDFInfo
- Publication number
- CN101938531A CN101938531A CN2010102827383A CN201010282738A CN101938531A CN 101938531 A CN101938531 A CN 101938531A CN 2010102827383 A CN2010102827383 A CN 2010102827383A CN 201010282738 A CN201010282738 A CN 201010282738A CN 101938531 A CN101938531 A CN 101938531A
- Authority
- CN
- China
- Prior art keywords
- address information
- ipv4
- message
- ipv6
- isatap
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种IPv4网络和IPv6网络通信的方法、系统及装置,用以解决现有技术中由于NAT导致ISATAP主机无法通过ISATAP隧道和IPv6主机无法通信的问题。该方法ISATAP主机获取自身被分配的公网的IPv4地址,并生成IPv6头的源地址信息,将报文封装并发送到IPv6主机。由于在本发明实施例中ISATAP主机发送报文中的IPv6头的源地址信息,根据自身被分配的公网的IPv4地址生成,当ISATAP路由器接收到IPv6主机返回的应答报文时,封装的报文的IPv4头的目的地址为ISATAP主机被分配的公网IPv4地址,从而能够正确的将应答报文发送给ISATAP主机所在网络,从而可以实现应答报文的正常发送。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种因特网协议版本4(InternetProtocol version 4,IPv4)网络与因特网协议版本6(Internet Protocol Version 6,IPv6)网络通信的方法、系统及装置。
背景技术
IPv6是对IPv4的继承和取代,但在IPv6完全取IPv4之前,两种协议存在一个共存时期。在这个共存时期内IPv4网络仍然是主要的网络,IPv6网络部署在IPv4网络之间类似于IPv4网络中的孤岛。目前IPv6网络之间透过IPv4网络进行通信主要采用隧道技术。站内自动隧道寻址协议(Intra-Site AutomaticTunnel Addressing Protocol,ISATAP)便是一种实现IPv6网络跨越IPv4网络的隧道技术。
子网前缀 | 00005EFE | IPv4地址 |
表1
ISATAP隧道中的IPv6地址信息的格式如表1所示,其中子网前缀为64位,00005EFE为32位的ISATAP隧道标志,IPv4地址为32位,其作用为使得ISATAP路由器在通过隧道转发IPv6网络的报文时能够知道目的主机的IPv4地址,进而能够将报文通过ISATAP隧道发送给ISATAP主机。
IPv4头 | IPv6头 | 数据 |
表2
ISATAP隧道视IPv4网络为IPv6网络的一个链路层,在该ISATAP隧道内,通过IPv4报文来承载IPv6报文。表2为ISATAP隧道内报文的格式,ISATAP隧道内的报文包括IPv4头、IPv6头和数据。ISATAP路由器转发报文给ISATAP主机时,IPv4头的目的地址信息为IPv6头的目的地址的最低32位。
目前ISATAP主机(也称为IPv4主机)通过ISATAP隧道与IPv6主机通信之前,ISATAP主机即ISATAP主机需要首先从ISATAP路由器获取子网前缀,当获取子网前缀后,才能根据该子网前缀生成ISATAP隧道中的IPv6地址。图1为现有技术中ISATAP主机获取子网前缀后与IPv6主机的通信过程,该过程包括以下步骤:
S101:ISATAP主机(IPv4主机)向IPv6主机发送封装后的报文,该报文包括内层的IPv6头和外层的IPv4头。
IPv6头的源地址信息为ISATAP主机的全局IPv6地址,目的地址信息为IPv6主机的IPv6地址。IPv4头的源地址信息为ISATAP主机的IPv4地址,目的地址信息为ISATAP路由器的IPv4地址。
S102:由于报文在IPv4网络中传输,该报文中IPv4头的目的地址信息为ISATAP路由器的IPv4地址,因此IPv4网络中的路由转发设备将该报文路由到该IPv4头的目的地址对应的ISATAP路由器。
S103:ISATAP路由器接收到该报文后,对该报文接封装,即剥去IPv4头,根据IPv6头的目的地址信息进行选路,将该报文路由到IPv6网络。
S104:IPv6网络的路由器根据该报文IPv6头的目的地址信息进行选路,将该报文发送到该IPv6头的目的地址信息对应的IPv6主机。
S105:IPv6主机收到报文后,对该报文进行处理并发送应答报文。
该应答报文包括IPv6头和数据信息,其中该IPv6头中源地址信息和目的地址信息根据接收的报文IPv6头的目的地址信息和源地址信息确定,该应答报文IPv6头中源地址信息为IPv6主机的IPv6地址,目的地址信息为ISATAP主机的全局IPv6地址。
S106:IPv6网络中的路由器根据应答报文中IPv6头的目的地址信息进行选路,将该应答报文路由到ISATAP路由器。
S107:ISATAP路由器接收到该应答报文后,从该应答报文的IPv6头的目的地址中提取IPv4头的目的地址,获取该应答报文的IPv4头的目的地址,该报文封装为符合ISATAP隧道的报文格式,将该封装后的报文在ISATAP隧道中发送到ISATAP主机所在的IPv4网络。
ISATAP路由器收到该应答报文后,根据选路确定该应答报文需要通过ISATAP隧道发送,ISATAP路由器将应答报文IPv6头目的地址信息的最后32位作为IPv4头的目的地址信息,该IPv4头的目的地址信息即为ISATAP主机的IPv4地址,源地址为ISATAP路由器的IPv4地址。
S108:IPv4网络的路由器接收到封装后的应答报文后,根据该封装后的应答报文的IPv4头的目的地址信息进行选路,将该封装后的应答报文发送到对应地址信息的ISATAP主机。
通过上述过程可以实现IPv4网络和IPv6网络的通信。ISATAP主机通过ISATAP隧道与IPv6主机交互的过程中,由于ISATAP主机处于一个私有网络中,ISATAP主机在与外界通信的出口网关设备上进行网络地址转换(NetworkAddress Translation,NAT)。
而出口网关设备位于ISATAP主机与ISATAP路由器通信的过程中,当出口网关设备接收到ISATAP主机发送的报文时,对该报文进行NAT,将该报文的IPv4头的源地址转换为该ISATAP主机被分配的公网的IPv4地址,并将该转换后的报文通过公网发送。由于在ISATAP路由器接收到IPv6主机发送的应答报文,对该应答报文封装IPv4头时,从该应答报文的IPv6头的目的地址信息的最后32位中提取IPv4头的目的地址信息,该目的地址信息为ISATAP主机的IPv4地址,而该目的地址信息为ISATAP主机的私网IPv4地址。因此在ISATAP路由器发送该封装后的应答报文时,由于首先需要通过公网发送到出口网关设备,但是由于公网中不存在目的地址信息为ISATAP主机的IPv4地址,因此将会导致该应答报文无法送到ISATAP主机,从而无法实现IPv4网络和IPv6网络的通信。
发明内容
有鉴于此,本发明实施例提供一种IPv4网络和IPv6网络通信的方法、系统及装置,用以解决现有技术中由于NAT导致ISATAP主机无法通过ISATAP隧道和IPv6主机无法通信的问题。
本发明实施例提供的一种IPv4网络和IPv6网络通信的方法,包括:
自动隧道寻址协议ISATAP主机获取自身被分配的公网的IPv4地址信息;
根据获取的所述自身被分配的公网的IPv4地址及获取的子网前缀生成IPv6头的源地址信息;
生成IPv6头的目的地址信息,并生成IPv4头的源地址信息和目的地址信息;
按照ISATAP隧道内报文的格式对生成的IPv4头的信息和IPv6头的信息进行报文的封装,将封装后的报文通过ISATAP路由器发送到IPv6主机。
本发明实施例提供的一种IPv4网络和IPv6网络通信的装置,包括:
获取模块,用于获取自身被分配的公网的IPv4地址信息;
生成模块,用于生成IPv6头的目的地址信息、IPv4头的源地址信息和目的地址信息,并根据获取的所述自身被分配的公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息;
封装发送模块,用于按照ISATAP隧道内报文的格式对生成的IPv4头的信息和IPv6头的信息进行报文的封装,将封装后的报文通过ISATAP路由器发送到IPv6主机。
本发明实施例提供的一种IPv4网络和IPv6网络通信的系统,包括上述装置、接收该装置发送的报文,并将该报文发送到IPv6主机的ISATAP路由器,及接收ISATAP路由器发送的报文的IPv6主机。
本发明实施例一种IPv4网络与IPv6网络通信的方法、系统及装置,该方法中,ISATAP主机获取自身被分配的公网的IPv4地址信息,根据获取的公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息,生成IPv6头的目的地址信息,并生成IPv4头的源地址信息和目的地址信息,将报文封装并发送到IPv6主机。由于在本发明实施例中ISATAP主机向IPv6主机发送的报文中的IPv6头的源地址信息,根据自身被分配的公网的IPv4地址生成,因此当在ISATAP路由器接收到IPv6主机返回的应答报文时,ISATAP路由器封装的应答报文的IPv4头的目的地址为ISATAP主机被分配的公网IPv4地址,因此能够正确的将应答报文发送给ISATAP主机所在网络的出口网关,出口网关经过NAT后将报文转发给ISATAP主机,从而可以实现应答报文的正常发送。
附图说明
图1为现有技术中ISATAP主机获取子网前缀后与IPv6主机的通信过程;
图2为本发明实施例提供的IPv4网络与IPv6网络通信的过程;
图3为本发明实施例提供的ISATAP主机与IPv6主机进行通信的过程;
图4为本发明实施例提供的IPv6主机根据接收的ISATAP主机发送的报文向ISATAP主机返回应答报文的过程;
图5为本发明实施例提供的在IPv4网络和IPv6网络通信的过程中,获取子网前缀的过程;
图6为本发明实施例提供的一种IPv4网络与IPv6网络通信的装置结构示意图;
图7为本发明实施例提供的一种IPv4网络与IPv6网络通信的系统结构示意图。
具体实施方式
本发明实施例为了有效的解决NAT转换导致ISATAP主机无法通过ISATAP隧道和IPv6主机进行通信的问题,提供了一种IPv4网络与IPv6网络通信的方法,该方法中,ISATAP主机获取自身被分配的公网的IPv4地址信息,并根据该公网的IPv4地址信息生成IPv6头的源地址信息,按照ISATAP隧道内报文的格式将报文封装并发送到IPv6主机。由于在本发明实施例中ISATAP主机向IPv6主机发送的报文中的IPv6头的源地址信息根据自身被分配的公网的IPv4地址信息生成,因此当在ISATAP路由器接收到IPv6主机返回的应答报文时,能够针对该应答报文封装IPv4头的目的地址信息,从而可以实现应答报文的正常发送。
下面结合说明书附图,对本发明实施例进行详细说明。
图2为本发明实施例提供的IPv4网络与IPv6网络通信的过程,该过程包括以下步骤:
S201:ISATAP主机获取自身被分配的公网的IPv4地址信息。
具体的ISATAP主机获取自身被分配的公网的IPv4地址信息包括:所述ISATAP主机根据自身保存的配置文件信息,获取自身被分配的公网的IPv4地址信息;或,
所述ISATAP主机向公共服务器发送获取自身被分配的公网的IPv4地址信息的请求,并接收公共服务器返回的被分配的公网的IPv4地址信息。
S202:根据获取的所述公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息。
本发明实施例中生成IPv6头的源地址信息包括:
根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成IPv6头的第一源地址信息,采用获取的所述自身被分配的公网的IPv4地址信息修改所述IPv6头的第一源地址信息中的最后32位并作为生成的IPv6头的源地址信息;或,
根据获取的所述自身被分配的公网的IPv4地址信息,修改自身的全局IPv6地址的最后32位,其中所述全局IPv6地址根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成,根据修改后的自身的全局IPv6地址生成IPv6头的源地址信息。
S203:ISATAP主机生成IPv6头的目的地址信息,并生成IPv4头的源地址信息和目的地址信息。
具体的,ISATAP主机根据待访问的IPv6主机的IPv6地址生成IPv6头的目的地址信息。
根据自身的IPv4地址信息,及ISATAP路由器的IPv4地址信息生成IPv4头的源地址信息和目的地址信息。
S204:按照ISATAP隧道内报文的格式对生成的IPv4头的信息和IPv6的信息进行报文的封装,并将封装后报文通过ISATAP路由器发送到IPv6主机。
在本发明实施例中ISATAP主机获取自身被分配的公网的IPv4地址信息的过程,可以通过静态方式获取,也可以通过动态方式获取。静态方式即该ISATAP主机自身被分配的公网的IPv4地址信息可以保存在配置文件中,而该配置文件可以保存在ISATAP主机中,当该ISATAP主机需要与IPv6主机通信时,根据保存的配置文件,获取自身被分配的公网的IPv4地址信息。动态方式即ISATAP主机需要与IPv6主机通信时,通过向公共服务器发送查询自身被分配的公网的IPv4地址信息的请求,从公共服务器获取自身被分配的公网的IPv4地址信息。
ISATAP主机的全局IPv6地址根据自身的私网IPv4地址信息,及获取的子网前缀生成,满足表1所示的IPv6地址信息的格式。ISATAP主机与IPv6主机进行通信的过程中,发送的报文中的IPv6头的源地址信息,根据ISATAP主机的全局IPv6地址生成。因此在本发明实施例中为了保证IPv4网络与IPv6网络的正常通信,ISATAP主机采用获取的自身被分配的公网的IPv4地址信息,修改自身的全局IPv6地址的最后32位,具体的即将自身的全局IPv6地址中的自身私网的IPv4地址修改为自身被分配的公网的IPv4地址。因此在ISATAP主机生成IPv6头的源地址信息,可以认为该IPv6头的源地址信息根据ISATAP主机获取的自身被分配的公网的IPv4地址生成。
例如,ISATAP主机私网的IPv4地址为160.160.163.10,获取的子网前缀为3000,则生成的该ISATAP主机的全局IPv6地址为3000::5EFE:A0A0:A30A,其中A0A0:A30A为160.160.163.10的16进制表示。当ISATAP主机获取了自身被分配的公网的IPv4地址160.6.6.2后,采用自身被分配的公网的IPv4地址修改自身的全局IPv6地址的最后32位,即修改A0A0:A30A部分,将自身的全局IPv6地址修改为3000::5EFE:A006:0602,其中A006:0602为160.6.6.2的16进制表示。
在本发明实施例中由于ISATAP主机采用获取的自身被分配的公网的IPv4地址,修改自身的全局IPv6地址的最后32位,因此该ISATAP主机的全局IPv6地址的最后32位为该ISATAP主机自身被分配的公网的IPv4地址。而由于ISATAP主机在生成IPv4头的源地址信息时,根据自身的全局IPv6地址的最后32位生成。在本发明实施例中为了保证封装后的报文能够准确的发送到IPv6主机,ISATAP主机在生成IPv4头的源地址信息时,根据自身的私网IPv4地址生成IPv4头的源地址信息,具体的为:ISATAP主机获取到自身的全局IPv6地址时,获取自身的全局IPv6地址的最后32位,采用自身的私网的IPv4地址替换该最后32位,生成IPv4头的源地址信息。
另外,在本发明实施例中当ISATAP主机生成IPv6头的源地址信息时,也可以直接根据获取的自身被分配的公网的IPv4地址信息生成。具体的,ISATAP主机根据自身的私网IPv4地址,及获取的子网前缀生成IPv6头的第一源地址信息,采用获取的自身被分配的公网的IPv4地址修改该IPv6头的第一源地址信息中的最后32位并作为生成的IPv6头的源地址信息。具体的例如该ISATAP主机私网的IPv4地址为160.160.163.10,获取的子网前缀为3000,则生成的IPv6头的第一源地址信息为3000::5EFE:A0A0:A30A,ISATAP主机获取的自身被分配的公网的IPv4地址为160.6.6.2,采用该自身被分配的公网的IPv4地址信息,修改该第一源地址信息的最后32位后,得到的IPv6头的源地址信息为3000::5EFE:A006:0602,其中A006:0602为160.6.6.2的16进制表示。
由于在本发明的上述实施例中,ISATAP主机封装的报文中,该报文的IPv6头的源地址信息根据该ISATAP主机被分配的公网的IPv4地址信息,及获取的子网前缀生成的。下面对本发明的具体实施例进行详细说明,具体的,例如ISATAP主机的私网IPv4地址为10.0.0.10,为该ISATAP主机分配的公网的IPv4地址为160.6.6.2,获取的子网前缀为3000,ISATAP路由器的IPv4地址为160.160.160.1,IPv6主机的IPv6地址为5000:2000::2。图3为结合上述各个信息进行的ISATAP主机与IPv6主机进行通信的过程,该过程包括以下步骤:
S301:ISATAP主机根据自身被分配的公网IPv4地址信息,及获取的子网前缀生成IPv6头的源地址信息3000::5EFE:A006:0602,根据待通信的IPv6主机的IPv6地址生成IPv6头的目的地址信息5000:2000::2。
具体的例如,ISATAP主机根据自身的私网IPv4地址,及获取的子网前缀生成IPv6头的第一源地址信息,采用获取的自身被分配的公网的IPv4地址修改该IPv6头的第一源地址信息中的最后32位并作为生成的IPv6头的源地址信息。
S302:ISATAP主机根据自身的IPv4地址信息,及ISATAP路由器的IPv4地址信息,生成IPv4头的源地址信息10.0.0.10和目的地址信息160.160.160.1,将IPv4头的信息和IPv6头的信息封装在报文中向IPv6主机发送。
S303:该报文在ISATAP隧道传输,当发送到出口网关设备时,出口网关设备对该报文进行NAT,将该报文的IPv4头的源地址信息转换为该ISATAP主机被分配的公网的IPv4地址,并将该源地址转换后的报文发送到公网。
即在将该报文中的IPv4头的源地址中ISATAP主机自身的IPv4地址10.0.0.10转换为该ISATAP主机被分配的公网的IPv4地址160.6.6.2。
S304:在公网中,路由器根据该报文的IPv4头的目的地址信息,将该报文转发到对应目的地址信息的ISATAP路由器。
S305:ISATAP路由器接收到该报文后,对该报文解封装,剥去IPv4头得到IPv6报文,根据该报文中IPv6头的目的地址信息,将该报文转发到对应目的地址信息的IPv6主机。
当IPv6主机接收到该报文后,对该报文进行处理,并向ISATAP主机发送应答报文。图4为本发明实施例提供的,依据上述图3中的各个步骤,当IPv6主机接收到ISATAP主机发送的报文后,IPv6主机根据接收的ISATAP主机发送的报文向ISATAP主机返回应答报文的过程,该过程包括以下步骤:
S401:IPv6主机根据接收的报文的IPv6头的源地址信息,及自身的IPv6地址信息生成应答报文IPv6头的目的地址信息及源地址信息,将该数据封装在应答报文中发送到IPv6网络。
S402:IPv6网络的路由器根据该应答报文的IPv6头的目的地址信息进行选路,将该应答报文路由到ISATAP路由器。
S403:ISATAP路由器接收到该应答报文后,从该应答报文的IPv6头的目的地址信息中提取IPv4头的目的地址,该报文封装在ISATAP隧道中并发送到ISATAP主机所在的IPv4网络。
即获取该应答报文IPv6头目的地址信息的最后32位作为IPv4头的目的地址信息,由于该应答报文IPv6头的目的地址信息为ISATAP主机发送的报文的IPv6头的源地址信息,因此可知该应答报文IPv6头目的地址信息为根据该ISATAP主机被分配的公网的IPv4地址生成的,从而可知IPv6头目的地址为该ISATAP主机被分配的公网的IPv4地址信息,因此可知该应答报文IPv4头的目的地址信息为该ISATAP主机被分配的公网的IPv4地址。该应答报文中IPv4头的源地址信息为ISATAP路由器自身的IPv4地址信息。
S404:在公网中,路由器根据接收到的封装后的应答报文,根据该应答报文IPv4头的目的地址信息进行选路,将该封装后的应答报文路由到对应的目的地址信息的出口网关设备。
在本发明实施例中一台出口网关设备与多台ISATAP主机连接,在出口网关设备上为每台ISATAP主机分配对应的公网IPv4地址。并且在每台路由器中保存有每台出口网关设备为每台ISATAP主机分配的公网IPv4地址,因此当路由器接收到相应公网IPv4地址的应答报文后,可以根据该应答报文的IPv4头的目的地址信息,将该报文路由到相应目的地址信息的出口网关设备上。
S405:出口网关设备接收到该应答报文后,根据该应答报文IPv4头的目的地址信息,确定该目的地址信息对应的私网IPv4地址。
在本发明实施例中可能存在多台ISATAP主机与同一台出口网关设备连接的情况,出口网关设备具有NAT功能,为每台ISATAP主机分配了一个公网的IPv4地址。因此当出口网关设备接收到该应答报文后,根据该应答报文的IPv4头的目的地址信息,可以将该目的地址信息转换为私网的IPv4地址信息。
S406:出口网关设备将转换后的应答报文发送到IPv4私网中,私网中的路由器根据该应答报文IPv4头的目的地址信息,将该应答报文发送到对应目的地址信息对应的ISATAP主机。
S407:ISATAP主机接收到该应答报文后,将该应答报文IPv6头的目的地址信息的最后32位修改为自身的私网的IPv4地址,并将修改后的应答报文传递给应用协议。
由于在本发明实施中IPv6主机接收到的报文中IPv6头的源地址信息根据ISATAP主机被分配的公网的IPv4地址生成,IPv6主机接收到该报文并进行应答报文的发送时,该应答报文的IPv6头的目的地址信息根据该接收的报文的IPv6头的源地址信息确定。因此当IPv6主机将该应答报文发送到ISATAP路由器时,该ISATAP路由器可以根据应答报文IPv6头的目的地址信息获取IPv4头的目的地址信息,该目的地址信息为ISATAP主机被分配的公网的IPv4地址信息,从而可以使该应答报文在公网中发送到对应的出口网关设备,并在出口网关设备进行公网IPv4地址和私网IPv4地址的转换后,可以将该应答报文通过私网发送到对应的ISATAP主机上。
当该ISATAP主机接收到该应答报文后,由于该应答报文IPv6头的目的地址信息为ISATAP主机发送的报文的IPv6头的源地址信息,此时ISATAP主机需要将应答报文IPv6头的目的地址信息中的最后32位修改为自身被分配的私网的IPv4地址,并将修改后的应答报文传递给应用协议。
另外,本发明实施例为了克服ISATAP主机与ISATAP路由器进行信息交互获取子网前缀的过程中,导致的报文无法送达,从而影响ISATAP主机与IPv6主机通信的问题,也提供了相应的实现方案。
图5为本发明实施例提供的在IPv4网络和IPv6网络通信的过程中,获取子网前缀的过程,该过程包括以下步骤:
S501:ISATAP主机向ISATAP路由器发起路由器请求(Router Solicitation,RS)报文,请求分配子网前缀,该RS报文中封装的IPv6头的源地址信息根据该ISATAP主机被分配的公网IPv4地址生成。
该RS报文中封装有IPv4头、IPv6头以及数据,该RS报文中封装的IPv4头的源地址信息为该ISATAP主机自身的IPv4地址,IPv4头的目的地址信息为ISATAP路由器的IPv4地址。该RS报文中封装的IPv6头的源地址信息根据为该ISATAP主机分配的公网的IPv4地址生成,该IPv6头的目的地址信息为ISATAP路由器的链路本地地址。
RS报文的IPv6头的源地址信息生成包括:ISATAP主机根据自身的私网IPv4地址信息,及获取的子网前缀生成IPv6头的第一源地址信息,采用获取的所述自身被分配的公网的IPv4地址信息修改所述IPv6头的第一源地址信息中的最后32位并作为生成RS报文的IPv6头的源地址信息;或,
根据获取的所述自身被分配的公网的IPv4地址信息,修改自身的全局IPv6地址的最后32位,其中所述全局IPv6地址根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成,根据修改后的自身的全局IPv6地址生成RS报文的IPv6头的源地址信息。
S502:私网中的路由器根据该报文IPv4头的目的地址信息,确定相应的路由,将该RS报文路由到对应的出口网关设备。
S503:出口网关设备接收到该RS报文后,根据该RS报文IPv4头的源地址信息,将该RS报文IPv4头的源地址信息转换为公网的IPv4地址。
由于在每台ISATAP主机都位于私网中,每台ISATAP主机在公网中被分配了公网的IPv4地址,因此当出口网关设备接收到RS报文后,将该RS报文中IPv4头的源地址信息转换为与该源地址信息对应的公网的IPv4地址。
S504:出口网关设备将该报文发送到公网中,公网中的路由器根据该报文的IPv4头的目的地址信息进行选路,将该报文路由到对应目的地址信息的ISATAP路由器。
S505:ISATAP路由器接收到该RS报文后,剥去该RS报文的IPv4头得到IPv6报文,对该RS报文进行应答生成路由器公告(Router Advertisement,RA)报文。
其中在生成RA报文时,该RA报文中携带可用的子网前缀列表,RA报文的IPv6头的源地址信息为ISATAP隧道的IPv6地址,目的地址信息为ISATAP主机的链路本地IPv6地址,IPv4头的源地址信息为ISATAP路由器的ISATAP隧道的IPv4地址,目的地址为从RS报文中的IPv6头提取的目的地址信息的最后32位,即该IPv4头的目的地址信息为出口网关设备为ISATAP主机分配的公网的IPv4地址。
S506:ISATAP路由器将RA报文发送到公网,公网的路由器根据该RA报文中的IPv4头的目的地址信息进行选路,将该RA报文路由到该IPv4头的目的地址信息对应的出口网关设备。
S507:出口网关设备接收到RA报文后,根据该RA报文IPv4头的目的地址信息进行NAT,将IPv4头的目的地址转换为对应的私网ISATAP主机的IPv4地址。
S508:出口网关设备将IPv4头目的地址信息转换后的RA报文发送到私网,私网的路由器根据RA报文IPv4头的目的地址信息进行选路,将该RA报文路由到对应的ISATAP主机。
由于在IPv4网络和IPv6网络进行信息交互之前,ISATAP主机需要与ISATAP路由器交互获取子网前缀,而在获取子网前缀的过程中,ISATAP主机通过私网将RS报文发送到出口网关设备,经过出口网关设备的NAT转换将报文通过公网发送到ISATAP路由器,并获取ISATAP路由器生成的RA报文。而由于ISATAP路由器在反馈RA报文时,该RA报文的IPv4头的目的地址为从RS报文中的IPv6头提取的目的地址信息的最后32位,而该最后32位为该ISATAP主机的IPv4地址,因此也将导致RA无法发送到ISATAP主机,从而导致ISATAP主机无法获取子网前缀,从而无法与IPv6网络中的IPv6主机进行信息交互。
而本发明提供的获取子网前缀的过程中,由于ISATAP主机在生成RS报文时,根据出口网关设备中为其分配的公网的IPv4地址生成IPv6头的目的地址,因此在ISATAP路由器向该ISATAP主机返回RA报文时,能够根据RS报文中IPv6头的目的地址信息中,为ISATAP主机分配的公网的IPv4地址生成IPv4头的目的地址,从而使该RA报文能够在公网中发送并发送到对应的出口网关设备,通过该出口网关设备的NAT发送到ISATAP主机,从而可以保证IPv4网络和IPv6网络中报文的正常发送。
下面结合一个具体的实施例,对本发明实施例中IPv4网络与IPv6网络的通信过程进行说明。
在本发明实施例中ISATAP主机的地址为10.0.0.10,出口网关设备中的为该ISATAP主机分配的公网地址为160.6.6.2,ISATAP路由器的地址为160.160.160.1,IPv6主机的地址为5000:2000::2。
ISATAP主机与ISATAP路由器进行信息的交互,获取子网前缀的过程包括:ISATAP主机根据ISATAP隧道中IPv6地址的格式,根据出口网关设备为自身分配的公网的IPv4地址生成IPv4头的源地址信息,该IPv6头的源地址为FE80开头的ISATAP隧道的链路本地地址,格式为FE80::5EFE:A006:0602,其中A006:0602为160.6.6.2的16进制表示。ISATAP主机根据ISATAP隧道中IPv6地址的格式,及ISATAP路由器的链路本地地址,生成IPv6头的目的地址信息,具体为FE80::5EFE:A0A0:A001。
ISATAP主机获取数据,根据ISATAP隧道内报文的格式对RS报文进行封装,该RS报文中的IPv4头的源地址为ISATAP主机的地址,即为:10.0.0.10,IPv4头的目的地址为ISATAP路由器的地址,即为160.160.160.1。该RS报文的格式如表3所示:
表3
ISATAP主机将封装后的RS报文通过ISATAP隧道发送到私网,私网的路由器根据该RS报文中的头的目的地址(160.160.160.1)信息进行选路,将RS报文发送到对应的出口网关设备。出口网关设备接收到RS报文后,根据本地保存的该ISATAP主机的私网IPv4地址与被分配的公网IPv4地址的对应关系,将RS报文中的IPv4头的源地址信息进行NAT,转换为对应的公网IPv4地址160.6.6.2。
出口网关设备将进行NAT后的RS报文发送到公网,公网的路由器根据RS报文IPv4头的目的地址信息进行选路,将RS报文发送到对应地址的ISATAP路由器。
ISATAP路由器接收到RS报文后,向ISATAP主机返回RA报文,将可用的子网前缀封装在该RA报文中,该报文中可用的子网前缀为3000::/64。其中该RA报文符合ISATAP隧道内报文的格式,该RA报文中包括IPv4头、IPv6头和数据。其中RA报文中IPv4头的源地址信息为ISATAP路由器自身的地址,IPv4头的目的地址信息从RS报文IPv6头的源地址信息中获取,具体的为获取的该RS报文IPv6头源地址信息的后32位,即获取的为A006:0602,因此可知该RA报文IPv4头的目的地址信息为160.6.6.2。RA报文IPv6头的源地址信息为RS报文IPv6报文的目的地址信息,RA报文IPv6头的目的地址信息为RS报文IPv6头的源地址信息。表4为RA报文的格式:
表4
ISATAP路由器将RA报文发送到公网,公网的路由器根据RA报文的IPv4头的目的地址信息进行选路,将RA报文路由到相应的目的地址的出口网关设备。出口网关设备接收到RA报文后,根据RA报文中IPv4头的目的地址信息进行NAT,将该IPv4头的目的地址信息转换为对应的私网IPv4地址,在本发明实施例中由于私网中ISATAP主机的地址与RA报文中IPv4头的目的地址(ISATAP主机被分配的公网的IPv4地址)信息相对应,因此出口网关设备将该RA报文IPv4头的目的地址信息转换为10.0.0.10,并将转换后的RA报文发送到对应的私网。
私网的路由器接收到RA报文后,根据RA报文IPv4头的目的地址信息进行选路,将RA报文路由到对应目的地址的ISATAP主机。
当ISATAP主机获取子网前缀后,可以与IPv6网络中的IPv6主机进行通信,ISATAP主机与IPv6主机的通信过程包括:ISATAP主机根据ISATAP隧道中IPv6地址的格式,根据出口网关设备为自身分配的公网IPv4地址及获取的子网前缀,生成IPv6头的源地址信息:3000::5EFE:A006:0602。ISATAP主机根据待通信的IPv6主机的地址,生成IPv6头的目的地址信息5000:2000::2。ISATAP主机根据ISATAP隧道内报文的格式进行报文的封装,并将封装后的报文发送到私网。其中该报文的IPv4头以及IPv6头的源地址信息和目的地址信息,与上述表3中的RS报文的IPv4头和IPv6头的源地址和目的地址相同。
由于报文在IPv4网络中传输,私网的路由器根据该报文的IPv4头的目的地址信息进行选路,将报文路由到对应地址的出口网关设备。出口网关设备接收到报文后,确定该报文IPv4头的源地址信息,根据为该源地址信息对应的ISATAP主机分配的公网IPv4地址,将该报文IPv4头的源地址信息进行NAT,转换后该报文IPv4头的源地址信息为160.6.6.2,并将转换后的报文发送到公网。
公网路由器根据接收的报文的IPv4头的目的地址信息进行选路,将该报文路由到对应地址的ISATAP路由器。ISATAP路由器接收到该报文后,对该报文进行解封装,将报文的IPv4头剥去。根据解封装后的报文IPv6头的目的地址信息将该报文发送到IPv6网络,IPv6网络中的路由器根据该报文IPv6头的目的地址信息进行选路,将该报文路由到对应该IPv6头目的地址的IPv6主机。
IPv6主机接收到该报文后,对该报文进行处理并向ISATAP主机返回应答报文,在IPv6主机向ISATAP主机返回应答报文时,该IPv6主机将接收的报文的IPv6头的源地址信息作为应答报文IPv6头的目的地址信息,将接收的报文IPv6头的目的地址信息作为应答报文IPv6头的源地址信息。IPv6主机将该应答报文发送到IPv6网络。表5为该应答报文的结构示意图:
表5
IPv6网络的路由器根据接收的应答报文IPv6头的目的地址信息进行选路,由于该应答报文IPv6头的目的地址信息根据IPv6主机接收的报文IPv6头的源地址信息生成,该IPv6主机接收的报文的源地址信息为表3中的IPv6头的源地址信息,因此IPv6网络中的路由器根据该应答报文IPv6头的目的地址信息,确定将该应答报文发送到IPv4网络对应的ISATAP路由器。
ISATAP路由器接收到该应答报文后,确定该应答报文通过隧道发送,对该应答报文进行封装。根据该应答报文IPv6头的目的地址信息生成该应答报文IPv4头的目的地址信息,即该应答报文IPv4头的目的地址信息为该应答报文IPv6头目的地址信息的最后32位,也即该应答报文IPv4头的目的地址信息为160.6.6.2,该应答报文IPv4头的源地址信息为该ISATAP路由器自身的IPv4地址。ISATAP路由器将封装后的应答报文发送到公网中。表6为ISATAP路由器封装后的应答报文的格式:
表6
公网中的路由器接收到该应答报文后,根据该应答报文IPv4头的目的地址信息进行选路,将该应答报文路由到相应的目的地址的出口网关设备。出口网关设备接收到该应答报文后,对应答报文中IPv4头的目的地址信息进行NAT,将该IPv4头的目的地址信息转换为对应的私网IPv4地址信息。在本发明实施例中由于私网ISATAP主机的IPv4地址与应答报文中IPv4头的目的地址信息相对应,因此出口网关设备将该应答报文IPv4头的目的地址信息转换为10.0.0.10,并将目的地址信息转换后的应答报文发送到对应的私网。
私网的路由器接收到应答报文后,根据应答报文IPv4头的目的地址信息进行选路,将应答报文路由到对应目的地址的ISATAP主机。
下面对本发明的另一具体实施例进行详细说明。例如ISATAP主机的私网IPv4地址为10.0.0.10,为该ISATAP主机分配的公网的IPv4地址为160.6.6.2,获取的子网前缀为3000,ISATAP路由器的IPv4地址为160.160.160.1,IPv6主机的IPv6地址为5000:2000::2。
在本发明实施例中ISATAP主机根据获取的自身被分配的公网的IPv4地址,及获取的子网前缀,生成自身的全局IPv6地址信息为3000::5EFE:0A00:000A,ISATAP主机采用获取的自身被分配的公网的IPv4地址修改该全局IPv6地址的最后32位,得到修改后的全局IPv6地址信息为:3000::5EFE:A006:0602。
ISATAP主机根据修改后的全局IPv6地址信息生成,IPv6头的源地址信息3000::5EFE:A006:0602。根据待通信的IPv6主机的IPv6地址生成IPv6头的目的地址信息5000:2000::2。ISATAP主机获取到自身的全局IPv6地址时,获取自身的全局IPv6地址的最后32位,采用自身的私网的IPv4地址替换该最后32位,生成IPv4头的源地址信息,即生成的IPv4头的源地址信息为10.0.0.10。ISATAP主机根据ISATAP路由器的IPv4地址,生成IPv4头的目的地址信息160.160.160.1。
ISATAP主机按照ISATAP隧道内报文的格式对生成的IPv4头的信息和IPv6头的信息进行报文的封装,将封装后的报文向IPv6主机发送。该报文在ISATAP隧道传输,当发送到出口网关设备时,出口网关设备对该报文进行NAT,将该报文的IPv4头的源地址转换为公网的IPv4地址,并将该源地址转换后的报文发送到公网。即在将该报文中的IPv4头的源地址中ISATAP主机自身的IPv4地址10.0.0.10转换为该ISATAP主机被分配的公网的IPv4地址160.6.6.2。
在公网中,路由器根据该报文的IPv4头的目的地址信息,将该报文转发到对应目的地址信息的ISATAP路由器。ISATAP路由器接收到该报文后,对该报文解封装,剥去IPv4头得到IPv6报文,根据该报文中IPv6头的目的地址信息,将该报文转发到对应目的地址信息的IPv6主机。
IPv6主机根据接收的报文的IPv6头的源地址信息,及自身的IPv6地址生成应答报文IPv6头的目的地址信息及源地址信息,将该数据封装在应答报文中发送到IPv6网络。
IPv6网络的路由器根据该应答报文的IPv6头的目的地址信息进行选路,将该应答报文路由到ISATAP路由器。ISATAP路由器接收到该应答报文后,从该应答报文的IPv6头的目的地址信息中提取IPv4头的目的地址,该报文封装在ISATAP隧道中并发送到ISATAP主机所在的IPv4网络。
即获取该应答报文IPv6头目的地址信息的最后32位作为IPv4头的目的地址信息,由于该应答报文IPv6头的目的地址信息为ISATAP主机发送的报文的IPv6头的源地址信息,因此可知该应答报文IPv6头目的地址信息为根据为该ISATAP主机分配的公网的IPv4地址生成的,从而可知IPv6头目的地址为为该ISATAP主机分配的公网的IPv4地址信息,因此可知该应答报文IPv4头的目的地址信息为为该ISATAP主机分配的公网的IPv4地址。该应答报文中IPv4头的源地址信息为ISATAP路由器自身的IPv4地址信息。
在公网中,路由器根据接收到的封装后的应答报文,根据该应答报文IPv4头的目的地址信息进行选路,将该封装后的应答报文路由到对应的目的地址信息的出口网关设备。出口网关设备接收到该应答报文后,根据该应答报文IPv4头的目的地址信息,确定该目的地址信息对应的私网IPv4地址。
出口网关设备将转换后的应答报文发送到IPv4私网中,私网中的路由器根据该应答报文IPv4头的目的地址信息,将该应答报文发送到对应目的地址信息对应的ISATAP主机。ISATAP主机接收到该应答报文后,将该应答报文IPv6头的目的地址信息的最后32位修改为自身被分配的私网的IPv4地址,并将修改后的应答报文传递给应用协议。
下面对上述实施例中获取子网前缀的过程进行详细说明。ISATAP主机根据获取的自身被分配的公网的IPv4地址,生成自身的全局IPv6地址信息为:FE80::5EFE:0A00:000A。根据生成的全局IPv6地址信息生成RS报文,RS报文的IPv6头的源地址信息为FE80::5EFE:0A00:000A。RS报文中封装的IPv6头的目的地址信息为ISATAP路由器的链路本地地址。
ISATAP主机在生成RS报文的IPv4头的源地址信息时,ISATAP主机获取到自身的全局IPv6地址时,获取自身的全局IPv6地址的最后32位,采用自身的私网的IPv4地址替换该最后32位,生成RS报文的IPv4头的源地址信息,即生成RS报文的IPv4头的源地址信息为10.0.0.10。ISATAP主机根据ISATAP路由器的IPv4地址,生成RS报文的IPv4头的目的地址信息160.160.160.1。
ISATAP主机将封装后的RS报文发送到ISATAP路由器。私网中的路由器根据该报文IPv4头的目的地址信息,确定相应的路由,将该RS报文路由到对应的出口网关设备。出口网关设备接收到该RS报文后,根据该RS报文IPv4头的源地址信息,将该RS报文IPv4头的源地址信息转换为公网的IPv4地址。
出口网关设备将该报文发送到公网中,公网中的路由器根据该报文的IPv4头的目的地址信息进行选路,将该报文路由到对应目的地址信息的ISATAP路由器。ISATAP路由器接收到该RS报文后,剥去该RS报文的IPv4头得到IPv6报文,对该RS报文进行应答生成RA报文。
其中在生成RA报文时,该RA报文中携带可用的子网前缀列表,RA报文的IPv6头的源地址信息为ISATAP隧道的IPv6地址,目的地址信息为ISATAP主机的链路本地IPv6地址,IPv4头的源地址信息为ISATAP路由器的ISATAP隧道的IPv4地址,目的地址为从RS报文中的IPv6头提取的目的地址信息的最后32位,即该IPv4头的目的地址信息为出口网关设备为ISATAP主机分配的公网的IPv4地址。
ISATAP路由器将RA报文发送到公网,公网的路由器根据该RA报文中的IPv4头的目的地址信息进行选路,将该RA报文路由到该IPv4头的目的地址信息对应的出口网关设备。出口网关设备接收到RA报文后,根据该RA报文IPv4头的目的地址信息进行NAT,将IPv4头的目的地址转换为对应的私网ISATAP主机的IPv4地址。
出口网关设备将IPv4头目的地址信息转换后的RA报文发送到私网,私网的路由器根据RA报文IPv4头的目的地址信息进行选路,将该RA报文路由到对应的ISATAP主机。ISATAP主机接收到RA报文后,将RA报文中IPv6头的目的地址信息的最后32位修改为自身被分配的私网的IPv4地址,并将修改后的RA报文进行后续处理。
本发明实施例提供的IPv4网络与IPv6网络通信的方法,只需对ISATAP主机进行改进,无需修订ISATAP路由器的标准ISATAP协议,并且也无需修改出口网管设备,因此对系统的改动较小,容易实现,费用开销也较小。
图6为本发明实施例提供的一种IPv4网络与IPv6网络通信的装置结构示意图,该装置包括:
获取模块61,用于获取自身被分配的公网的IPv4地址信息;
生成模块62,用于生成IPv6头的目的地址信息、IPv4头的源地址信息和目的地址信息,并根据获取的所述自身被分配的公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息;
封装发送模块63,用于按照ISATAP隧道内报文的格式对生成的IPv4头的信息和IPv6头的信息进行报文的封装,将封装后的报文通过ISATAP路由器发送到IPv6主机。
所述获取模块61包括:
第一获取单元611,用于根据自身保存的配置文件信息,获取自身被分配的公网的IPv4地址信息;
第二获取单元612,用于向公共服务器发送获取自身被分配的公网的IPv4地址信息的请求,并接收公共服务器返回的自身被分配的公网的IPv4地址向欧盟西欧。
所述生成模块62包括:
第一生成单元621,用于根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成IPv6头的第一源地址信息,采用获取的所述自身被分配的公网的IPv4地址信息修改所述IPv6头的第一源地址信息中的最后32位并作为生成的IPv6头的源地址信息;
第二生成单元622,用于根据获取的所述自身被分配的公网的IPv4地址信息,修改自身的全局IPv6地址的最后32位,其中所述全局IPv6地址根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成,根据修改后的自身的全局IPv6地址生成IPv6头的源地址信息。
具体的,在本发明实施例中当生成模块62根据获取的所述自身被分配的公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息时,采用第一生成单元621生成,或采用第二生成单元622生成。
所述生成模块62还包括:
发送单元623,用于向ISATAP路由器发送路由器请求报文,其中该路由器请求报文中IPv6头的源地址信息,根据获取的所述自身被分配的公网的IPv4地址信息生成;
接收单元624,用于接收所述ISATAP路由器返回的路由器公告报文,其中所述路由器公告报文中携带所述子网前缀。
所述生成模块62具体用于,根据自身的私网IPv4地址生成IPv4头的源地址信息。
所述装置还包括:
修改模块64,用于接收到应答报文后,将所述应答报文IPv6头的目的地址信息的最后32位修改为自身被分配的私网的IPv4地址,并将修改后的应答报文传递给应用协议。
图7为本发明实施例提供的一种IPv4网络与IPv6网络通信的系统结构示意图,该系统包括上述图6所述的装置71,接收该装置71发送的报文,并将该报文发送到IPv6主机的ISATAP路由器72,及接收ISATAP路由器72发送的报文的IPv6主机73。
所述系统还包括:
出口网关设备74,用于接收所述装置71发送的封装后的报文,对报文中IPv4头的源地址信息的转换,将该转换后的报文发送到ISATAP路由器72;
所述ISATAP路由器72具体用于,对该报文进行解封装,根据解封转后的报文的IPv6头的目的地址信息,将该报文发送到对应目的地址的IPv6主机73。
所述系统中,
所述ISATAP路由器72还用于,根据接收的应答报文IPv6头的目的地址信息,生成应答报文IPv4头的目的地址信息,根据自身的IPv4地址,生成应答报文IPv4头的源地址信息,并将该报文发送到出口网关设备74;
所述出口网关设备74还用于,对该应答报文IPv4头的目的地址信息的转换,将该转换后的应答报文发送到对应目的地址的所述装置71。
所述装置71还用于,接收所述出口网关设备74发送的应答报文。
本发明实施例一种IPv4网络与IPv6网络通信的方法、系统及装置,该方法中,ISATAP主机获取自身被分配的公网的IPv4地址,根据获取的公网的IPv4地址及获取的子网前缀生成IPv6头的源地址信息,生成IPv6头的目的地址信息,并生成IPv4头的源地址信息和目的地址信息,将报文封装并发送到IPv6主机。由于在本发明实施例中ISATAP主机向IPv6主机发送的报文中的IPv6头的源地址信息,根据自身被分配的公网的IPv4地址生成,因此当在ISATAP路由器接收到IPv6主机返回的应答报文时,ISATAP路由器封装的应答报文的IPv4头的目的地址为ISATAP主机被分配的公网IPv4地址,因此能够正确的将应答报文发送给ISATAP主机所在网络的出口网关,出口网关经过NAT后将报文转发给ISATAP主机,从而可以实现应答报文的正常发送。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种IPv4网络与IPv6网络通信的方法,其特征在于,包括:
自动隧道寻址协议ISATAP主机获取自身被分配的公网的IPv4地址信息;
根据获取的所述自身被分配的公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息;
生成IPv6头的目的地址信息,并生成IPv4头的源地址信息和目的地址信息;
按照ISATAP隧道内报文的格式对生成的IPv4头的信息和IPv6头的信息进行报文的封装,将封装后的报文通过ISATAP路由器发送到IPv6主机。
2.如权利要求1所述的方法,其特征在于,所述ISATAP主机获取自身被分配的公网的IPv4地址信息包括:
所述ISATAP主机根据自身保存的配置文件信息,获取自身被分配的公网的IPv4地址信息;或,
所述ISATAP主机向公共服务器发送获取自身被分配的公网的IPv4地址信息的请求,并接收公共服务器返回的该ISATAP主机被分配的公网的IPv4地址信息。
3.如权利要求1或2所述的方法,其特征在于,根据获取的所述公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息包括:
所述ISATAP主机根据自身的私网IPv4地址信息,及获取的子网前缀生成IPv6头的第一源地址信息,采用获取的所述自身被分配的公网的IPv4地址信息修改所述IPv6头的第一源地址信息中的最后32位并作为生成的IPv6头的源地址信息;或,
根据获取的所述自身被分配的公网的IPv4地址信息,修改自身的全局IPv6地址的最后32位,其中所述全局IPv6地址根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成,根据修改后的自身的全局IPv6地址生成IPv6头的源地址信息。
4.如权利要求3所述的方法,其特征在于,所述ISATAP主机获取子网前缀的过程包括:
所述ISATAP主机向ISATAP路由器发送路由器请求报文,其中该路由器请求报文中IPv6头的源地址信息,根据获取的所述自身被分配的公网的IPv4地址信息生成;
所述ISATAP主机接收所述ISATAP路由器返回的路由器公告报文,其中所述路由器公告报文中携带所述子网前缀。
5.如权利要求3所述的方法,其特征在于,根据修改后的自身的全局IPv6地址生成IPv6头的源地址信息时,生成IPv4头的源地址信息包括:
获取修改后的自身的全局IPv6地址的最后32位,采用自身的私网IPv4地址替换该最后32位,生成IPv4头的源地址信息。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述IPv6主机接收到该报文后进行处理,生成应答报文,其中该应答报文的IPv6头的源地址信息和目的地址信息,根据接收的报文的IPv6头的目的地址信息和源地址信息生成;
根据该应答报文IPv6头的目的地址信息,将该应答报文发送到对应地址的ISATAP路由器;
ISATAP路由器根据接收的应答报文IPv6头的目的地址信息,生成应答报文IPv4头的目的地址信息,根据自身的IPv4地址,生成应答报文IPv4头的源地址信息,并将该报文发送到出口网关设备,经过出口网关设备对应答报文IPv4头的目的地址信息的转换,将该转换后的应答报文发送到对应目的地址的ISATAP主机。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
ISATAP主机接收到所述应答报文后,将所述应答报文IPv6头的目的地址信息的最后32位修改为自身被分配的私网的IPv4地址,并将修改后的应答报文传递给应用协议。
8.一种IPv4网络与IPv6网络通信的装置,其特征在于,所述装置包括:
获取模块,用于获取自身被分配的公网的IPv4地址信息;
生成模块,用于生成IPv6头的目的地址信息、IPv4头的源地址信息和目的地址信息,并根据获取的所述自身被分配的公网的IPv4地址信息及获取的子网前缀生成IPv6头的源地址信息;
封装发送模块,用于按照ISATAP隧道内报文的格式对生成的IPv4头的信息和IPv6头的信息进行报文的封装,将封装后的报文通过ISATAP路由器发送到IPv6主机。
9.如权利要求8所述的装置,其特征在于,所述获取模块包括:
第一获取单元,用于根据自身保存的配置文件信息,获取自身被分配的公网的IPv4地址信息;
第二获取单元,用于向公共服务器发送获取自身被分配的公网的IPv4地址信息的请求,并接收公共服务器返回的自身被分配的公网的IPv4地址信息。
10.如权利要求8或9所述的装置,其特征在于,所述生成模块包括:
第一生成单元,用于根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成IPv6头的第一源地址信息,采用获取的所述自身被分配的公网的IPv4地址信息修改所述IPv6头的第一源地址信息中的最后32位并作为生成的IPv6头的源地址信息;
第二生成单元,用于根据获取的所述自身被分配的公网的IPv4地址信息,修改自身的全局IPv6地址的最后32位,其中所述全局IPv6地址根据所述ISATAP主机的私网IPv4地址信息,及获取的子网前缀生成,根据修改后的自身的全局IPv6地址生成IPv6头的源地址信息。
11.如权利要求10所述的装置,其特征在于,所述生成模块还包括:
发送单元,用于向ISATAP路由器发送路由器请求报文,其中该路由器请求报文中IPv6头的源地址信息,根据获取的所述自身被分配的公网的IPv4地址信息生成;
接收单元,用于接收所述ISATAP路由器返回的路由器公告报文,其中所述路由器公告报文中携带所述子网前缀。
12.如权利要求10所述的装置,其特征在于,所述生成模块具体用于根据自身的私网IPv4地址生成IPv4头的源地址信息。
13.如权利要求10所述的装置,其特征在于,所述装置还包括:
修改模块,用于接收到应答报文后,将所述应答报文IPv6头的目的地址信息的最后32位修改为自身被分配的私网的IPv4地址,并将修改后的应答报文传递给应用协议。
14.一种IPv4网络与IPv6网络通信的系统,其特征在于,所述系统包括:如权利要求8~13任一所述的装置,接收该装置发送的报文,并将该报文发送到IPv6主机的ISATAP路由器,及接收ISATAP路由器发送的报文的IPv6主机。
15.如权利要求14所述的系统,其特征在于,所述系统还包括:
出口网关设备,用于接收所述装置发送的封装后的报文,对报文中IPv4头的源地址信息的转换,将该转换后的报文发送到ISATAP路由器;
所述ISATAP路由器具体用于,对该报文进行解封装,根据解封转后的报文的IPv6头的目的地址信息,将该报文发送到对应目的地址的IPv6主机。
16.如权利要求14所述的系统,其特征在于,所述系统中,
所述ISATAP路由器还用于,根据接收的应答报文IPv6头的目的地址信息,生成应答报文IPv4头的目的地址信息,根据自身的IPv4地址,生成应答报文IPv4头的源地址信息,并将该报文发送到出口网关设备;
所述出口网关设备还用于,对该应答报文IPv4头的目的地址信息的转换,将该转换后的应答报文发送到对应目的地址的所述装置
所述装置还用于,接收所述出口网关设备发送的应答报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102827383A CN101938531A (zh) | 2010-09-14 | 2010-09-14 | 一种IPv4网络与IPv6网络通信的方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102827383A CN101938531A (zh) | 2010-09-14 | 2010-09-14 | 一种IPv4网络与IPv6网络通信的方法、系统及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101938531A true CN101938531A (zh) | 2011-01-05 |
Family
ID=43391656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102827383A Pending CN101938531A (zh) | 2010-09-14 | 2010-09-14 | 一种IPv4网络与IPv6网络通信的方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101938531A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014079190A1 (zh) * | 2012-11-21 | 2014-05-30 | 华为技术有限公司 | 组播报文转发的方法及设备 |
CN103889019A (zh) * | 2012-12-20 | 2014-06-25 | 联想(北京)有限公司 | 一种发送数据的方法及装置 |
CN110198365A (zh) * | 2019-05-27 | 2019-09-03 | 杭州迪普科技股份有限公司 | 一种地址转换检测方法及系统 |
CN112887452A (zh) * | 2021-03-26 | 2021-06-01 | 中星科源(北京)信息技术有限公司 | 局域网间通信方法与系统、nat网关 |
CN115150266A (zh) * | 2022-06-29 | 2022-10-04 | 北京天融信网络安全技术有限公司 | 局域网互联配置及数据传输方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060215657A1 (en) * | 2005-03-22 | 2006-09-28 | Min-Kyu Lee | ISATAP tunneling system and method between IPv4 network and IPv6 network |
CN101719859A (zh) * | 2009-12-09 | 2010-06-02 | 华为技术有限公司 | 实现IPv6隧道穿越网络地址转换设备的方法、设备和系统 |
-
2010
- 2010-09-14 CN CN2010102827383A patent/CN101938531A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060215657A1 (en) * | 2005-03-22 | 2006-09-28 | Min-Kyu Lee | ISATAP tunneling system and method between IPv4 network and IPv6 network |
CN101719859A (zh) * | 2009-12-09 | 2010-06-02 | 华为技术有限公司 | 实现IPv6隧道穿越网络地址转换设备的方法、设备和系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014079190A1 (zh) * | 2012-11-21 | 2014-05-30 | 华为技术有限公司 | 组播报文转发的方法及设备 |
US10225295B2 (en) | 2012-11-21 | 2019-03-05 | Huawei Technologies Co., Ltd. | Multicast packet forwarding method and device |
CN103889019A (zh) * | 2012-12-20 | 2014-06-25 | 联想(北京)有限公司 | 一种发送数据的方法及装置 |
CN110198365A (zh) * | 2019-05-27 | 2019-09-03 | 杭州迪普科技股份有限公司 | 一种地址转换检测方法及系统 |
CN112887452A (zh) * | 2021-03-26 | 2021-06-01 | 中星科源(北京)信息技术有限公司 | 局域网间通信方法与系统、nat网关 |
CN112887452B (zh) * | 2021-03-26 | 2022-11-04 | 中星科源(北京)信息技术有限公司 | 局域网间通信方法与系统、nat网关 |
CN115150266A (zh) * | 2022-06-29 | 2022-10-04 | 北京天融信网络安全技术有限公司 | 局域网互联配置及数据传输方法 |
CN115150266B (zh) * | 2022-06-29 | 2024-03-15 | 北京天融信网络安全技术有限公司 | 局域网互联配置及数据传输方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102025591B (zh) | 虚拟专用网络的实现方法及系统 | |
CN102859973B (zh) | 一种地址解析的方法,装置和系统 | |
JP5689179B2 (ja) | 低電力ワイヤレスパーソナルエリアネットワーク上のIPv6データパケットを送信する方法および装置 | |
CN102714636B (zh) | 用于便于越过网络边界的推送通信的方法和装置 | |
CN101917707B (zh) | 无线传感器网络的ip寻址方法及系统 | |
US20130010614A1 (en) | METHOD AND APPARATUS FOR PROCESSING PACKETS IN IPv6 NETWORK | |
CN102447752B (zh) | 基于二层隧道协议的业务访问方法、系统和装置 | |
US9191317B2 (en) | Method and system for implementing interconnection between internet protocol version 4 network and new network | |
CN102938735B (zh) | 使用路由通告携带选项下发nat64地址前缀的方法 | |
CN106209616B (zh) | 一种泛洪抑制方法及装置 | |
CN101394333A (zh) | 转发报文的方法、装置以及网络系统 | |
US20110013647A1 (en) | Ipv6 over ipv4 transition method and apparatus for improving performance of control server | |
CN101873320B (zh) | 一种基于DHCPv6中继的客户端信息确认方法及其装置 | |
CN102959906B (zh) | 多归属站点内主机的路由选择方法和装置 | |
CN103731349A (zh) | 一种以太网虚拟化互联邻居间报文转发方法和边缘设备 | |
CN101938531A (zh) | 一种IPv4网络与IPv6网络通信的方法、系统及装置 | |
CN102546407A (zh) | 报文发送方法及装置 | |
CN108206783A (zh) | 一种软件定义网络系统中地址配置方法及其装置 | |
CN102447747A (zh) | 一种与私有网络的交互方法、装置及系统 | |
JP2017506856A (ja) | NAT64プレフィックスの処理方法、ネットワーク機器及びDHCPv6サーバー | |
CN106130865A (zh) | 一种终端间的通信方法及装置 | |
CN104717640A (zh) | 一种基于定位的无线网络通信的实现方法 | |
CN101977246A (zh) | 一种PMIPv6移动性的支持方法和系统 | |
CN102957755B (zh) | 一种地址解析方法、装置及信息传输方法 | |
CN106487677B (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110105 |