一种实现IPv6地址访问IPv4资源的方法和系统与流程

本发明涉及互联网技术领域,更具体的,涉及一种基于私网(VPN隧道及IVI)接入的IPv6地址访问IPv4资源的方法和系统,支持有线纯IPv6、有线双栈、无线纯IPv6和无线双栈四种接入方式。

背景技术:

现有的互联网主要是基于IPv4协议,这一协议成功的促成了互联网的迅速发展。但是,随着互联网用户的数量不断增加,以及对互联网应用的要求不断提高,IPv4的不足逐渐凸显出来。不断增长的对互联网地址资源的巨大需求与IPv4地址空间不足之间的矛盾越来越深,目前可用的IPv4地址已经枯竭。而采用长度为128字节IP地址的IPv6协议,则彻底解决了IPv4地址不足的难题,并且在地址容量、安全性、网络管理、移动性以及服务质量等方面有明显的改进,IPv6也成为下一代互联网络协议采用的核心标准之一。但是IPv6协议无法兼容目前的IPv4协议,也就是说无法从IPv4直接切换到IPv6,而这需要一个慢慢过渡的过程。在很长的过渡期内,IPv6和IPv4必须共存,IPv6地址和IPv4地址也必须共存,同时还必须使新安装的IPv6系统能够向后兼容。

IPv4/IPv6过渡技术是用来在IPv4向IPv6演进的过渡期内,保证业务共存和互操作的。目前成熟的IPv4/IPv6过渡技术可以分成三类:

(1)双栈技术

通过节点对IPv4和IPv6双协议栈的支持来实现两种业务的共存。

(2)隧道技术

通过在IPv4网络中部署隧道,实现在IPv4网络上对IPv6业务的承载,保证业务的共存和过渡,已定义的隧道技术种类很多,主要包括手工配置隧道、兼容地址自动配置隧道、6over4、6to4、MPLS隧道、ISATAP、隧道代理等技术。

(3)IPv4/IPv6互操作技术

通过对数据包的转换实现在网络过渡期中IPv4节点和IPv6节点之间的相互访问。目前主要的技术包括SIIT、NAT-PT、BIS、BIA、IVI等。

其中,IVI(IVI的说法灵感来源于罗马字码,IV是四,VI是六,用于表示一种无状态的IPv4与IPv6的地址转换技术)是一个特定前缀和无状态地址映射的方案,这种地址映射和转换机制是通过一个连接IPv4和IPv6网络的IVI网关来实现的。它使用了NAT-PT中的SIIT(Stateless IP/ICMP Translation,无状态IP/ICMP翻译)技术,这种无状态转换是在IVI网关中实现的。它在IPv4到IPv6的映射和IPv6到IPv4的映射是无状态的,通过这种翻译技术,IPv6用户可以透明地访问IPv4网,IPv4用户可以有条件地访问IPv6网。

如上所述,IVI服务使用的是无状态地址转换,但是其有两个缺点,一是需要一个真实的公网IPv4地址用来转换,第二就是IVI技术只支持IPv6源地址为特定IPv6前缀下的IVI地址,而不是任意的IVI地址。这使得IVI的应用有很大的局限性。

技术实现要素:

为了解决上述现有技术中存在的不足,本发明提出了一种实现IPv6地址访问IPv4资源的系统和方法,使得IPv6地址可以通过VPN隧道及IVI访问IPv4资源,本发明使得在有线纯IPv6、双栈或无线纯IPv6、双栈环境下任意访问IPv6、IPv4网络成为可能。

根据本发明的一方面,提出一种实现IPv6地址访问IPv4资源的系统,该系统包括:IPv6客户端、VPN服务器、IVI服务器和路由器,其中:

所述IPv6客户端配置有IPv6地址;

所述VPN服务器与IPv6客户端通过隧道通信,与IVI服务器通过网线连接,所述VPN服务器用于接收所述IPv6客户端发送的IPv6数据包并将该IPv6数据包转发给所述IVI服务器、接收所述IVI服务器发送的IPv6数据包并将该IPv6数据包转发给所述IPv6客户端,所述VPN服务器同时作为访问IPv6网络的入口路由器;

所述IVI服务器与所述VPN服务器和所述路由器分别通过网线连接,用于对所接收到的IPv4地址中的IVI4地址与IPv6地址中的IVI6地址进行互相转换;

所述路由器与所述IVI服务器通过网线连接,作为访问IPv4网络的入口路由器;

其中,所述IVI4地址为私网地址。

所述IPv6客户端包括有线纯IPv6客户端、无线纯IPv6客户端、有线双栈客户端和无线双栈客户端,其中有线纯IPv6客户端和无线纯IPv6客户端只配置有IPv6地址,而不配置IPv4地址,有线双栈客户端和无线双栈客户端同时配置有IPv6地址和IPv4地址。

所述VPN服务器具有两个接口:eth0接口和eth1接口,其中,所述eth0接口连接所述IVI服务器,用于接收所述IVI服务器发送的IPv4数据包,eth1接口连接所述IPv6客户端,用于接收所述IPv6客户端发送的IPv6数据包。

