高效使用IPv4公有地址的方法及装置与流程

文档序号:15358202发布日期:2018-09-05 00:16阅读:300来源:国知局

本发明实施例涉及计算机网络通信技术领域,具体涉及一种高效使用ipv4公有地址的方法及装置。



背景技术:

在过去的20多年中,伴随着互联网的快速发展,ipv4协议取得了巨大成功。当前全球ipv4用户已经超过30亿,占到人口总数的50%以上。然而,网络规模的急剧增长也突显出ipv4的一系列严重问题,包括地址空间不足、路由可扩展性问题等。ipv6协议是下一代的互联网协议,用来取代ipv4。ipv6具有巨大的地址空间(2^128),分层的编址和路由机制,更好的端到端特性,更好的安全性和移动性支持等特性。

但是ipv6与ipv4并不兼容,为了使新建的ipv6网络与ipv4互联网互联互通,ietf提出的标准包括无状态翻译方案ivi,有状态翻译方案nat64,无状态双重翻译技术map-t,有状态双重翻译技术464xlat等。值得指出的是任何与ipv4互联网互通的技术均需要ipv4公有地址,因此在ipv4和ipv6的共存阶段,ipv4公有地址是极其稀缺的资源。对于客户机来说,分配ipv4私有地址并利用传输层端口复用ipv4公有地址是成熟技术,但对于服务器来说,该技术无法使用,因为服务器必须使用ipv4公有地址并规定特定的传输层端口,因此每一个ipv4公有地址只能有一个特定的传输层端口(服务端口),且无法复用。云计算的大量采用迫切地需要大量用户服务器的ipv4公有地址。

鉴于此,如何使ipv6网络中的服务器和客户机均能够使用ipv4公有地址,以最大限度地使用稀缺的ipv4公有地址资源成为目前所要解决的技术问题。



技术实现要素:

由于现有方法存在上述问题,本发明实施例提出一种高效使用ipv4公有地址的方法及装置。

第一方面,本发明实施例提出一种高效使用ipv4公有地址的方法,应用于部署在ipv4互联网和ipv6网络之间的核心翻译器,包括:

根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信;

根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供所述ipv6网络中的客户机使用所述第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信。

可选地,在根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信之前,所述方法还包括:

配置翻译参数,所述翻译参数包括:用于ipv6网络中的ipv6服务器的第一类前缀、用于ipv6网络中的客户机的第二类前缀、所述ipv6服务器的传输层端口范围、ipv6网络中的客户机的传输层端口范围、,以及ipv4公有地址池和与ipv4公有地址池相同大小的ipv4私有地址池,所述ipv4公有地址池和所述ipv4私有地址池之间具有一一对应的映射关系。

可选地,所述第一类前缀和所述第二类前缀没有交叠。

可选地,所述根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信,包括:

若接收到ipv4互联网中的客户机发送的ipv4报文,则判断所述ipv4互联网中的客户机发送的ipv4报文的目标端口是否在ipv6网络中的ipv6服务器的传输层端口范围内;

若是,则将所述ipv4互联网中的客户机发送的ipv4报文翻译成具有第一类前缀的ipv6报文后,发送给所述ipv6服务器;

若接收到所述ipv6服务器反馈的ipv6报文,则将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文后,发送给所述ipv4互联网中的客户机。

可选地,所述ipv4互联网中的客户机发送的ipv4报文是所述ipv4互联网中的客户机通过域名服务器查询dns而得到a记录后,基于所述a记录而发送的。

可选地,所述根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供所述ipv6网络中的客户机使用所述第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信,包括:

若接收到ipv6网络中的用户侧翻译器发送的ipv6报文,则将接收到的用户侧翻译器发送的ipv6报文翻译成ipv4报文后,发送给ipv4互联网中的ipv4服务器,其中,接收到的用户侧翻译器发送的ipv6报文是所述用户侧翻译器接收到ipv6网络中的ipv4客户机发送的ipv4报文后,将接收的ipv4报文翻译成的具有第二类前缀的ipv6报文;

