IPV4网络中的终端访问IPV6网络的方法、系统、设备和介质与流程

文档序号:16544501发布日期:2019-01-08 20:45阅读:622来源:国知局
IPV4网络中的终端访问IPV6网络的方法、系统、设备和介质与流程

本发明提供了一种ipv4网络中的终端访问ipv6网络的方法、系统、设备和介质。



背景技术:

公有云通常指第三方提供商为用户提供的能够使用的云服务,例如存储服务、计算服务等。公有云一般可通过连接internet网络进行使用,目前的公有云用户使用ipv4网络。

ipv4(internetprotocolversion4)互联网协议的第四版,也是第一个被广泛使用,构成现今互联网技术的基础的协议。ipv6internetprotocolversion6互联网协议的第六版。ipv6是ietf(互联网工程任务组,internetengineeringtaskforce)设计的用于替代现行版本ip协议(ipv4)的下一代ip协议。ipv6的出现有效的解决了ipv4地址资源缺乏的问题。

但对于使用ipv4公有云用户而言,无法访问ipv6网络,因此如何连通ipv4网络和ipv6网络,进而使该公有云用户可以访问ipv6网络是需要解决的问题。



技术实现要素:

(一)要解决的技术问题

但对于使用ipv4公有云用户而言,无法访问ipv6网络,因此如何连通ipv4网络和ipv6网络,进而使该公有云用户可以访问ipv6网络是需要解决的问题。

(二)技术方案

本发明一方面提供了一种ipv4网络中的终端访问ipv6网络的方法,所述方法包括:在所述终端中创建openvpn客户端,在所述ipv6网络中创建openvpn服务端,在所述openvpn客户端与所述openvpn服务端之间建立用于传递ipv4数据包的隧道;所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包,所述openvpn客户端通过所述隧道将第一ipv4数据包发送至所述openvpn服务端,所述openvpn服务端解封第一ipv4数据包,将解封得到的ipv6数据包发送至ipv6网络服务器;所述ipv6网络服务器将其产生的第二ipv4数据包经过所述openvpn服务端发送至所述openvpn客户端。

可选地,所述终端包括物理网卡,所述openvpn客户端包含虚拟网卡;所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包包括:所述终端产生ipv6数据包,所述物理网卡将所述ipv6数据包发送至所述虚拟网卡,所述虚拟网卡将所述ipv6数据包封装为第一ipv4数据包。

可选地,所述openvpn服务端包含一个ipv4地址和一个ipv6地址,所述ipv6数据包含一个ipv6地址,所述第一ipv4数据包和所述第二ipv4数据包分别包含一个ipv4地址。

可选地,所述openvpn客户端通过所述隧道将第一ipv4数据包发送至所述openvpn服务端,所述openvpn服务端解封第一ipv4数据包,将解封得到的ipv6数据包发送至ipv6网络服务器,包括:所述openvpn客户端中的虚拟网卡将所述第一ipv4数据包发送至所述openvpn服务端的ipv4地址,所述openvpn服务端解封第一ipv4数据包,通过openvpn服务端的ipv6地址将解封得到的ipv6数据包发送至ipv6网络服务器。

可选地,所述ipv6网络服务器将其产生的第二ipv4数据包发送至所述openvpn客户端,包括:所述ipv6网络服务器将其产生的第二ipv4数据包发送至所述openvpn服务端的ipv4地址,openvpn服务端通过所述隧道将所述第二ipv4数据发送至所述openvpn客户端。

可选地,在所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包之前,还包括:对使用所述openvpn客户端的用户进行身份认证。

可选地,所述身份认证包括:通过所述openvpn客户端获取用户名和密码,将所述用户名和密码发送至openvpn服务端,openvpn服务端将所述用户名和密码转发至radius认证服务器,通过radius认证服务器进行第一身份认证。

可选地,所述通过radius服务器进行第一身份认证之后,还包括:通过所述radius服务器从计费认证服务端获取与所述用户名相对应的用户信息,将所述用户信息发送至openvpn服务端,所述用户信息包括可登录时长、带宽、使用期限;通过所述openvpn服务端根据所述用户信息对所述openvpn客户端进行第二身份认证。

本发明另一方面提供了一种ipv4网络中的终端访问ipv6网络的系统,所述系统包括:隧道创建模块,用于在所述终端中创建openvpn客户端,在所述ipv6网络中创建openvpn服务端,在所述openvpn客户端与所述openvpn服务端之间建立用于传递ipv4数据包的隧道;发送数据模块,用于所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包,所述openvpn客户端通过所述隧道将第一ipv4数据包发送至所述openvpn服务端,所述openvpn服务端解封第一ipv4数据包,将解封得到的ipv6数据包发送至ipv6网络服务器;返回数据模块,用于所述ipv6网络服务器将其产生的第二ipv4数据包经过所述openvpn服务端发送至所述openvpn客户端。

本发明又一方面提供了一种电子设备,所述设备包括:通信器,用于与服务器通信;处理器;存储器,其存储有计算机可执行程序,该程序在被所述处理器执行时,使得所述处理器执行如上文所述的用于ipv4网络中的终端访问ipv6网络的方法。

本发明再一方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上文所述的用于使ipv4与ipv6网络互通方法。

(三)有益效果

本发明基于openvpn技术,在openvpn客户端与openvpn服务端之间建立用于传递ipv4数据包的隧道,将ipv6数据包进行封装成为ipv4数据包,使其能够通过所述隧道进行传递,实现ipv4网络中的终端可以访问ipv6网络。

附图说明

图1是本发明实施例提供的ipv4网络中的终端访问ipv6网络的方法流程图;

图2是本发明实施例提供的ipv4网络中的终端访问ipv6网络的系统框图;

图3是本发明实施例提供的电子设备框图。

具体实施方式

以下,将参照附图来描述本发明的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本发明的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本发明实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

本发明的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本发明的技术可以采取存储有指令的计算机可读介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。在本发明的上下文中,计算机可读介质可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,计算机可读介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。计算机可读介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。

本发明提供了一种ipv4网络中的终端访问ipv6网络的方法,参见图1,所述方法包括:s1,在所述终端中创建openvpn客户端,在所述ipv6网络中创建openvpn服务端,在所述openvpn客户端与所述openvpn服务端之间建立用于传递ipv4数据包的隧道;s2,所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包,所述openvpn客户端通过所述隧道将第一ipv4数据包发送至所述openvpn服务端,所述openvpn服务端解封第一ipv4数据包,将解封得到的ipv6数据包发送至ipv6网络服务器;s3,所述ipv6网络服务器将其产生的第二ipv4数据包经过所述openvpn服务端发送至所述openvpn客户端。

本发明基于openvpn技术,在openvpn客户端与openvpn服务端之间建立用于传递ipv4数据包的隧道,将ipv6数据包进行封装成为ipv4数据包,使其能够通过所述隧道进行传递,实现ipv4网络中的终端可以访问ipv6网络。

本领域技术人员可以理解的是,当处于ipv4网络中的终端访问ipv6网络时,该终端会产生一个ipv6数据,例如当终端想访问一个ipv6网站,即会在终端输入该ipv6网站的ip地址,该ip地址即为一个ipv6数据,上文所述隧道可以传递ipv4数据包,无需ipv6网络,只需ipv4网络即可实现该隧道传递ipv4数据包,因此需将ipv6数据包进行封装成为ipv4数据包进行传递。而通过ipv6网络中的ipv6网络服务器在返回数据时,需将数据返回至处于ipv4网络中的终端,通常该终端的ip地址为ipv4地址,因此ipv6网络服务器产生的是一个ipv4数据,即返回数据为ipv4数据,可直接通过隧道将该ipv4数据返回至终端。也就是说,在访问一个ipv6网站时,从终端向ipv6网络服务器发送访问请求的目标地址为ipv6地址,因此在终端产生一个ipv6数据,而在ipv6网络服务器接收该访问请求之后返回数据的目标地址为ipv4地址,因此在ipv6网络服务器产生一个ipv4地址。

具体地,所述终端包括物理网卡,所述openvpn客户端包含虚拟网卡;所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包包括:所述终端产生ipv6数据包,所述物理网卡将所述ipv6数据包发送至所述虚拟网卡,所述虚拟网卡将所述ipv6数据包封装为第一ipv4数据包。所述openvpn客户端包含虚拟网卡,该虚拟网卡的创建可以通过以下方式实现:当所述终端的系统为windows系统,安装tap虚拟网卡;当所述终端的系统为linux系统,安tun或tap内核模块,并创建虚拟网卡。

进一步地,所述openvpn服务端包含一个ipv4地址和一个ipv6地址,所述ipv6数据包含一个ipv6地址,所述第一ipv4数据包和所述第二ipv4数据包分别包含一个ipv4地址。即在所述openvpn服务端上配置ipv4和ipv6的双网络地址,通过该ipv4和ipv6的双网络地址,openvpn服务端可以接收从openvpn客户端或从ipv6网络服务器发送的ipv4数据包,即当发送数据的目的地址为ipv4地址时,openvpn服务端中由于存在一个ipv4地址,ipv4数据可以传送至openvpn服务端。同时由于openvpn服务端中由于存在一个ipv6地址,可以将ipv6数据从该ipv6地址传送至ipv6网络服务器。

处于ipv4网络中的终端向ipv6网络服务器发送数据的过程为:所述openvpn客户端通过所述隧道将第一ipv4数据包发送至所述openvpn服务端,所述openvpn服务端解封第一ipv4数据包,将解封得到的ipv6数据包发送至ipv6网络服务器,包括:所述openvpn客户端中的虚拟网卡将所述第一ipv4数据包发送至所述openvpn服务端的ipv4地址,所述openvpn服务端解封第一ipv4数据包,通过openvpn服务端的ipv6地址将解封得到的ipv6数据包发送至ipv6网络服务器。

处于ipv4网络中的终端接收ipv6网络服务器发送的数据的过程为:所述ipv6网络服务器将其产生的第二ipv4数据包发送至所述openvpn客户端,包括:所述ipv6网络服务器将其产生的第二ipv4数据包发送至所述openvpn服务端的ipv4地址,openvpn服务端通过所述隧道将所述第二ipv4数据发送至所述openvpn客户端。

另外,在所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包之前,还包括:对使用所述openvpn客户端的用户进行身份认证。具体地,所述身份认证包括:通过所述openvpn客户端获取用户名和密码,将所述用户名和密码发送至openvpn服务端,openvpn服务端将所述用户名和密码转发至radius认证服务器,通过radius认证服务器进行第一身份认证。即用户需要输入用户名和密码,通过该第一身份认证之后才能通过登录该openvpn客户端进行访问ipv6网络。

优选地,所述通过radius服务器进行第一身份认证之后,还包括:通过所述radius服务器从计费认证服务端获取与所述用户名相对应的用户信息,将所述用户信息发送至openvpn服务端,所述用户信息包括可登录时长、带宽、使用期限;通过所述openvpn服务端根据所述用户信息对所述openvpn客户端进行第二身份认证。即在通过第一身份认证之后,还需对用户的登录时长、带宽、使用期限等信息进行确认,确认用户可以通过终端中openvpn客户端访问ipv6网络的使用期限、带宽等,在满足该用户信息的情况下,用户可以通过登录openvpn客户端进行访问ipv6网络,若不满足该用户信息,用户则无法通过第二身份认证,不能通过登录openvpn客户端进行访问ipv6网络。

本领域技术人员可以理解的是,上述第一身份认证及第二身份认证为在所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包之前,即通过身份认证之后实现所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包。但本发明的技术方案对通过身份认证之后在具体哪个步骤实现ipv4终端访问ipv6网络不进行限制,只是需要在身份认证之后才实现数据的接收与发送即可。例如通过第一身份认证及第二身份认证之后,所述openvpn服务端实现分配ipv4地址及ipv6地址,使所述openvpn服务端包含ipv4地址及ipv6地址。

需要说明的是,用户在第一次使用openvpn客户端时,需进行用户注册,注册时需输入用户邮箱,将激活请求发送至从计费认证服务端,通过从计费认证服务端向用户注册时使用的用户邮箱发送激活邮件,用户通过所述激活邮件进行激活,将从openvpn客户端中获取的用户名、密码信息保存至radius认证服务器中,将可登录时长、带宽、使用期限等保存至计费认证服务端中。以便用户后续可以从openvpn客户端通过用户名、密码登录,登录成功即为上文所述的第一身份和\或第二身份认证成功,登录成功之后即可实现ipv4网络中的终端访问ipv6网络。

需要说明的是,本发明中所述ipv4网络中的终端可以是位于ipv4公有云中的虚拟机,在一个实施例中,本发明包括3个openvpn服务端,可以实现负载均衡。

本发明实施例还提供了一种ipv4网络中的终端访问ipv6网络的系统,参见图2,所述系统200包括:隧道创建模块210,用于在所述终端中创建openvpn客户端,在所述ipv6网络中创建openvpn服务端,在所述openvpn客户端与所述openvpn服务端之间建立用于传递ipv4数据包的隧道;发送数据模块220,用于所述openvpn客户端将所述终端产生的ipv6数据包封装为第一ipv4数据包,所述openvpn客户端通过所述隧道将第一ipv4数据包发送至所述openvpn服务端,所述openvpn服务端解封第一ipv4数据包,将解封得到的ipv6数据包发送至ipv6网络服务器;返回数据模块230,用于所述ipv6网络服务器将其产生的第二ipv4数据包经过所述openvpn服务端发送至所述openvpn客户端。

另外,本发明提供了一种电子设备200,包括:通信器,用于与服务器通信;处理器;存储器,其存储有计算机可执行程序,该程序包含如上文所述ipv4网络中的终端访问ipv6网络的方法。

图3示意性示出了根据本发明实施例的电子设备框图。

如图3所示,所述电子设备300包括通信器310、处理器320和存储器330。该电子设备300可以执行根据本发明实施例的方法。

具体地,处理器320例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic)),等等。处理器320还可以包括用于缓存用途的板载存储器。处理器320可以是用于执行根据本发明实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

存储器330,例如可以是能够包含、存储、传送、传播或传输指令的任意介质。例如,可读存储介质可以包括但不限于电、磁、光、电磁、红外或半导体系统、装置、器件或传播介质。可读存储介质的具体示例包括:磁存储装置,如磁带或硬盘(hdd);光存储装置,如光盘(cd-rom);存储器,如随机存取存储器(ram)或闪存;和/或有线/无线通信链路。其存储有计算机可执行程序,该程序在被所述处理器执行时,使得所述处理器执行如上文所述ipv4网络中的终端访问ipv6网络的方法。

本发明还提供了一种计算机可读介质,其上存储有计算机程序,该程序包含如上文所述的网络靶场云平台系统。该计算机可读介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本发明实施例的方法。

根据本发明的实施例,计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线、光缆、射频信号等等,或者上述的任意合适的组合。

本领域技术人员可以理解,本发明的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本发明中。特别地,在不脱离本发明精神和教导的情况下,本发明的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本发明的范围。

尽管已经参照本发明的特定示例性实施例示出并描述了本发明,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本发明的精神和范围的情况下,可以对本发明进行形式和细节上的多种改变。因此,本发明的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

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