所述IVI服务器包括第一网卡和第二网卡,所述第一网卡对应的第一网络接口用于接收并转发IPv4数据包到路由器,所述第二网卡对应的第二网络接口用于接收并转发IPv6数据包到路由器。

所述IVI服务器工作时,自动虚拟出两个虚拟网络接口:第一虚拟网络接口和第二虚拟网络接口,所述第一虚拟网络接口用于接收所述eth0接口转发的IPv4数据包,并将所述IPv4数据包中的源地址和目的地址转换为IVI6地址;所述第二虚拟网络接口用于接收所述eth1接口转发的IPv6数据包,并将IPv6数据包中源地址和目的地址中的IVI6地址转换为IPv4地址。

所述VPN服务器位于AC控制器。

纯IPv6客户端的用户数据到达AC控制器后,AC控制器将所述用户数据指向portal网关,由portal网关推送给portal服务器,portal服务器对所述用户数据进行认证后,转发至IVI服务器。

有线双栈IPv6客户端和无线双栈IPv6客户端的用户数据到达AC控制器后,由AC控制器进行认证之后,分别转发至IPv4网络和IVI服务器。

根据本发明另一方面,提供了一种实现IPv6地址访问IPv4资源的方法,该方法包括以下步骤:

步骤S1,为IVI服务器申请一个公网地址,并为IVI服务器指定一段私网地址;

步骤S2,为所述IVI服务器与IPv4网络之间的第一路由器配置路由信息以使所述IPv6客户端访问IPv4网络时返回的数据能够寻找到所述IVI服务器;

步骤S3,AC控制器接收IPv6客户端发送的IPv6访问请求数据包,将IPv6访问请求数据包指向portal网关,由portal网关推送给portal服务器,所述portal服务器对其认证后转发给所述IVI服务器;

步骤S4,所述portal服务器对IPv6访问请求数据包认证后,,将其转发至IVI服务器,并由IVI服务器转发,以同时访问IPv6和IPv4网络。

根据本发明第三方面,提供了一种实现IPv6地址访问IPv4资源的方法,该方法包括以下步骤:

步骤S1,为IVI服务器申请一个公网地址,并为IVI服务器指定一段私网地址;

步骤S2,为所述IVI服务器与IPv4网络之间的第一路由器配置路由信息以使所述IPv6客户端访问IPv4网络时返回的数据能够寻找到所述IVI服务器;

步骤S3,AC控制器接收有线双栈IPv6客户端发送的IPv6访问请求数据包,AC控制器对所述IPv6访问请求数据包进行认证后转发。

本发明的上述技术方案,通过VPN隧道技术在IVI服务器上实现了利用私网地址在IPv6和IPv4之间的地址转换,使得在IPv6客户端在访问IPv4资源时,IVI地址转换不需要消耗IPv4的公网地址,缓解IPv4资源的消耗问题。

附图说明

图1为IVI翻译技术中IVI4地址与IVI6地址映射关系示意图;

图2为IVI6地址的128位结构图;

图3为根据本发明一实施例中通过隧道和地址转换实现IPv6地址访问IPv4资源的系统结构图;

图4为根据本发明一实施例中通过隧道和地址转换实现IPv6地址访问IPv4资源的方法流程示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。根据本发明的实施例,能够实现在纯IPv6环境下任意地点访问IPv4网络。

IVI是一种基于SIIT的协议转换技术,可以解决IPv6网络与IPv4网络数据包的网络层翻译。IVI的主要思路是从全球IPv4地址空间(IPG4)中,取出一部分地址映射到全球IPv6地址空间(IPG6)中,如图1所示。在IPG4中,每个运营商取出一部分IPv4地址,用来在IVI过渡转换中使用,被取出的这部分IPv4地址称为IVI4地址,这部分地址不能分配给实际的真实主机使用。随着过渡转换的进行,IVI4的范围逐渐被扩大,当所有的IPv4地址都不被真实主机使用时,过渡完成。

IVI的地址映射规则是在IPv6地址中插入IPv4地址,如图2所示,图2中,第0-31位为表示ISP(Internet Service Provider,互联网服务提供商)的IPv6前缀,第32-39位设置为FF,表示这是一个IVI映射地址,第40-71位表示插入的全局IPv4空间(IVIG4)的地址格式,如IPv4/24映射为IPv6/64而IPv4/32映射为IPv6/72。

在以往的IVI应用中,IVI4地址均为可以直接访问internet的IPv4地址,也就是公网地址。这样做是为了解决IVI数据包返回时的路由问题。但是这样其实本质上并没有缓解IPv4资源的消耗问题。在本发明中,IVI4地址使用的是私网地址如192.168.1.0/24等,之后由IVI服务器使用SNAT(即源地址转换)方法将数据包的原地址,即IVI4地址,修改为本机的公网地址。这样就可以使用私网地址完成IVI转换而不需要再消耗珍贵的公网地址了。

目前绝大部分的VPN软件都是基于IPv4网络的,在IPv6环境下不可用。为了使VPN可以支持IPv6地址,需要为其打上一个IPv6补丁。如图3所示,本发明在IPv6客户端和IVI服务器之间利用VPN软件建立一个虚拟隧道,并为隧道两端的虚拟网卡配置IVI6地址,这样客户端内与IVI相关的数据,都可以从这个虚拟通道经AC(Access Controller,接入)控制器的转发到达IVI服务器。通过这个虚拟隧道,IVI的地址转换服务就脱离了客户端本地IPv6地址的限制,为任何可以连接AC控制器的客户端提供IVI服务,这使得IVI服务的应用范围得到了大大的扩展。

根据本发明的一实施例,提出了一种通过隧道和地址转换实现IPv6地址访问IPv4资源的系统,如图3所示,该系统包括:IPv6客户端、VPN服务器、IVI服务器和路由器。

其中,所述IPv6客户端包括有线纯IPv6客户端、无线纯IPv6客户端、有线双栈客户端和无线双栈客户端,其中有线纯IPv6客户端和无线纯IPv6客户端只配置有IPv6地址,而不配置IPv4地址,有线双栈客户端和无线双栈客户端同时配置有IPv6地址和IPv4地址;

所述VPN服务器与IPv6客户端通过隧道通信,与IVI服务器通过网线连接,所述VPN服务器用于接收所述IPv6客户端发送的IPv6数据包并将该IPv6数据包转发给所述IVI服务器、接收所述IVI服务器发送的IPv6数据包并将该IPv6数据包转发给所述IPv6客户端,所述VPN服务器同时作为访问IPv6网络的入口路由器;

所述隧道是通过现有技术中常用的隧道技术来建立的;

所述VPN服务器具有两个接口:eth0接口和eth1接口,其中,所述eth0接口连接所述IVI服务器,用于接收所述IVI服务器发送的IPv6数据包,eth1接口连接所述IPv6客户端,用于接收所述IPv6客户端发送的IPv6数据包;所述VPN服务器位于AC控制器上;

所述IVI服务器与所述VPN服务器和所述路由器分别通过网线连接,用于对所接收到的IPv4地址中的IVI4地址与IPv6地址中的IVI6地址进行互相转换,可同时访问IPv6和IPv4网络;

所述IVI服务器进一步包括网卡eth0和网卡eth1,即两个网络接口,所述网卡eth0对应的第一网络接口用于接收并转发IPv4数据包到路由器,所述网卡eth1对应的第二网络接口用于接收并转发IPv6数据包到路由器;

所述IVI服务器工作时,自动虚拟出两块网卡,即虚拟出两个虚拟网络接口,一个是网卡IVI0对应的第一虚拟网络接口,用于接收所述网卡eth0对应的第一网络接口转发的IPv4数据包,并将所述IPv4数据包中的源地址和目的地址转换为IVI6地址;另一个是网卡IVI1对应的第二虚拟网络接口,用于接收所述网卡eth1对应的第二网络接口转发的IPv6数据包,并将IPv6数据包中源地址和目的地址中的IVI6地址转换为IPv4地址。

所述路由器与所述IVI服务器通过网线连接,作为访问IPv4网络的入口路由器。

图4为根据本发明一实施例的通过隧道和地址转换实现IPv6地址访问IPv4资源的方法流程示意图。如图4所示,无线客户端用户想使用纯IPv6网络,接入SSID:A时,纯IPv6网络用户数据到达AC控制器,AC将数据指向H3C portal服务器,H3C portal服务器推送给H3C portal server,H3C Portal sever对其进行二女争认证,通过认证后,纯IPv6用户数据通过IVI转发,可同时访问IPv6和IPv4网络。无线客户端用户想使用IPv4网络,接入SSID:B,用户可以同时获得IPv4和IPv6的地址。有线双栈用户数据到达AC控制器后进行认证转发。

根据本发明另一实施例,提供了一种实现IPv6地址访问IPv4资源的方法,其包括:

步骤S1,为IVI服务器申请一个公网地址,并为IVI服务器指定一段私网地址;

步骤S2,为所述IVI服务器与IPv4网络之间的第一路由器配置路由信息以使所述IPv6客户端访问IPv4网络时返回的数据能够寻找到所述IVI服务器;

步骤S3,AC控制器接收IPv6客户端发送的IPv6访问请求数据包,将IPv6访问请求数据包指向portal网关,由portal网关推送给portal服务器,所述portal服务器对其认证后转发给所述IVI服务器;

步骤S4,所述portal服务器对IPv6访问请求数据包认证后,,将其转发至IVI服务器,并由IVI服务器转发,以同时访问IPv6和IPv4网络。

根据本发明另一实施例,提供了一种实现IPv6地址访问IPv4资源的方法,其包括:

步骤S1,为IVI服务器申请一个公网地址,并为IVI服务器指定一段私网地址;

步骤S2,为所述IVI服务器与IPv4网络之间的第一路由器配置路由信息以使所述IPv6客户端访问IPv4网络时返回的数据能够寻找到所述IVI服务器;

步骤S3,AC控制器接收有线双栈IPv6客户端发送的IPv6访问请求数据包,AC控制器对所述IPv4访问请求数据包进行认证后转发。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

原文链接:https://www.xjishu.com/zhuanli/62/201610709456.html

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享