若接收到所述ipv4服务器反馈的ipv4报文,则判断所述ipv4服务器反馈的ipv4报文的目标端口是否在ipv6网络中的ipv6服务器的传输层端口范围内;

若不是,则将所述ipv4服务器反馈的ipv4报文翻译成具有第二类前缀的ipv6报文并发送给所述用户侧翻译器,以使所述用户侧翻译器将接收的具有第二类前缀的ipv6报文翻译成ipv4报文后,发送给ipv6网络中的ipv4客户机。

可选地,在判断所述ipv4服务器反馈的ipv4报文的目标端口是否在ipv6网络中的ipv6服务器的传输层端口范围内之后,所述方法还包括:

若所述ipv4服务器反馈的ipv4报文在ipv6网络中的ipv6服务器的传输层端口范围内,则将所述ipv4服务器反馈的ipv4报文翻译成具有第一类前缀的ipv6报文后,发送给所述ipv6服务器;

若接收到所述ipv6服务器反馈的ipv6报文,则将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文后,发送给所述ipv4互联网中的客户机。

第二方面,本发明实施例还提出一种高效使用ipv4公有地址的装置,应用于部署在ipv4互联网和ipv6网络之间的核心翻译器,包括:

第一映射模块,用于根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信;

第二映射模块,用于根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二ipv6地址,以供所述ipv6网络中的客户机使用所述第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信。

第三方面,本发明实施例还提出一种电子设备,包括:处理器、存储器、总线及存储在存储器上并可在处理器上运行的计算机程序;

其中,所述处理器,存储器通过所述总线完成相互间的通信;

所述处理器执行所述计算机程序时实现上述方法。

第四方面,本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述方法。

由上述技术方案可知,本发明实施例通过根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供ipv6服务器使用第一ipv6地址实现与ipv4互联网中的客户机的通信;根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供ipv6网络中的客户机使用第二ipv6地址实现与ipv4互联网中的ipv4服务器的通信,由此,能够使ipv6网络中的ipv6服务器和客户机使用相同ipv4公有地址提供不同的服务,最大限度地使用稀缺的ipv4公有地址资源。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1为本发明一实施例提供的一种高效使用ipv4公有地址的方法的流程示意图;

图2为实现本发明实施例所述方法的网络结构示意图;

图3为本发明实施例中步骤s1的一种具体流程示意图;

图4为本发明实施例中步骤s2的一种具体流程示意图;

图5为本发明一实施例提供的一种高效使用ipv4公有地址的装置的结构示意图;

图6为本发明一实施例提供的电子设备的实体结构示意图。

具体实施方式

下面结合附图,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

图1示出了本发明一实施例提供的一种高效使用ipv4公有地址的方法的流程示意图,本实施例所述方法应用于部署在ipv4互联网和ipv6网络之间的核心翻译器(即),如图1所示,本实施例的高效使用ipv4公有地址的方法,包括:

s1、根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信。

其中,第一类前缀和所述第二类前缀没有交叠。

s2、根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供所述ipv6网络中的客户机使用所述第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信。

可以理解的是,通过使用上述核心翻译器的复用ipv4公有地址的双重翻译技术,可以使用户使用的ipv4客户机能够穿透纯ipv6网络与ipv4互联网进行通信。

在具体应用中,本实施例中的双重翻译技术可以使用无状态地址映射加端口调整技术。

可以理解的是,图2为实现本实施例所述方法的网络结构示意图,在ipv4互联网和ipv6网络之间部署核心ipv4/ipv6扩展翻译器(即本实施例中的核心翻译器),ipv6网络联接ipv6服务器组,能够通过核心翻译器为ipv4互联网中的(用户使用)客户机提供服务,ipv6网络联接用户侧ipv4/ipv6翻译器(即本实施例中的用户侧翻译器),并下联(ipv4/双栈用户使用的)ipv4/双栈客户机。

本实施例的高效使用ipv4公有地址的方法,应用于部署在ipv4互联网和ipv6网络之间的核心翻译器,通过根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供ipv6服务器使用第一类ipv6地址实现与ipv4互联网中的客户机的通信;根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供ipv6网络中的客户机使用第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信,由此,能够使ipv6网络中的ipv6服务器和客户机使用(共享)相同ipv4公有地址提供不同的服务,可以做到网络提供商和信息提供商对于ipv4公有地址的需求互补,最大限度地更加有效地使用稀缺的ipv4公有地址资源。

进一步地,在上述实施例的基础上,在上述步骤s1之前,本实施例所述方法还可以包括:

配置翻译参数,所述翻译参数包括:用于ipv6网络中的ipv6服务器的第一类前缀、用于ipv6网络中的客户机的第二类前缀、所述ipv6服务器的传输层端口范围、ipv6网络中的客户机的传输层端口范围以及ipv4公有地址池和与ipv4公有地址池相同大小的ipv4私有地址池,所述ipv4公有地址池和所述ipv4私有地址池之间具有一一对应的映射关系。

可以理解的是,本实施例所述方法还需要为ipv6网络中的每一个ipv6服务器配置2个ipv6地址,其中,一个ipv6地址依据rfc6052映射由ipv4公有地址池和所述第一类前缀计算得到,另一个ipv6地址依据rfc6052映射由ipv4私有地址池和所述第一类前缀计算得到;配置ipv6网络中的ipv6服务器的权威域名服务器映射,为每一个ipv6服务器配置aaaa记录和a记录,其中,aaaa记录是该ipv6服务器配置的依据rfc6052映射由ipv4公有地址池和所述第一类前缀计算得到的ipv6地址,a记录是该ipv6服务器对应的ipv4公有地址;以及为用户侧翻译器配置用于翻译的参数,包括所述第二类前缀和nat(网络地址转换)功能。

进一步地,在上述实施例的基础上,可参考图3,本实施例上述步骤s1可以包括步骤s11-s13:

s11、若接收到ipv4互联网中的客户机发送的ipv4报文,则判断所述ipv4互联网中的客户机发送的ipv4报文的目标端口是否在ipv6网络中的ipv6服务器的传输层端口范围内。

s12、若是,则将所述ipv4互联网中的客户机发送的ipv4报文翻译成具有第一类前缀的ipv6报文后,发送给所述ipv6服务器。

在具体应用中,可以依据rfc6052和rfc7915,将所述ipv4互联网中的客户机发送的ipv4报文翻译成具有第一类前缀的ipv6报文

s13、若接收到所述ipv6服务器反馈的ipv6报文,则将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文后,发送给所述ipv4互联网中的客户机。

在具体应用中,可以依据rfc6052和rfc7915,将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文。

其中,所述ipv4互联网中的客户机发送的ipv4报文是所述ipv4互联网中的客户机通过域名服务器查询dns而得到a记录后,基于所述a记录而发送的。

由此,本实施例解决了ipv6网络中的ipv6服务器使用ipv4公有地址的问题,可以令所述ipv6服务器使用所述第一类ipv6地址,ipv6网络中的ipv6服务器和客户机可共享相同ipv4公有地址提供不同的服务,可以做到网络提供商和信息提供商对于ipv4公有地址的需求互补,最大限度地更加有效地使用稀缺的ipv4公有地址资源。

进一步地,在上述实施例的基础上,可参考图4,本实施例上述步骤s2可以包括步骤s21-s23:

s21、若接收到ipv6网络中的用户侧翻译器发送的ipv6报文,则将接收到的用户侧翻译器发送的ipv6报文翻译成ipv4报文后,发送给ipv4互联网中的ipv4服务器,其中,接收到的用户侧翻译器发送的ipv6报文是所述用户侧翻译器接收到ipv6网络中的ipv4客户机发送的ipv4报文后,将接收的ipv4报文翻译成的具有第二类前缀的ipv6报文。

可以理解的是,所述用户侧翻译器接收到ipv6网络中的ipv4客户机发送的ipv4报文是所述ipv6网络中的ipv4客户机通过域名服务器查询dns而得到a记录后,基于所述a记录而发送的,其中,如不是本侧ipv6网络中的ipv6服务器提供服务,域名服务器直接返回a记录,如是本侧ipv6网络中的ipv6服务器提供服务,域名服务器返回由映射规则得到的ipv4私有地址a记录。

在具体应用中,本步骤可以依据rfc6052和rfc7915,接收到的用户侧翻译器发送的ipv6报文翻译成ipv4报文。

可以理解的是,所述用户侧翻译器可以根据nat规则,依据rfc6052和rfc7915,将接收的ipv4报文翻译成的具有第二类前缀的ipv6报文。

s22、若接收到所述ipv4服务器反馈的ipv4报文,则判断所述ipv4服务器反馈的ipv4报文的目标端口是否在ipv6网络中的ipv6服务器的传输层端口范围内。

s23、若所述ipv4服务器反馈的ipv4报文不在ipv6网络中的ipv6服务器的传输层端口范围内,则将所述ipv4服务器反馈的ipv4报文翻译成具有第二类前缀的ipv6报文并发送给所述用户侧翻译器,以使所述用户侧翻译器将接收的具有第二类前缀的ipv6报文翻译成ipv4报文后,发送给ipv6网络中的ipv4客户机。

在具体应用中,本步骤可以依据rfc6052和rfc7915,将所述ipv4服务器反馈的ipv4报文翻译成具有第二类前缀的ipv6报文。

可以理解的是,本步骤中的用户侧翻译器可以依据rfc6052、rfc7915和nat规则,将接收的具有第二类前缀的ipv6报文翻译成ipv4报文。

可以理解的是,若所述ipv4服务器反馈的ipv4报文在ipv6网络中的ipv6服务器的传输层端口范围内,则将所述ipv4服务器反馈的ipv4报文翻译成具有第一类前缀的ipv6报文后,发送给所述ipv6服务器;若接收到所述ipv6服务器反馈的ipv6报文,则将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文后,发送给所述ipv4互联网中的客户机。

具体地,可以依据rfc6052和rfc7915,将所述ipv4服务器反馈的ipv4报文翻译成具有第一类前缀的ipv6报文,可以依据rfc6052和rfc7915,将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文。

由此,本实施例可以令ipv6网络中的客户机使用所述第二类ipv6地址,ipv6网络中的ipv6服务器和客户机可共享相同ipv4公有地址提供不同的服务,可以做到网络提供商和信息提供商对于ipv4公有地址的需求互补,最大限度地更加有效地使用稀缺的ipv4公有地址资源。

下面以一个具体例子对本实施例所述方法进行进一步说明。

例如,某网络的第一类前缀为2001:da8::/32,第二类前缀为2001:da9::/32,用于ipv6网络中的ipv6服务器的传输层端口为0-1023,用于ipv6网络中的客户机的传输层端口为1024-65535。ipv4公有地址池为1.1.1.0/24,ipv4私有地址池为10.0.0.0/24,映射关系为后8位相等。本端(即ipv6网络)中的一个web服务器的传输层的服务端口为80,ipv4公有地址为1.1.1.10,ipv4私有地址为10.0.0.10,配置的两个ipv6地址为2001:da8:0101:010a::,2001:da8:0a00:000a::。对应权威域名服务器的aaaa记录为2001:da8:0101:010a::,a记录为1.1.1.10。

当ipv4互联网中的一个客户机2.0.0.1对上述ipv6服务器发起访问,查询出的a记录是1.1.1.10,其传输的分组的头信息为(x为随机产生的端口号):

tcp,2.0.0.1#x,1.1.1.10#80

核心翻译器检测其目标端口号小于1023,依据rfc6052使用第一类前缀2001:da8::/32进行地址翻译,其传输的分组的头信息为:

tcp,[2001:da8:0200:0001::]#x,[2001:da8:0101:010a::]#80

该ipv6服务器返回的分组的头信息为:

tcp,[2001:da8:0101:010a::]#80,[2001:da8:0200:0001::]#x

经过核心翻译器后,其传输的分组的头信息为:

tcp,1.1.1.10#80,2.0.0.1#x

这个过程反复进行直到通信完成。

当ipv6网络中的一个ipv4客户机192.168.0.3对ipv4互联网的一个web服务器发起访问,域名解析器查询出的a记录是3.0.0.6,因不在本侧共用的ipv4公有地址范围,直接返回,其传输的分组的头信息为(y为随机产生的端口号):

tcp,192.168.0.3%y,3.0.0.6#80

经过nat后,其传输的分组的头信息为(z为经nat变换后的端口号):

tcp,1.1.1.10%z(z>1024),3.0.0.6#80

经过用户侧翻译器后,依据rfc6052使用第二类前缀2001:da9::/32进行地址翻译,其传输的分组的头信息为:

tcp,[2001:da9:0101:010a::]#z,[2001:da9:0300:0006::]#80

经过核心翻译器后,依据rfc6052进行地址翻译,其传输的分组的头信息为:

tcp,1.1.1.10%z,3.0.0.6#80

ipv4互联网中的ipv4服务器返回的分组的头信息为:

tcp,3.0.0.6#80,1.1.1.10%z

核心翻译器检测其目标端口号大于1023,依据rfc6052使用第二类前缀2001:da9::/32进行地址翻译,其传输的分组的头信息为:

tcp,[2001:da9:0300:0006::]#80,[2001:da9:0101:010a::]#z

经过用户侧翻译器后,依据rfc6052进行地址翻译,其传输的分组的头信息为:

tcp,3.0.0.6#80,1.1.1.10%z

经过nat后,其传输的分组的头信息为:

tcp,3.0.0.6#80,192.168.0.3%y

这个过程反复进行直到通信完成。

当ipv6网络中的一个ipv4客户机192.168.0.3对ipv6网络中的一个web服务器发起访问,域名解析器查询出的a记录是1.1.1.9,则转换为对应的私有地址10.0.0.9作为a记录提供给ipv4客户机,其传输的分组的头信息为(u为随机产生的端口号):

tcp,192.168.0.3%u,10.0.0.9#80

经过nat后,其传输的分组的头信息为(v为经nat变换后的端口号):

tcp,1.1.1.10%v(v>1024),10.0.0.9#80

经过用户侧翻译器后,依据rfc6052使用客户机ipv6前缀2001:da9::/32进行地址翻译,其传输的分组的头信息为:

tcp,[2001:da9:0101:010a::]#v,[2001:da9:0a00:0009::]#80

经过核心翻译器后,依据rfc6052进行地址翻译,其传输的分组的头信息为:

tcp,1.1.1.10%v,10.0.0.9#80

该ipv4服务器返回的分组的头信息为:

tcp,10.0.0.9#80,1.1.1.10%v

经过核心翻译器后,依据rfc6052使用第二类前缀2001:da9::/32进行地址翻译,其传输的分组的头信息为:

tcp,[2001:da9:0a00:0009::]#80,[2001:da9:0101:010a::]#v

经过用户侧翻译器后,依据rfc6052进行地址翻译,其传输的分组的头信息为:

tcp,10.0.0.9#80,1.1.1.10%v

经过nat后,其传输的分组的头信息为:

tcp,10.0.0.9#80,192.168.0.3%u

这个过程反复进行直到通信完成。

本实施例的一种高效使用ipv4公有地址的方法,能够使ipv6网络中的ipv6服务器和客户机使用(共享)相同ipv4公有地址提供不同的服务,可以做到网络提供商和信息提供商对于ipv4公有地址的需求互补,最大限度地更加有效地使用稀缺的ipv4公有地址资源。

图5示出了本发明一实施例提供的一种高效使用ipv4公有地址的装置的结构示意图,本实施例所述装置应用于部署在ipv4互联网和ipv6网络之间的核心翻译器中,如图5所示,本实施例的高效使用ipv4公有地址的装置,包括:第一映射模块51和第二映射模块52;其中:

所述第一映射模块51,用于根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信;

所述第二映射模块52,用于根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供所述ipv6网络中的客户机使用所述第二ipv6地址实现与ipv4互联网中的ipv4服务器的通信。

具体地,第一映射模块51根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信;所述第二映射模块52根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供所述ipv6网络中的客户机使用所述第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信。

其中,第一类前缀和所述第二类前缀没有交叠。

可以理解的是,通过使用上述核心翻译器的复用ipv4公有地址的双重翻译技术,可以使用户使用的ipv4客户机能够穿透纯ipv6网络与ipv4互联网进行通信。

在具体应用中,本实施例中的双重翻译技术可以使用无状态地址映射加端口调整技术。

本实施例的高效使用ipv4公有地址的装置,应用于部署在ipv4互联网和ipv6网络之间的核心翻译器,能够使ipv6网络中的ipv6服务器和客户机使用(共享)相同ipv4公有地址提供不同的服务,可以做到网络提供商和信息提供商对于ipv4公有地址的需求互补,最大限度地更加有效地使用稀缺的ipv4公有地址资源。

进一步地,在上述实施例的基础上,本实施例所述方法还可以包括图中未示出的:

配置模块,用于配置翻译参数,所述翻译参数包括:用于ipv6网络中的ipv6服务器的第一类前缀、用于ipv6网络中的客户机的第二类前缀、所述ipv6服务器的传输层端口范围、ipv6网络中的客户机的传输层端口范围以及ipv4公有地址池和与ipv4公有地址池相同大小的ipv4私有地址池,所述ipv4公有地址池和所述ipv4私有地址池之间具有一一对应的映射关系。

可以理解的是,本实施例中还需要为ipv6网络中的每一个ipv6服务器配置2个ipv6地址,其中,一个ipv6地址依据rfc6052映射由ipv4公有地址池和所述第一类前缀计算得到,另一个ipv6地址依据rfc6052映射由ipv4私有地址池和所述第一类前缀计算得到;配置ipv6网络中的ipv6服务器的权威域名服务器映射,为每一个ipv6服务器配置aaaa记录和a记录,其中,aaaa记录是该ipv6服务器配置的依据rfc6052映射由ipv4公有地址池和所述第一类前缀计算得到的ipv6地址,a记录是该ipv6服务器对应的ipv4公有地址;以及为用户侧翻译器配置用于翻译的参数,包括所述第二类前缀和nat(网络地址转换)功能。

进一步地,在上述实施例的基础上,所述第一映射模块51,可具体用于

若接收到ipv4互联网中的客户机发送的ipv4报文,则判断所述ipv4互联网中的客户机发送的ipv4报文的目标端口是否在ipv6网络中的ipv6服务器的传输层端口范围内;

若是,则将所述ipv4互联网中的客户机发送的ipv4报文翻译成具有第一类前缀的ipv6报文后,发送给所述ipv6服务器;

若接收到所述ipv6服务器反馈的ipv6报文,则将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文后,发送给所述ipv4互联网中的客户机。

其中,所述ipv4互联网中的客户机发送的ipv4报文是所述ipv4互联网中的客户机通过域名服务器查询dns而得到a记录后,基于所述a记录而发送的。

由此,本实施例解决了ipv6网络中的ipv6服务器使用ipv4公有地址的问题,可以令所述ipv6服务器使用所述第一类ipv6地址,ipv6网络中的ipv6服务器和客户机可共享相同ipv4公有地址提供不同的服务,可以做到网络提供商和信息提供商对于ipv4公有地址的需求互补,最大限度地更加有效地使用稀缺的ipv4公有地址资源。

进一步地,在上述实施例的基础上,所述第一映射模块52,可具体用于

若接收到ipv6网络中的用户侧翻译器发送的ipv6报文,则将接收到的用户侧翻译器发送的ipv6报文翻译成ipv4报文后,发送给ipv4互联网中的ipv4服务器,其中,接收到的用户侧翻译器发送的ipv6报文是所述用户侧翻译器接收到ipv6网络中的ipv4客户机发送的ipv4报文后,将接收的ipv4报文翻译成的具有第二类前缀的ipv6报文;

若接收到所述ipv4服务器反馈的ipv4报文,则判断所述ipv4服务器反馈的ipv4报文的目标端口是否在ipv6网络中的ipv6服务器的传输层端口范围内。

若所述ipv4服务器反馈的ipv4报文不在ipv6网络中的ipv6服务器的传输层端口范围内,则将所述ipv4服务器反馈的ipv4报文翻译成具有第二类前缀的ipv6报文并发送给所述用户侧翻译器,以使所述用户侧翻译器将接收的具有第二类前缀的ipv6报文翻译成ipv4报文后,发送给ipv6网络中的ipv4客户机。

其中,所述用户侧翻译器接收到ipv6网络中的ipv4客户机发送的ipv4报文是所述ipv6网络中的ipv4客户机通过域名服务器查询dns而得到a记录后,基于所述a记录而发送的,其中,如不是本侧ipv6网络中的ipv6服务器提供服务,域名服务器直接返回a记录,如是本侧ipv6网络中的ipv6服务器提供服务,域名服务器返回由映射规则得到的ipv4私有地址a记录。

进一步地,所述第一映射模块52,还可具体用于

若所述ipv4服务器反馈的ipv4报文在ipv6网络中的ipv6服务器的传输层端口范围内,则将所述ipv4服务器反馈的ipv4报文翻译成具有第一类前缀的ipv6报文后,发送给所述ipv6服务器;若接收到所述ipv6服务器反馈的ipv6报文,则将所述ipv6服务器反馈的ipv6报文翻译成ipv4报文后,发送给所述ipv4互联网中的客户机。

由此,本实施例可以令ipv6网络中的客户机使用所述第一类ipv6地址,ipv6网络中的ipv6服务器和客户机可共享相同ipv4公有地址提供不同的服务,可以做到网络提供商和信息提供商对于ipv4公有地址的需求互补,最大限度地更加有效地使用稀缺的ipv4公有地址资源。

本实施例的高效使用ipv4公有地址的装置,可以用于执行前述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

图6示出了本发明实施例提供的一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器61、存储器62、总线63及存储在存储器62上并可在处理器61上运行的计算机程序;

其中,所述处理器61,存储器62通过所述总线63完成相互间的通信;

所述处理器61执行所述计算机程序时实现上述各方法实施例所提供的方法,例如包括:根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信;根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供所述ipv6网络中的客户机使用所述第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信。

本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例所提供的方法,例如包括:根据供ipv6网络中的ipv6服务器使用的传输层协议端口范围,将ipv4公有地址映射成具有第一类前缀的第一类ipv6地址,以供所述ipv6服务器使用所述第一类ipv6地址实现与ipv4互联网中的客户机的通信;根据供ipv6网络中的客户机使用的传输层协议端口范围,将ipv4公有地址映射成具有第二类前缀的第二类ipv6地址,以供所述ipv6网络中的客户机使用所述第二类ipv6地址实现与ipv4互联网中的ipv4服务器的通信。

本领域内的技术人员应明白,本申请的实施例可提供为方法、装置、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、装置、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置/系统。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

需要说明的是,在本文中,诸如第一类和第二类等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

本发明的说明书中,说明了大量具体细节。然而能够理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释呈反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本发明并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1