CN105227687B - IPv4用户访问IPv6资源的通信方法与系统 - Google Patents
IPv4用户访问IPv6资源的通信方法与系统 Download PDFInfo
- Publication number
- CN105227687B CN105227687B CN201410279396.8A CN201410279396A CN105227687B CN 105227687 B CN105227687 B CN 105227687B CN 201410279396 A CN201410279396 A CN 201410279396A CN 105227687 B CN105227687 B CN 105227687B
- Authority
- CN
- China
- Prior art keywords
- address
- ipv6
- ipv4
- source
- server
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例公开了一种IPv4用户访问IPv6资源的通信方法与系统,其中,方法包括:客户端单元从DNS服务器获取协议转换网关的IPv4地址,向协议转换网关发送业务访问请求;协议转换网关从DNS服务器查询IPv6服务器的IPv6地址,根据映射表中是否已建立源IPv4地址的映射条目确定是否向IPv6服务器分配复用目的IPv4地址,并返回客户端单元;客户端单元基于目的IPv4地址重新发送业务访问数据报文;协议转换网关基于映射表对业务访问数据报文进行地址和协议转换后发送给IPv6服务器,以及对IPv6服务器返回的业务数据报文进行地址和协议转换后发送给客户端单元。本发明实施例支持IPv4用户访问IPv6资源,且可以节省IPv4公有地址。
Description
技术领域
本发明涉及通信技术,尤其是一种IPv4用户访问IPv6资源的通信方法与系统。
背景技术
随着第四版本互联网协议(IPv4)地址紧缺的进一步加剧,互联网数据中心(IDC)也逐渐出现IPv4地址欠缺的现象。为促进IPv4向第六版本互联网协议(IPv6)的发展,运营商可为互联网内容提供商(ICP)提供支持纯IPv6的IDC,要求ICP提供支持IPv6的业务,同时通过协议翻译的方法实现对现有IPv4用户的访问支持。
目前,实现IPv4用户访问IPv6资源的方案有以下三种,但是在实现本发明的过程中,发明人发现以下方式至少存在如下的相应问题:
第一种是IVI方式。IVI方式仅要求在IPv4用户访问的目的IPv6地址(即:ICP地址中)内嵌IPv4公有地址作为IPv4用户访问的目的IPv4地址,由于采用网络层翻译方式,实现效率高;但其并无法节省IPv4地址消耗,因此无法缓解IDC出现的IPv4公有地址欠缺状况;
第二种是代理(Proxy)方式。Proxy方式采用应用层翻译,实现效率低,可扩展性差,在网络中进行规模部署可能性较低;
第三种是通过中继网络地址翻译(NAT)实现的穿透(Traversal Using RelayNAT,TURN)IPv6方式。TURN IPv6要求ICP和IPv4用户客户端单元均支持TURN客户端单元(client)实现NAT穿越,无法应用于浏览器/服务器(B/S)类业务。
因此,上述三种方式均无法在满足现网部署需求的情况下节省IPv4公有地址。
发明内容
本发明实施例所要解决的一个技术问题是:提供一种IPv4用户访问IPv6资源的通信方法与系统,支持IPv4用户访问IPv6资源,且可以节省IPv4公有地址。
本发明实施例提供的一种IPv4用户访问IPv6资源的通信方法,包括:
域名解析服务DNS服务器接收IPv4用户客户端单元发送的IPv4地址查询请求,该IPv4地址查询请求中包括请求访问的IPv6服务器的域名信息;
DNS服务器根据所述IPv6服务器的域名信息,查询所述IPv6服务器的域名记录中预先配置的协议转换网关的IPv4地址并返回所述客户端单元;
客户端单元基于所述协议转换网关的IPv4地址,向所述协议转换网关发送业务访问请求,该业务访问请求中包括IPv6服务器的域名信息和作为所述客户端单元使用的IPv4地址的源IPv4地址;
协议转换网关基于所述IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的所述IPv6服务器的IPv6地址;
协议转换网关查询映射表中是否已建立所述源IPv4地址的映射条目;
若映射表中已建立所述源IPv4地址的映射条目,协议转换网关从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立所述源IPv4地址的映射条目,协议转换网关从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;
所述协议转换网关在映射表中建立所述源IPv4地址的映射条目并向所述客户端单元返回重定向应答消息,所述重定向应答消息中包括所述目的IPv4地址;所述源IPv4地址的映射条目包括所述源IPv4地址、目的IPv4地址、由所述源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的所述IPv6服务器的IPv6地址;
客户端单元基于所述目的IPv4地址重新发送业务访问数据报文,该业务访问数据报文被发送至协议转换网关,该业务访问数据报文中包括所述源IPv4地址与所述目的IPv4地址;
协议转换网关查询映射表,基于包括所述源IPv4地址与所述目的IPv4地址的映射条目,将所述业务访问数据报文中的所述源IPv4地址与所述目的IPv4地址分别转换为所述映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给所述IPv6服务器;
响应于接收到所述IPv6服务器返回的业务数据报文,基于所述映射条目对所述业务数据报文进行地址转换后以IPv4协议发送给所述客户端单元。
基于本发明上述方法的另一个实施例中,还包括:
预先在DNS服务器中创建所述IPv6服务器的域名记录,该域名记录中包括所述IPv6服务器的域名、IPv6地址和协议转换网关的IPv4地址。
基于本发明上述方法的另一个实施例中,协议转换网关从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器包括:
协议转换网关优先从IPv4地址池中选择已经分配给另一个IPv6服务器使用的IPv4地址分配给所述IPv6服务器。
基于本发明上述方法的另一个实施例中,还包括:
由预先存储的映射前缀信息与所述源IPv4地址组合生成所述源IPv6地址的操作。
基于本发明上述方法的另一个实施例中,还包括:
所述协议转换网关检测到断开与所述客户端单元之间的连接,收回分配给所述IPv6服务器的IPv4地址并删除所述映射条目。
基于本发明上述方法的另一个实施例中,还包括:
所述协议转换网关在映射条目中生成用于表示所述映射条目创建时刻的时间戳,并根据预先配置的生存周期信息进行计时;
响应于计时时长到达生存周期规定的时长,删除所述映射条目。
本发明实施例提供的一种IPv4用户访问IPv6资源的通信系统,包括IPv6服务器,其特征在于,还包括:
DNS服务器,用于存储域名记录,包括域名与IP地址之间的对应关系,其中IPv6服务器的域名记录包括所述IPv6服务器的域名、IPv6地址和协议转换网关的IPv4地址之间的对应关系;接收IPv4用户客户端单元发送的IPv4地址查询请求,根据该IPv4地址查询请求中IPv6服务器的域名信息查询所述IPv6服务器的域名记录中协议转换网关的IPv4地址并返回所述客户端单元;
客户端单元,位于使用IPv4地址的主机上,包括客户端或者浏览器,用于基于所述协议转换网关的IPv4地址,向所述协议转换网关发送业务访问请求,该业务访问请求中包括IPv6服务器的域名信息和作为所述客户端单元使用的IPv4地址的源IPv4地址;以及基于所述协议转换网关返回的重定向应答消息中的目的IPv4地址重新发送业务访问数据报文,该业务访问数据报文被发送至协议转换网关,该业务访问数据报文中包括所述源IPv4地址与所述目的IPv4地址;
协议转换网关,用于基于所述IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的所述IPv6服务器的IPv6地址;查询映射表中是否已建立所述源IPv4地址的映射条目;若映射表中已建立所述源IPv4地址的映射条目,从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立所述源IPv4地址的映射条目,从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;以及在映射表中建立所述源IPv4地址的映射条目并向所述客户端单元返回重定向应答消息,所述重定向应答消息中包括所述目的IPv4地址;所述源IPv4地址的映射条目包括所述源IPv4地址、目的IPv4地址、由所述源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的所述IPv6服务器的IPv6地址;接收到客户端单元发送的业务访问数据报文后查询映射表,基于包括所述源IPv4地址与所述目的IPv4地址的映射条目,将所述业务访问数据报文中的所述源IPv4地址与所述目的IPv4地址分别转换为所述映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给所述IPv6服务器;并在接收到所述IPv6服务器返回的业务数据报文时,基于所述映射条目对所述业务数据报文进行地址转换后以IPv4协议发送给所述客户端单元。
基于本发明上述系统的另一个实施例中,所述协议转换网关包括:
超文本传输协议代理单元,用于基于所述IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的所述IPv6服务器的IPv6地址;以及向所述客户端单元返回重定向应答消息,所述重定向应答消息中包括映射表生成单元分配的目的IPv4地址;
映射表生成单元,用于查询映射表中是否已建立所述源IPv4地址的映射条目;若映射表中已建立所述源IPv4地址的映射条目,从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立所述源IPv4地址的映射条目,从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;以及在映射表中建立所述源IPv4地址的映射条目,所述源IPv4地址的映射条目包括所述源IPv4地址、目的IPv4地址、由所述源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的所述IPv6服务器的IPv6地址;
地址协议转换单元,用于在接收到客户端单元发送的业务访问数据报文后查询映射表,基于包括所述源IPv4地址与所述目的IPv4地址的映射条目,将所述业务访问数据报文中的所述源IPv4地址与所述目的IPv4地址分别转换为所述映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给所述IPv6服务器;并在接收到所述IPv6服务器返回的业务数据报文时,基于所述映射条目对所述业务数据报文进行地址转换后以IPv4协议发送给所述客户端单元;
存储单元,用于存储所述IPv4地址池。
基于本发明上述系统的另一个实施例中,所述映射表生成单元从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器时,具体优先从IPv4地址池中选择已经分配给另一个IPv6服务器使用的IPv4地址分配给所述IPv6服务器。
基于本发明上述系统的另一个实施例中,所述存储单元还用于存储映射前缀信息;
所述映射表生成单元还用于由存储的映射前缀信息与所述源IPv4地址组合生成所述源IPv6地址。
基于本发明上述系统的另一个实施例中,所述地址协议转换单元还用于在检测到断开与所述客户端单元之间的连接时,收回分配给所述IPv6服务器的IPv4地址并删除所述映射条目。
基于本发明上述系统的另一个实施例中,所述存储单元还用于存储预先配置的生存周期信息;
所述映射表生成单元还用于在映射条目中生成用于表示所述映射条目创建时刻的时间戳,并根据所述生存周期信息进行计时;以及在计时时长到达生存周期规定的时长时,删除所述映射条目。
基于本发明上述实施例提供的IPv4用户访问IPv6资源的通信方法与系统,可以动态复用IPv4地址,从而可以节省对IPv4公有地址的消耗,适用于运营商的各种IPv4地址紧缺场景;基于映射条目采用网络层翻译的方式进行数据报文的地址和协议转换,具有较高的设备可靠性和可扩展性,实现简单,通用性强;可以利用现有的网络架构,无需对ICP和DNS服务器进行硬件改造,具有较强的可实施性,可在网络中进行规模部署。
本发明实施例可以利用现有的B/S及客户端单元/服务器(C/S)模式,适用于各种超文本传输协议(Hyper Text Transport Protocol,HTTP)类业务。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明IPv4用户访问IPv6资源的通信方法一个实施例的流程图。
图2为本发明IPv4用户访问IPv6资源的通信方法另一个实施例的流程图。
图3为本发明IPv4用户访问IPv6资源的通信系统一个实施例的结构示意图。
图4为本发明IPv4用户访问IPv6资源的通信系统另一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本发明人认为:首先,在IPv4地址紧缺的情况下,任何翻译的方式必须实现IPv4地址共享方可缓解IPv4地址紧缺的压力;其次,应尽可能采用网络层翻译的方式来提高可部署性和可实施性;最后,不能对服务器有过多的升级要求(例如要求更改服务器侧的端口号等),以提高通用性。
图1为本发明IPv4用户访问IPv6资源的通信方法一个实施例的流程图。如图1所示,该实施例IPv4用户访问IPv6资源的通信方法包括:
101,域名解析服务(DNS)服务器接收IPv4用户客户端单元发送的IPv4地址查询请求,该IPv4地址查询请求中包括请求访问的IPv6服务器的域名信息。
本发明各实施例中的客户端单元具体可以是主机上的客户端或者浏览器。
102,DNS服务器根据IPv6服务器的域名信息,查询IPv6服务器的域名记录中预先配置的协议转换网关的IPv4地址并返回客户端单元。
103,客户端单元基于协议转换网关的IPv4地址,向协议转换网关发送业务访问请求,该业务访问请求中包括IPv6服务器的域名信息和源IPv4地址,该源IPv4地址即客户端单元使用的IPv4地址。
同一局域网中的不同用户可以使用同一个IPv4公有地址作为源IPv4地址
不同局域网用户可以分配复用同一个IPv4公有地址
104,协议转换网关基于IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的IPv6服务器的IPv6地址。
105,协议转换网关查询映射表中是否已建立源IPv4地址的映射条目。
若映射表中已建立源IPv4地址的映射条目,执行106的操作。否则,若映射表中未建立源IPv4地址的映射条目,执行107的操作。
106,协议转换网关从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给IPv6服务器,作为本次业务访问的目的IPv4地址。
之后,执行108的操作。
107,协议转换网关从IPv4地址池中任意选择一个IPv4地址分配给IPv6服务器,可以是已经分配给另一个IPv6服务器使用的IPv4地址也可以是未被分配的IPv4地址,作为本次业务访问的目的IPv4地址。
选择已经分配给另一个IPv6服务器使用的IPv4地址时,实现了IPv4地址的复用。
其中的IPv4地址池中包括配置给该协议转换网关使用的IPv4公有地址。如无相反说明,本发明实施例中的IPv4地址均为IPv4公有地址。本发明实施例中IPv4地址池的大小最小可以设置为同一用户同一时间访问同一IDC内不同目的IPv4地址的个数,最大也仅需要设置为无IPv4地址复用时IDC中IPv6服务器的数量。
108,协议转换网关在映射表中建立源IPv4地址的映射条目并向客户端单元返回重定向应答消息,该重定向应答消息中包括目的IPv4地址。
其中,源IPv4地址的映射条目包括源IPv4地址、目的IPv4地址、由源IPv4地址生成的源IPv6地址、和目的IPv6地址,该目的IPv6地址即请求访问的IPv6服务器的IPv6地址。
具体地,可以在协议转换网关中预先存储映射前缀信息,将映射前缀与源IPv4地址组合即可生成源IPv6地址。
109,客户端单元基于重定向应答消息中的目的IPv4地址重新发送业务访问数据报文,该业务访问数据报文中包括源IPv4地址与目的IPv4地址。由于该目的IPv4地址是协议转换网关的地址,该业务访问数据报文被发送至协议转换网关。
110,协议转换网关查询映射表,基于包括业务访问数据报文源IPv4地址与目的IPv4地址的映射条目,将业务访问数据报文中的源IPv4地址与目的IPv4地址分别转换为映射条目中的源IPv6地址和目的IPv6地址后,以IPv6协议发送给IPv6服务器。
只要源IPv4地址结合目的IPv4地址可以唯一确定一个映射条目,即可实现对一个IPv6服务器的寻址。
该操作110中进行的是网络层的转换,无需保持应用层的连接映射。
111,响应于接收到IPv6服务器返回的业务数据报文,协议转换网关基于该映射条目对业务数据报文进行地址转换后以IPv4协议发送给客户端单元。
在本发明IPv4用户访问IPv6资源的通信方法另一个实施例中,还可以包括预先在DNS服务器中创建IPv6服务器的域名记录或对该域名记录进行更新、删除的操作,该域名记录中包括IPv6服务器的域名、IPv6地址和协议转换网关的IPv4地址。
根据本发明上述通信方法实施例的一个具体示例中,协议转换网关从IPv4地址池中任意选择一个IPv4地址分配给IPv6服务器时,具体可以优先从IPv4地址池中选择已经分配给另一个IPv6服务器使用的IPv4地址分配给本次业务请求访问的IPv6服务器。若不存在仅有另一个IPv6服务器使用的IPv4地址,即,被分配的IPv4地址全部已经分配给两个IPv6服务器使用,则从IPv4地址池中选择一个未被分配的IPv4地址分配给该IPv6服务器。优选选择已经分配给另一个IPv6服务器使用的IPv4地址分配给该IPv6服务器,可以有效节省IPv4地址池中的未使用IPv4公有地址,这样,方便在需要时释放IPv4地址池中的未被分配IPv4地址。
例如,协议转换网关通过105~108建立在映射表中建立映射条目的一个具体实例如下:
假设已在协议转换网关中建立了如下表1所示的映射表,已有用户的源IPv4地址、目的IPv4地址如下表1所示:
表1
序号 | 源IPv4地址 | 目的IPv4地址 | 源IPv6地址 | 目的IPv6地址 |
1 | S41 | D41 | S61 | D61 |
2 | S42 | D42 | S62 | D62 |
若此时到达协议转换网关的业务访问请求中的源IPv4地址为S41,协议转换网关从DNS服务器查询到的目的IPv6地址为D62,则此时选择未被分配的IPv4地址作为目的IPv4地址在映射表中新生成如下表2所示的映射条目:
表2
S41 | D42 | S61 | D62 |
若此时到达协议转换网关的业务访问请求中的源IPv4地址为S43,协议转换网关从DNS服务器查询到的目的IPv6地址为,则此时可以选择已分配给另一IPv6服务器的IPv4地址作为目的IPv4地址在映射表中新生成如下表3所示的映射条目:
表3
S43 | D41 | S63 | D61 |
在本发明IPv4用户访问IPv6资源的通信方法又一个实施例中,协议转换网关可以在检测到断开与客户端单元之间的连接时,收回分配给上述IPv6服务器的IPv4地址并删除相应的映射条目。从而实现IPv4地址的及时回收与动态复用,提高IPv4地址的使用效率。
在本发明IPv4用户访问IPv6资源的通信方法在一个实施例中,协议转换网关还可以在映射条目中生成用于表示映射条目创建时刻的时间戳,并根据预先配置的生存周期信息进行计时,响应于计时时长到达生存周期规定的时长,删除该映射条目。从而实现IPv4地址的及时回收与动态复用,提高IPv4地址的使用效率。
图2为本发明IPv4用户访问IPv6资源的通信方法另一个实施例的流程图。如图2所示,该实施例IPv4用户访问IPv6资源的通信方法包括:
201,IPv4用户客户端单元向DNS服务器A查询请求,请求查询IPv6服务器的域名信息,其中包括请求访问的IPv6服务器的域名信息。
202,DNS服务器根据IPv6服务器的域名信息,查询IPv6服务器的域名记录中预先配置的协议转换网关的IPv4地址并返回客户端单元。
203,客户端单元基于协议转换网关的IPv4地址发起HTTP请求,与协议转换网关建立传输控制协议(TCP)三次握手,与协议转换网关建立TCP连接。
204,客户端单元基于协议转换网关的IPv4地址,发起业务访问请求HTTP GET,其中的HOST字段中包含有请求访问的IPv6服务器的域名信息和源IPv4地址,该源IPv4地址即客户端单元使用的IPv4地址。
205,协议转换网关从HTTP GET中的HOST字段中读取IPv6服务器的域名信息,向DNS服务器发起AAAA查询请求,请求DNS服务器查询该服务器的IPv6地址。
206,DNS服务器查询域名记录向协议转换网关返回IPv6服务器的IPv6地址。
207,协议转换网关查询映射表中是否已建立该源IPv4地址的映射条目。
若映射表中已建立该源IPv4地址的映射条目,执行208的操作。否则,若映射表中未建立该源IPv4地址的映射条目,执行209的操作。
208,协议转换网关从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给IPv6服务器,作为本次业务访问的目的IPv4地址。
之后,执行210的操作。
209,协议转换网关从IPv4地址池中任意选择一个IPv4地址分配给IPv6服务器,作为本次业务访问的目的IPv4地址。
其中的IPv4地址池中包括配置给该协议转换网关使用的IPv4公有地址。如无相反说明,本发明实施例中的IPv4地址均为IPv4公有地址。
210,协议转换网关在映射表中建立源IPv4地址的映射条目并向客户端单元返回HTTP302重定向应答消息,该重定向应答消息中包括目的IPv4地址,告知用户下一次请求应该发往该目的IPv4地址。
其中,源IPv4地址的映射条目包括源IPv4地址、目的IPv4地址、由源IPv4地址生成的源IPv6地址、和目的IPv6地址,该目的IPv6地址即请求访问的IPv6服务器的IPv6地址。
211,客户端单元基于重定向应答消息中的目的IPv4地址重新发起HTTP连接,发送业务访问数据报文,该业务访问数据报文中包括源IPv4地址与目的IPv4地址。由于该目的IPv4地址是协议转换网关的地址,该业务访问数据报文被发送至协议转换网关。
212,协议转换网关查询映射表,基于包括业务访问数据报文源IPv4地址与目的IPv4地址的映射条目,将业务访问数据报文中的源IPv4地址与目的IPv4地址分别转换为映射条目中的源IPv6地址和目的IPv6地址后,从而将IPv4数据报文转换为IPv6数据报文,然后以IPv6协议发送给IPv6服务器。
213,响应于接收到IPv6服务器返回的业务数据报文,基于该映射条目对业务数据报文进行地址转换后以IPv4协议发送给客户端单元。
具体地,IPv6服务器返回的业务数据报文的源IPv6地址和目的IPv6地址分别对应映射条目中的目的IPv6地址和源IPv6地址,以其对应映射条目中查询到的源IPv4地址和目的IPv4地址分别作为目的IPv4地址和源IPv4地址,将IPv6服务器返回的业务数据报文的源IPv6地址和目的IPv6地址分别转换为对应映射条目中的目的IPv4地址和源IPv4地址,然后以IPv4协议发送给客户端单元。
后续客户端单元与IPv6服务器之间的所有数据报文都经过操作211~213进行相应的协议网络层转换。
图3为本发明IPv4用户访问IPv6资源的通信系统一个实施例的结构示意图。该实施例的通信系统可用于实现本发明上述各通信方法实施例。如图3所示,其包括IDC中的IPv6服务器,以及包括DNS服务器、客户端单元和协议转换网关。其中:
DNS服务器,用于存储域名记录,包括域名与IP地址之间的对应关系,其中IPv6服务器的域名记录包括IPv6服务器的域名、IPv6地址和协议转换网关的IPv4地址之间的对应关系;以及接收IPv4用户客户端单元发送的IPv4地址查询请求,根据该IPv4地址查询请求中IPv6服务器的域名信息查询IPv6服务器的域名记录中协议转换网关的IPv4地址并返回客户端单元。
客户端单元,位于使用IPv4地址的主机上,可以是客户端或者浏览器,用于基于协议转换网关的IPv4地址,向协议转换网关发送业务访问请求,该业务访问请求中包括IPv6服务器的域名信息和作为客户端单元使用的IPv4地址的源IPv4地址;以及基于协议转换网关返回的重定向应答消息中的目的IPv4地址重新发送业务访问数据报文,该业务访问数据报文被发送至协议转换网关,该业务访问数据报文中包括源IPv4地址与目的IPv4地址。
协议转换网关,用于基于IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的IPv6服务器的IPv6地址;查询映射表中是否已建立源IPv4地址的映射条目;若映射表中已建立源IPv4地址的映射条目,从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给该IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立源IPv4地址的映射条目,从IPv4地址池中任意选择一个IPv4地址分配给该IPv6服务器,作为本次业务访问的目的IPv4地址;以及在映射表中建立源IPv4地址的映射条目并向客户端单元返回重定向应答消息,重定向应答消息中包括目的IPv4地址;源IPv4地址的映射条目包括源IPv4地址、目的IPv4地址、由源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的该IPv6服务器的IPv6地址;接收到客户端单元发送的业务访问数据报文后查询映射表,基于包括源IPv4地址与目的IPv4地址的映射条目,将业务访问数据报文中的源IPv4地址与目的IPv4地址分别转换为映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给该IPv6服务器;并在接收到该IPv6服务器返回的业务数据报文时,基于映射条目对业务数据报文进行地址转换后以IPv4协议发送给客户端单元。
图4为本发明IPv4用户访问IPv6资源的通信系统另一个实施例的结构示意图。与图3所示的实施例相比,该实施例的协议转换网关包括HTTP Proxy单元、映射表生成单元、地址协议转换单元和存储单元。其中:
HTTP Proxy单元,用于基于IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的IPv6服务器的IPv6地址;以及向客户端单元返回重定向应答消息,该重定向应答消息中包括映射表生成单元分配的目的IPv4地址。
映射表生成单元,用于查询映射表中是否已建立源IPv4地址的映射条目;若映射表中已建立源IPv4地址的映射条目,从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给用户请求访问的IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立源IPv4地址的映射条目,从IPv4地址池中任意选择一个IPv4地址分配给该IPv6服务器,作为本次业务访问的目的IPv4地址;以及在映射表中建立源IPv4地址的映射条目,源IPv4地址的映射条目包括源IPv4地址、目的IPv4地址、由源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的该IPv6服务器的IPv6地址。
地址协议转换单元,用于在接收到客户端单元发送的业务访问数据报文后查询映射表,基于包括源IPv4地址与目的IPv4地址的映射条目,将业务访问数据报文中的源IPv4地址与目的IPv4地址分别转换为映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给该IPv6服务器;并在接收到IPv6服务器返回的业务数据报文时,基于映射条目对业务数据报文进行地址转换后以IPv4协议发送给客户端单元。地址协议转换单元仅对客户端单元与IPv6服务器之间的交互数据报文进行地址转换,不做端口转换。
存储单元,用于存储IPv4地址池。
在本发明上述通信系统的一个具体示例中,映射表生成单元从IPv4地址池中任意选择一个IPv4地址分配给IPv6服务器时,具体可以优先从IPv4地址池中选择已经分配给另一个IPv6服务器使用的IPv4地址分配给该请求访问的IPv6服务器。
在本发明通信系统的另一个实施例中,存储单元还可用于存储映射前缀信息。相应地,映射表生成单元协议转换网关还用于由预先存储的映射前缀信息与源IPv4地址组合生成源IPv6地址。
在本发明通信系统的又一个实施例中,地址协议转换单元还可用于在检测到断开与客户端单元之间的连接时,收回分配给IPv6服务器的IPv4地址并删除映射条目。
在本发明通信系统的再一个实施例中,存储单元还可用于存储预先配置的生存周期信息。相应地,映射表生成单元还用于在映射条目中生成用于表示映射条目创建时刻的时间戳,并根据预先配置的生存周期信息进行计时;以及在计时时长到达生存周期规定的时长时,删除映射条目。
本发明实施例主要用于解决IPv4用户访问IPv6业务资源的应用场景,可以应用在运营商向ICP提供纯IPv6IDC,并同时实现对现有IPv4用户的接入。协议转换网关可以部署在服务器一侧:例如,可以部署在IDC侧。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法、系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种IPv4用户访问IPv6资源的通信方法,其特征在于,包括:
域名解析服务DNS服务器接收IPv4用户客户端单元发送的IPv4地址查询请求,该IPv4地址查询请求中包括请求访问的IPv6服务器的域名信息;
DNS服务器根据所述IPv6服务器的域名信息,查询所述IPv6服务器的域名记录中预先配置的协议转换网关的IPv4地址并返回所述客户端单元;
客户端单元基于所述协议转换网关的IPv4地址,向所述协议转换网关发送业务访问请求,该业务访问请求中包括IPv6服务器的域名信息和作为所述客户端单元使用的IPv4地址的源IPv4地址;
协议转换网关基于所述IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的所述IPv6服务器的IPv6地址;
协议转换网关查询映射表中是否已建立所述源IPv4地址的映射条目;
若映射表中已建立所述源IPv4地址的映射条目,协议转换网关从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立所述源IPv4地址的映射条目,协议转换网关从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址,其中,协议转换网关优先从IPv4地址池中选择已经分配给另一个IPv6服务器使用的IPv4地址分配给所述IPv6服务器;
所述协议转换网关在映射表中建立所述源IPv4地址的映射条目并向所述客户端单元返回重定向应答消息,所述重定向应答消息中包括所述目的IPv4地址;所述源IPv4地址的映射条目包括所述源IPv4地址、目的IPv4地址、由所述源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的所述IPv6服务器的IPv6地址;
客户端单元基于所述目的IPv4地址重新发送业务访问数据报文,该业务访问数据报文被发送至协议转换网关,该业务访问数据报文中包括所述源IPv4地址与所述目的IPv4地址;
协议转换网关查询映射表,基于包括所述源IPv4地址与所述目的IPv4地址的映射条目,将所述业务访问数据报文中的所述源IPv4地址与所述目的IPv4地址分别转换为所述映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给所述IPv6服务器;
响应于接收到所述IPv6服务器返回的业务数据报文,基于所述映射条目对所述业务数据报文进行地址转换后以IPv4协议发送给所述客户端单元。
2.根据权利要求1所述的方法,其特征在于,还包括:
预先在DNS服务器中创建所述IPv6服务器的域名记录,该域名记录中包括所述IPv6服务器的域名、IPv6地址和协议转换网关的IPv4地址。
3.根据权利要求1所述的方法,其特征在于,还包括:
由预先存储的映射前缀信息与所述源IPv4地址组合生成所述源IPv6地址的操作。
4.根据权利要求1至3任意一项所述的方法,其特征在于,还包括:
所述协议转换网关检测到断开与所述客户端单元之间的连接,收回分配给所述IPv6服务器的IPv4地址并删除所述映射条目。
5.根据权利要求1至3任意一项所述的方法,其特征在于,还包括:
所述协议转换网关在映射条目中生成用于表示所述映射条目创建时刻的时间戳,并根据预先配置的生存周期信息进行计时;
响应于计时时长到达生存周期规定的时长,删除所述映射条目。
6.一种IPv4用户访问IPv6资源的通信系统,包括IPv6服务器,其特征在于,还包括:
DNS服务器,用于存储域名记录,包括域名与IP地址之间的对应关系,其中IPv6服务器的域名记录包括所述IPv6服务器的域名、IPv6地址和协议转换网关的IPv4地址之间的对应关系;接收IPv4用户客户端单元发送的IPv4地址查询请求,根据该IPv4地址查询请求中IPv6服务器的域名信息查询所述IPv6服务器的域名记录中协议转换网关的IPv4地址并返回所述客户端单元;
客户端单元,位于使用IPv4地址的主机上,包括客户端或者浏览器,用于基于所述协议转换网关的IPv4地址,向所述协议转换网关发送业务访问请求,该业务访问请求中包括IPv6服务器的域名信息和作为所述客户端单元使用的IPv4地址的源IPv4地址;以及基于所述协议转换网关返回的重定向应答消息中的目的IPv4地址重新发送业务访问数据报文,该业务访问数据报文被发送至协议转换网关,该业务访问数据报文中包括所述源IPv4地址与所述目的IPv4地址;
协议转换网关,用于基于所述IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的所述IPv6服务器的IPv6地址;查询映射表中是否已建立所述源IPv4地址的映射条目;若映射表中已建立所述源IPv4地址的映射条目,从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立所述源IPv4地址的映射条目,从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址,其中,协议转换网关优先从IPv4地址池中选择已经分配给另一个IPv6服务器使用的IPv4地址分配给所述IPv6服务器;以及在映射表中建立所述源IPv4地址的映射条目并向所述客户端单元返回重定向应答消息,所述重定向应答消息中包括所述目的IPv4地址;所述源IPv4地址的映射条目包括所述源IPv4地址、目的IPv4地址、由所述源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的所述IPv6服务器的IPv6地址;接收到客户端单元发送的业务访问数据报文后查询映射表,基于包括所述源IPv4地址与所述目的IPv4地址的映射条目,将所述业务访问数据报文中的所述源IPv4地址与所述目的IPv4地址分别转换为所述映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给所述IPv6服务器;并在接收到所述IPv6服务器返回的业务数据报文时,基于所述映射条目对所述业务数据报文进行地址转换后以IPv4协议发送给所述客户端单元。
7.根据权利要求6所述的系统,其特征在于,所述协议转换网关包括:
超文本传输协议代理单元,用于基于所述IPv6服务器的域名信息向DNS服务器发起IPv6地址查询请求,并接收DNS服务器查询域名记录返回的所述IPv6服务器的IPv6地址;以及向所述客户端单元返回重定向应答消息,所述重定向应答消息中包括映射表生成单元分配的目的IPv4地址;
映射表生成单元,用于查询映射表中是否已建立所述源IPv4地址的映射条目;若映射表中已建立所述源IPv4地址的映射条目,从预先配置的IPv4地址池中选择一个未被分配的IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;若映射表中未建立所述源IPv4地址的映射条目,从所述IPv4地址池中任意选择一个IPv4地址分配给所述IPv6服务器,作为本次业务访问的目的IPv4地址;以及在映射表中建立所述源IPv4地址的映射条目,所述源IPv4地址的映射条目包括所述源IPv4地址、目的IPv4地址、由所述源IPv4地址生成的源IPv6地址、和作为目的IPv6地址的所述IPv6服务器的IPv6地址;
地址协议转换单元,用于在接收到客户端单元发送的业务访问数据报文后查询映射表,基于包括所述源IPv4地址与所述目的IPv4地址的映射条目,将所述业务访问数据报文中的所述源IPv4地址与所述目的IPv4地址分别转换为所述映射条目中的源IPv6地址和目的IPv6地址后以IPv6协议发送给所述IPv6服务器;并在接收到所述IPv6服务器返回的业务数据报文时,基于所述映射条目对所述业务数据报文进行地址转换后以IPv4协议发送给所述客户端单元;
存储单元,用于存储所述IPv4地址池。
8.根据权利要求7所述的系统,其特征在于,所述存储单元还用于存储映射前缀信息;
所述映射表生成单元还用于由存储的映射前缀信息与所述源IPv4地址组合生成所述源IPv6地址。
9.根据权利要求7或8所述的系统,其特征在于,所述地址协议转换单元还用于在检测到断开与所述客户端单元之间的连接时,收回分配给所述IPv6服务器的IPv4地址并删除所述映射条目。
10.根据权利要求7或8所述的系统,其特征在于,所述存储单元还用于存储预先配置的生存周期信息;
所述映射表生成单元还用于在映射条目中生成用于表示所述映射条目创建时刻的时间戳,并根据所述生存周期信息进行计时;以及在计时时长到达生存周期规定的时长时,删除所述映射条目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410279396.8A CN105227687B (zh) | 2014-06-20 | 2014-06-20 | IPv4用户访问IPv6资源的通信方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410279396.8A CN105227687B (zh) | 2014-06-20 | 2014-06-20 | IPv4用户访问IPv6资源的通信方法与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105227687A CN105227687A (zh) | 2016-01-06 |
CN105227687B true CN105227687B (zh) | 2019-05-03 |
Family
ID=54996356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410279396.8A Active CN105227687B (zh) | 2014-06-20 | 2014-06-20 | IPv4用户访问IPv6资源的通信方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105227687B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107707641B (zh) * | 2017-09-25 | 2020-12-25 | 睿哲科技股份有限公司 | 一种通过IPv4终端维护IPv6云主机的方法和设备 |
CN109660497B (zh) * | 2017-10-12 | 2022-03-18 | 阿里巴巴集团控股有限公司 | 数据处理方法及装置、终端、处理器、存储介质 |
CN108011989B (zh) * | 2017-11-30 | 2020-09-15 | 杭州盈高科技有限公司 | 一种重定向方法及装置 |
CN109120601A (zh) * | 2018-07-24 | 2019-01-01 | 深圳市天威视讯股份有限公司 | 基于点播信令的IPv4与IPv6互通方法和系统 |
CN109586962B (zh) * | 2018-11-29 | 2020-08-04 | 睿哲科技股份有限公司 | IPv4升级到IPv6的HTTPS外链问题的处理装置、方法及电子设备 |
FR3096202A1 (fr) * | 2019-06-20 | 2020-11-20 | Orange | Procédé et dispositif d’obtention d’une adresse IP |
CN110225150B (zh) * | 2019-06-27 | 2020-09-15 | 中星科源(北京)信息技术有限公司 | 不同网络协议间的通信方法、系统和存储介质 |
CN110677512B (zh) * | 2019-09-30 | 2022-04-22 | 新华三信息安全技术有限公司 | 一种地址解析方法及装置 |
CN110798540B (zh) * | 2019-10-18 | 2023-01-20 | 北京奇艺世纪科技有限公司 | 一种数据交互方法及装置 |
CN110784562B (zh) * | 2019-10-25 | 2021-10-01 | 新华三信息安全技术有限公司 | 报文转发、域名地址查询方法、装置、设备及介质 |
CN111294399B (zh) * | 2020-02-04 | 2023-06-23 | 网宿科技股份有限公司 | 一种数据传输方法和装置 |
CN114390021A (zh) * | 2020-10-21 | 2022-04-22 | 中国电信股份有限公司 | 基于IPv6单栈的IDC服务提供系统及方法 |
CN112261054B (zh) * | 2020-10-23 | 2022-07-15 | 重庆邮电大学 | 基于应用业务服务质量的Ethernet/IP与IPv6协议转换系统及方法 |
CN112866439A (zh) * | 2021-04-02 | 2021-05-28 | 中国工商银行股份有限公司 | 数据处理方法、装置及系统 |
CN113840018A (zh) * | 2021-09-13 | 2021-12-24 | 支付宝(杭州)信息技术有限公司 | 基于DNS的IPv6引流方法、装置以及设备 |
CN114945047B (zh) * | 2022-04-08 | 2023-09-26 | 北京智象信息技术有限公司 | 一种智能终端app互联网协议选择方法、系统、设备及介质 |
CN115225606B (zh) * | 2022-07-11 | 2023-09-08 | 上海道客网络科技有限公司 | 一种容器云平台的跨网络协议的域名访问方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222495A (zh) * | 2008-01-24 | 2008-07-16 | 中兴通讯股份有限公司 | IPv4网络主机访问IPv6网络主机的方法及路由器 |
CN101662411A (zh) * | 2008-08-26 | 2010-03-03 | 杭州华三通信技术有限公司 | IPv4主机访问IPv6网络服务器的方法及装置 |
CN102546845A (zh) * | 2010-12-17 | 2012-07-04 | 中国移动通信集团公司 | 业务访问方法、装置及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100453050B1 (ko) * | 2002-05-29 | 2004-10-15 | 삼성전자주식회사 | IPv4/IPv6 통신 방법 및 그 장치 |
-
2014
- 2014-06-20 CN CN201410279396.8A patent/CN105227687B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222495A (zh) * | 2008-01-24 | 2008-07-16 | 中兴通讯股份有限公司 | IPv4网络主机访问IPv6网络主机的方法及路由器 |
CN101662411A (zh) * | 2008-08-26 | 2010-03-03 | 杭州华三通信技术有限公司 | IPv4主机访问IPv6网络服务器的方法及装置 |
CN102546845A (zh) * | 2010-12-17 | 2012-07-04 | 中国移动通信集团公司 | 业务访问方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105227687A (zh) | 2016-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105227687B (zh) | IPv4用户访问IPv6资源的通信方法与系统 | |
CN101946493B (zh) | 用于提供连接到因特网的客户端之间的连接性的方法和系统 | |
EP2641383B1 (en) | DNS server arrangement and method | |
CN1930848B (zh) | 用于万维网服务处理的方法和系统 | |
EP2381647B1 (en) | Session migration in content-centric networks | |
CN101662411B (zh) | IPv4主机访问IPv6网络服务器的方法及装置 | |
CN100469022C (zh) | 一种检测网络类型的方法及系统 | |
CN105681491A (zh) | 一种域名解析加速方法、系统和装置 | |
US20080168181A1 (en) | Initiating Communication Sessions from a First Computer Network to a Second Computer Network | |
US20180026935A1 (en) | Hybrid access dns optimization for multi-source download | |
US20070168551A1 (en) | Address and port number abstraction when setting up a connection between at least two computational devices | |
CN111327668B (zh) | 网络管理方法、装置、设备和存储介质 | |
CN103200281A (zh) | 内网服务器访问方法、设备和系统 | |
EP2472811A1 (en) | Method and system for implementing interconnection between internet protocol version 4 network and new network | |
CN101873320B (zh) | 一种基于DHCPv6中继的客户端信息确认方法及其装置 | |
US20130185410A1 (en) | Load balancing among network servers | |
CN103338151A (zh) | 公网客户端访问私网服务器的方法及路由器 | |
CN102820977A (zh) | 组播方法、装置及网络设备 | |
CN102904976A (zh) | 基于前缀分配的扩展双重无状态IPv4-IPv6翻译方法 | |
JP2007509566A (ja) | DHCPv4の環境下でのハンドオーバー方法、ハンドオーバー装置及び該ハンドオーバー方法を行うインストラクションを有する情報記録媒体 | |
CN104219257B (zh) | 一种网页实时通信方法、系统及服务器和客户端 | |
JP2002141954A (ja) | 通信中継装置、および通信中継方法、並びにプログラム記憶媒体 | |
CN102821172A (zh) | Sip注册服务器地址的获得方法、设备及系统 | |
CN106713528B (zh) | 一种家庭网关及IPv6主机访问网络服务器的方法 | |
CN104935677B (zh) | 一种nat64资源获取方法及获取/分配装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |