CN115701692A - 基于IPSec协议的VPN终端通信系统及方法 - Google Patents
基于IPSec协议的VPN终端通信系统及方法 Download PDFInfo
- Publication number
- CN115701692A CN115701692A CN202110880062.6A CN202110880062A CN115701692A CN 115701692 A CN115701692 A CN 115701692A CN 202110880062 A CN202110880062 A CN 202110880062A CN 115701692 A CN115701692 A CN 115701692A
- Authority
- CN
- China
- Prior art keywords
- vpn
- terminal
- key
- address
- public network
- 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
本申请提供一种基于IPSec协议的VPN终端通信系统及方法,能够解决相关技术中基于IPSec协议建立的VPN隧道在动态NAT的环境中难以实现通信的问题,从而提高VPN隧道中信息数据传输的准度和效率。该VPN终端通信系统包括第一VPN终端、第二VPN终端和VPN中心端;第一VPN终端用于:基于第一密钥加密数据以生成数据包,并向VPN中心端发送数据包;VPN中心端用于:获取数据包中的第一安全参数索引和公网IP,在确认公网IP与预设的第一公网IP不同时,更新第一公网IP;VPN中心端还用于:基于第一密钥,解密数据包中的加密数据;基于第二密钥,加密第一通信数据;向第二VPN终端发送加密后的第一通信数据;第二VPN终端用于:基于第二密钥,解密加密后的第一通信数据。
Description
技术领域
本申请涉及通信领域,尤其涉及一种基于IPSec协议的VPN终端通信系统及方法。
背景技术
随着网络空间的不断扩大,IPv4地址即将耗尽。NAT(英文:Network AddressTranslation;中文:网络地址转换)技术使得私有网络内部的多个设备可以使用一个外部IP地址接入公共网络,极大的减缓了IPv4地址耗尽的速度。
IPSec VPN是利用IPSec(英文:Internet Protocol Security;中文:互联网安全协议)协议来实现远程接入的一种VPN(英语:Virtual Private Network;中文:虚拟专用网络)技术。IPSec VPN基于密码技术,在公网上通过处于两个私有网络的VPN中心端和VPN终端为该两个私有网络构建安全可靠的通信通道(隧道)。
IPSec VPN是一种比较成熟的技术,但是,当连接于不同VPN终端下的终端设备处于使用NAT技术的不同的局域网内时,不同局域网内部的终端设备的网络地址可能存在冲突(即两个不同VPN终端下的终端设备的局域网内部IP地址相同),这会导致VPN中心端不能识别不同VPN终端下的终端设备。
发明内容
本申请实施例提供一种基于IPSec协议的VPN终端通信系统及方法,能够解决相关技术中基于IPSec协议建立的VPN隧道在动态NAT的环境中难以实现通信的问题,从而提高VPN隧道中信息数据传输的准度和效率。
为达到上述目的,本申请采用如下技术方案:
第一方面,提供一种基于IPSec协议的VPN终端通信系统,包括第一VPN终端、第二VPN终端和VPN中心端;其中,所述VPN中心端设有数据库,所述数据库关联存储有第一密钥、第一安全参数索引、第一局域网内部IP地址和第一公网IP、以及关联存储有第二密钥、第二安全参数索引、第二局域网内部IP地址和第二公网IP;所述第一VPN终端用于:基于所述第一密钥加密数据以生成数据包,并向所述VPN中心端发送所述数据包;其中,所述数据包中包括第一安全参数索引;所述数据包括所述第二局域网内部IP地址以及与第二终端设备通信的第一通信数据,所述第二终端设备连接于第二VPN终端;所述VPN中心端用于:获取所述数据包中的第一安全参数索引和公网IP,在确认所述公网IP与预设的第一公网IP不同时,更新所述第一公网IP;所述VPN中心端还用于:基于所述第一密钥,解密所述数据包中的加密数据;基于所述第二密钥,加密所述第一通信数据;向所述第二VPN终端发送加密后的所述第一通信数据;所述第二VPN终端用于:基于所述第二密钥,解密加密后的所述第一通信数据。
基于该VPN终端通信系统,VPN终端的公网IP与安全参数索引关联存储,当动态NAT的环境中VPN终端的公网IP发生变化时,交互的数据包中安全参数索引没有变化,进而可以根据根据安全参数索引更新VPN终端的公网IP,可以解决相关技术中基于IPSec协议建立的VPN隧道在动态NAT的环境中难以实现通信的问题,从而提高VPN隧道中信息数据传输的准度和效率。
可选地,所述第二VPN终端还用于:基于所述第二密钥,加密第一局域网内部IP地址以及与第一终端设备通信的第二通信数据以生成反馈数据包;向所述VPN中心端发送所述反馈数据包;其中,所述反馈数据包包括所述第二安全参数索引,所述第一终端设备连接于所述第一VPN终端;所述VPN中心端还用于:获取所述反馈数据包中的所述第二安全参数索引和公网IP;在确认该公网IP与预设的第二公网IP不同时,更新所述第二公网IP;基于所述第二密钥,解密所述反馈数据包以获取所述第一局域网内部IP地址以及所述第二通信数据;基于所述第一密钥,加密所述第二通信数据;向所述第一VPN终端发送加密后的所述第二通信数据;所述第一VPN终端还用于:基于所述第一密钥,解密加密后的所述第二通信数据。
可选地,所述第一VPN终端和第二VPN终端还用于向所述VPN中心端发送注册申请;其中,所述注册申请包括所述第一VPN终端和第二VPN终端的密钥协商请求、第一终端设备和第二终端设备的局域网内部IP地址分配请求、所述第一VPN终端的第一公网IP和所述第二VPN终端的第二公网IP;所述VPN中心端还用于:基于IPSec协议与所述第一VPN终端以及所述第二VPN终端密钥协商,获取第一密钥、与所述第一密钥对应的第一安全参数索引、第二密钥以及与所述第二密钥对应的第一安全参数索引;为所述第一终端设备和所述第二终端设备对应分配第一局域网内部IP地址和第二局域网内部IP地址;将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP、以及所述第二密钥、所述第二安全参数索引、所述第二局域网内部IP地址和所述第二公网IP关联存储于所述数据库内;所述VPN中心端还用于:向所述第一VPN终端、所述第二VPN终端对应发送所述第一局域网内部IP地址和所述第二局域网内部IP地址;所述第一VPN终端还用于为所述第一终端设备分配所述第一局域网内部IP地址;所述第二VPN终端还用于为所述第二终端设备分配所述第二局域网内部IP地址。
可选地,所述VPN中心端还用于从IP地址池中选择一IP地址作为第一局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
可选地,所述VPN中心端还用于从IP地址池中选择一IP地址作为第二局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
可选地,所述VPN中心端还用于确认在预设时间段内没有接收到所述第一VPN终端的数据时,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN中心端还用于确认在预设时间段内没有接收到所述第二VPN终端的数据时,删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
可选地,所述VPN中心端还用于接收用于指示删除所述第一VPN终端信息的指令时,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN中心端还用于接收用于指示删除所述第二VPN终端信息的指令时,删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
第二方面,提供一种VPN终端通信方法,包括:第一VPN终端基于预设的第一密钥加密数据以生成数据包,并向VPN中心端发送所述数据包;其中,所述数据包中包括第一安全参数索引;所述数据包括第二局域网内部IP地址以及与第二终端设备通信的第一通信数据,所述第二终端设备连接于第二VPN终端;所述VPN中心端获取所述数据包中的第一安全参数索引和公网IP,并在预设的数据库中确认存在第一安全参数索引但所述数据库中不存在所述公网IP后,更新所述数据库中的第一公网IP;所述VPN中心端基于与所述第一安全参数索对应的第一密钥,解密所述数据包中的加密数据;所述VPN中心端基于所述数据库与所述第二局域网内部IP地址对应的第二密钥,加密所述第一通信数据;所述VPN中心端向所述第二VPN终端发送加密后的所述第一通信数据;所述第二VPN终端基于所述第二密钥,解密加密后的所述第一通信数据。
此外,第二方面所述的VPN终端通信方法的技术效果可以参考第一方面所述的VPN终端通信系统的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的VPN通信的架构示意图;
图2为本申请实施例提供的VPN终端接入方法的流程示意图;
图3为本申请实施例提供的VPN终端通信方法的流程示意图;
图4为本申请实施例提供的基于IPSec协议的VPN终端通信方法的流程示意图;
图5为本申请实施例提供的VPN中心端的结构示意图一;
图6为本申请实施例提供的VPN中心端的结构示意图二。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例的技术方案可以应用于各种通信系统,例如无线保真(wirelessfidelity,WiFi)系统,车到任意物体(vehicle to everything,V2X)通信系统、设备间(device-todevie,D2D)通信系统、车联网通信系统、第4代(4th generation,4G)移动通信系统,如长期演进(long term evolution,LTE)系统、全球互联微波接入(worldwideinteroperability for microwave access,WiMAX)通信系统、第五代(5th generation,5G)移动通信系统,如新空口(new radio,NR)系统,以及未来的通信系统,如第六代(6thgeneration,6G)移动通信系统等。
本申请将围绕可包括多个设备、组件、模块等的系统来呈现各个方面、实施例或特征。应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
另外,在本申请实施例中,“示例地”、“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
本申请实施例中,“信息(information)”,“信号(signal)”,“消息(message)”,“信道(channel)”、“信令(singaling)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。“的(of)”,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
为便于理解本申请实施例,首先以图1中示出的VPN通信的架构为例详细说明适用于本申请实施例的基于IPSec协议的VPN终端通信系统。
如图1所示,该VPN通信的架构包括一种基于IPSec协议的VPN终端通信系统。该VPN终端通信系统包括第一VPN终端、第二VPN终端和VPN中心端。其中,第一VPN终端设有第一终端设备接口,第一VPN终端通过第一终端设备接口连接于第一终端设备。第二VPN终端设有第二终端设备接口,第二VPN终端通过第二终端设备接口连接于第而终端设备。VPN中心端设有服务器接口,VPN中心端通过服务器接口连接于服务器。
其中,第一VPN终端可以基于IPSec协议与VPN中心端协商密钥,协商后生成第一密钥,进而在第一VPN终端和VPN中心端之间构建第一VPN隧道。第一VPN终端与VPN中心端在进行数据交互时,可以通过第一密钥对交互数据进行加密以保障交互数据的安全。
第二VPN终端可以基于IPSec协议与VPN中心端协商密钥,协商后生成第二密钥,进而在第二VPN终端和VPN中心端之间构建第二VPN隧道。第二VPN终端与VPN中心端在进行数据交互时,可以通过第二密钥对交互数据进行加密以保障交互数据的安全。
例如,第一终端设备与第二终端设备进行数据交互时,可以通过第一VPN隧道和第二VPN隧道。第一终端设备生成的第一数据包通过第一终端设备接口上传至第一VPN终端。第一VPN终端基于第一密钥将第一终端设备的第一数据包加密并向VPN中心端发送加密后的第一数据包。VPN中心端基于第一密钥解密第一数据包,并基于第二密钥,对解密后的数据加密以形成第二数据包并向第二VPN终端发送第二数据包。第二VPN终端则基于第二密钥解密第二数据包。
可选地,如图1所示,该VPN终端通信系统还可以包括连接于第一VPN终端的第一公网路由器和连接于第二VPN终端的第二公网路由器。第一公网路由器用于对所述第一数据包执行NAT(Network Address Translation;中文:网络地址转换)处理,并向所述VPN中心端发送处理后的所述第一数据包。第二公网路由器用于对所述第二数据包执行NAT处理,并向所述第二VPN终端发送处理后的所述第二数据包。
可选地,如图1所示,该VPN终端通信系统还可以包括连接于所述第一VPN终端的第一量子随机数发生器、连接于所述VPN中心端的中心量子随机数发生器和连接于所述第二VPN终端的第二量子随机数发生器。
需要说明的是,第一VPN终端基于IPSec协议与VPN中心端协商密钥以及第二VPN终端基于IPSec协议与VPN中心端协商密钥时,需要互相发送随机数。为了提升安全性,第一VPN终端可以向VPN中心端发送第一量子随机数发生器生成的量子随机数,VPN中心端可以向第一VPN终端发送中心量子随机数发生器生成的量子随机数;第二VPN终端可以向VPN中心端发送第二量子随机数发生器生成的量子随机数,VPN中心端可以向第二VPN终端发送中心量子随机数发生器生成的量子随机数。
上述第一终端设备和第二终端设备也可以称为用户装置、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。本申请的实施例中的终端设备可以是手机(mobile phone)、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smartcity)中的无线终端、智慧家庭(smart home)中的无线终端、车载终端、具有终端功能的RSU等。本申请的终端设备还可以是作为一个或多个部件或者单元而内置于车辆的车载模块、车载模组、车载部件、车载芯片或者车载单元,车辆通过内置的所述车载模块、车载模组、车载部件、车载芯片或者车载单元可以实施本申请提供的通信方法。
应当指出的是,本申请实施例中的方案还可以应用于其他通信系统中,相应的名称也可以用其他通信系统中的对应功能的名称进行替代。
应理解,图1仅为便于理解而示例的简化示意图,该VPN通信系统中还可以包括其他网络设备,和/或,其他终端设备,图1中未予以画出。
下面将结合图2-图4对图1中VPN通信的架构所能实现的通信方法进行具体阐述。
实施例一
示例性地,图2为本申请实施例提供的VPN终端接入方法的流程示意图。该VPN终端接入方法可以适用于图1所示的VPN中心端与任意VPN终端两个节点之间的通信。
如图2所示,该VPN终端接入方法应用于VPN中心端。该VPN终端接入方法可以包括如下步骤:
S201,接收第一VPN终端的注册申请;其中,所述注册申请包括所述第一VPN终端的密钥协商请求、终端设备的局域网内部IP地址分配请求和所述第一VPN终端的第一公网IP,所述终端设备连接于所述第一VPN终端。在图1中,所述终端设备为第一终端设备。
S202,基于IPSec协议与所述第一VPN终端密钥协商,获取第一密钥以及与所述第一密钥对应的第一安全参数索引。
S203,为所述终端设备分配第一局域网内部IP地址。
可选地,为所述终端设备分配第一局域网内部IP地址,包括以下步骤:从IP地址池中选择一IP地址以作为第一局域网内部IP地址;在所述IP地址池中删除所述IP地址。
S204,将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP关联存储。
需要说明的是,所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址在VPN中心端和第一VPN终端均关联存储。
S205,向所述第一VPN终端发送所述第一局域网内部IP地址。
执行完步骤S205后,该VPN终端接入方法还可以包括如下步骤:VPN中心端接收一VPN终端的数据包;VPN中心端获取所述数据包中的安全参数索引;VPN中心端确认所述安全参数索引为所述第一安全参数索引;基于所述第一密钥,VPN中心端解密所述数据包中的加密数据;VPN中心端向服务器发送解密后的数据。
其中,所述安全参数索引为所述数据包中的未加密部分,VPN中心端不需要解密就可以获取所述数据包中的安全参数索引。
需要说明的是,确认所述安全参数索不是第一安全参数索引和已经存储的其它安全参数索引时,可以不用处理该数据包。
进一步地,在确认所述安全参数索引为所述第一安全参数索引之后,该VPN终端接入方法还可以包括如下步骤:VPN中心端获取所述数据包中的公网IP;VPN中心端确认所述公网IP不同于所述第一公网IP;VPN中心端更新所述第一公网IP,即将所述数据包中的公网IP作为第一公网IP。
可选地,VPN终端接入方法还可以包括如下步骤:VPN中心端从服务器接收需要发送给所述第一VPN终端的反馈数据;VPN中心端基于所述第一密钥,加密所述反馈数据;基于所述第一公网IP,VPN中心端向所述第一VPN终端发送加密后的所述反馈数据。
可选地,VPN终端接入方法还可以包括如下步骤:VPN中心端确认在预设时间段内没有接收到所述第一VPN终端的数据;VPN中心端删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。其中,所述预设时间段内可以人为设置的时间段,对此,本申请不做具体限定。
可选地,VPN终端接入方法还可以包括如下步骤:VPN中心端接收用于指示删除所述第一VPN终端信息的指令;VPN中心端删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
请参考图1,第一终端设备和第二终端设备为位于两个不同局域网内,这导致原先分配给两个终端设备的局域网地址均为192.168.1.101,这会导致VPN中心端不易识别第一终端设备和第二终端设备。基于该实施例中的VPN终端接入方法,VPN中心端可以给第一终端设备和第二终端设备分配不同的局域网内部地址,分配给第一终端设备的局域网地址为10.1.2.57,分配给第一终端设备的局域网地址为10.1.2.60。
以分配局域网地址后,对第一终端设备访问服务器的数据流程进行阐述。
第一终端设备向第一VPN终端发送数据包,此时,该数据包的源IP为192.168.1.101,目的IP为服务器的IP地址192.168.0.100。
第一VPN终端对该数据包做SNAT(SourceNAT;修改源地址)处理并进行IPSec协议封装(即加密)为第一ESP(EncapsulateSecurityPayload;封装安全载荷)包,此时,该第一ESP包的源IP包括分配给第一终端设备的局域网地址为10.1.2.57和第一VPN终端的IP地址192.168.1.200,目的IP包括服务器的IP地址192.168.0.100和VPN中心端的IP地址172.221.75.64。
接着,第一VPN终端向第一公网路由器发送第一ESP包。第一公网路由器对第一ESP包做NAT处理,此时,处理后的第一ESP包的源IP则为第一公网IP地址172.221.6.88,目的IP为VPN中心端的IP地址172.221.75.64。
接着,第一公网路由器上传第一ESP包到VPN中心端,VPN中心端基于第一密钥进行解密并交付给服务器解密数据。此时,解密数据的源IP为第一终端设备的局域网地址10.1.2.57,目的IP为服务器的IP地址192.168.0.100。VPN中心端在此阶段需要检查第一公网IP是否有变化,如果与之前存储的公网IP地址不同,则更新第一公网IP。
服务器对接收的解密数据处理,如果需要应答,则向VPN中心端发送反馈数据。此时,反馈数据的源IP为服务器的IP地址192.168.0.100,目的IP为第一终端设备的局域网地址10.1.2.57。
接着,VPN中心端对反馈的数据进行IPSec协议封装为第二ESP包。此时,第二ESP包的源IP为VPN中心端的IP地址172.221.75.64,目的IP为第一公网IP地址172.221.6.88。
接着,VPN中心端向第一公网路由器发送第二ESP包。第一公网路由器对第二ESP包做NAT处理,此时,处理后的第二ESP包的源IP则为VPN中心端的IP地址172.221.75.64,目的IP为第一VPN终端的IP地址192.168.1.200。
接着,第一公网路由器向第一VPN终端发送处理后第二ESP包。第一VPN终端基于第一密钥进行解密,并根据对第一ESP包做SNAT处理的过程,对解密后的反馈数据的目的IP地址进行转换。
即,处理后的反馈数据的源IP则为服务器的IP地址192.168.0.100,目的IP为分配给第一终端设备的局域网地址为10.1.2.57,目的IP需要进行转换,转换后的目的IP为192.168.1.101。由于此时的反馈数据在第一终端设备所在的局域网内,转换为与第二终端设备相同局域网地址后,并不会引起冲突。
最后,第一终端设备收到应答的反馈数据。此时,反馈数据的源IP则为服务器的IP地址192.168.0.100,目的IP为192.168.1.101。
基于该VPN终端接入方法,VPN中心端为VPN终端下的终端设备分配局域网内部地址,进而VPN中心端可以为不同的局域网内的终端设备分配不同的局域网内部地址,可以解决相关技术中VPN中心端不能识别使用NAT技术的不同的局域网内的VPN终端下的终端设备的问题,从而提高VPN隧道中信息数据传输的准度和效率。
实施例二
示例性地,图3为本申请实施例提供的VPN终端通信方法的流程示意图。该VPN终端通信方法可以适用于图1所示的VPN中心端与任意VPN终端两个节点之间的通信。
如图3所示,该VPN终端通信方法应用于VPN中心端,所述VPN中心端设有数据库,所述数据库关联存储有第一密钥、第一安全参数索引、第一局域网内部IP地址和第一公网IP。该VPN终端通信方法可以包括如下步骤:
S301,接收一VPN终端的数据包。
S302,获取所述数据包中的安全参数索引和公网IP。
S303,确认所述安全参数索引为所述第一安全参数索引但所述数据库中不存在所述公网IP。
S304,更新所述第一公网IP。
S305,基于所述第一密钥,解密所述数据包中的加密数据。
S306,向服务器发送解密后的数据。
可选地,所述VPN终端通信方法还可以包括如下步骤:VPN中心端从所述服务器接收反馈数据;VPN中心端确认所述反馈数据的目标IP为第一局域网内部IP地址;基于所述第一密钥,VPN中心端加密所述反馈数据;基于所述第一公网IP,VPN中心端向所述VPN终端发送加密后的所述反馈数据。
可选地,所述VPN终端通信方法还可以包括如下步骤:VPN中心端接收第一VPN终端的注册申请;其中,所述注册申请包括所述第一VPN终端的密钥协商请求、终端设备的局域网内部IP地址分配请求和所述第一VPN终端的第一公网IP,所述终端设备连接于所述第一VPN终端;VPN中心端基于IPSec协议与所述第一VPN终端密钥协商,获取第一密钥以及与所述密钥对应的第一安全参数索引;VPN中心端为所述终端设备分配第一局域网内部IP地址;VPN中心端将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP关联存储于数据库内;VPN中心端向所述第一VPN终端发送所述第一局域网内部IP地址。
其中,所述为所述终端设备分配第一局域网内部IP地址,包括如下步骤:VPN中心端从IP地址池中选择一IP地址以作为第一局域网内部IP地址;VPN中心端在所述IP地址池中删除所述IP地址。
可选地,所述VPN终端通信方法还可以包括如下步骤:VPN中心端从服务器接收需要发送给所述第一VPN终端的反馈数据;基于所述第一密钥,VPN中心端加密所述反馈数据;基于所述第一公网IP,VPN中心端向所述第一VPN终端发送加密后的所述反馈数据。
可选地,VPN终端通信方法还可以包括如下步骤:VPN中心端从服务器接收需要发送给所述第一VPN终端的反馈数据;VPN中心端基于所述第一密钥,加密所述反馈数据;基于所述第一公网IP,VPN中心端向所述第一VPN终端发送加密后的所述反馈数据。
可选地,VPN终端通信方法还可以包括如下步骤:VPN中心端确认在预设时间段内没有接收到所述第一VPN终端的数据;VPN中心端删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。其中,所述预设时间段内可以人为设置的时间段,对此,本申请不做具体限定。
可选地,VPN终端通信方法还可以包括如下步骤:VPN中心端接收用于指示删除所述第一VPN终端信息的指令;VPN中心端删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
基于该VPN终端通信方法,VPN终端的公网IP与安全参数索引关联存储,当动态NAT的环境中VPN终端的公网IP发生变化时,交互的数据包中安全参数索引没有变化,进而可以根据根据安全参数索引更新VPN终端的公网IP,可以解决相关技术中基于IPSec协议建立的VPN隧道在动态NAT的环境中难以实现通信的问题,从而提高VPN隧道中信息数据传输的准度和效率。
实施例三
示例性地,请继续参考图1,该VPN通信的架构包括一种VPN终端接入系统。该VPN终端接入系统包括第一VPN终端和VPN中心端。
其中,所述第一VPN终端用于向所述VPN中心端发送注册申请。所述注册申请包括所述第一VPN终端的密钥协商请求、终端设备的局域网内部IP地址分配请求和所述第一VPN终端的第一公网IP,所述终端设备连接于所述第一VPN终端。
所述VPN中心端基于IPSec协议用于:与所述第一VPN终端密钥协商,获取第一密钥以及与所述密钥对应的第一安全参数索引;为所述终端设备分配第一局域网内部IP地址,并将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP关联存储;向所述第一VPN终端发送所述第一局域网内部IP地址。
所述第一VPN终端还用于为所述终端设备分配所述第一局域网内部IP地址。
可选地,所述VPN中心端还用于从IP地址池中选择一IP地址以作为第一局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
可选地,所述第一VPN终端还用于:基于所述第一密钥加密数据以生成数据包,并向所述VPN中心端发送所述数据包;其中,所述数据包中包括安全参数索引。所述VPN中心端还用于:获取所述数据包中的所述安全参数索引;在确认所述安全参数索引为所述第一安全参数索引后,基于所述第一密钥,解密所述数据包中的加密数据;向服务器发送解密后的数据。
可选地,在确认所述安全参数索引为所述第一安全参数索引之后,所述VPN中心端还用于:获取所述数据包中的公网IP;确认所述公网IP不同于所述第一公网IP;更新所述第一公网IP。
可选地,所述VPN中心端还用于:从服务器接收需要发送给所述第一VPN终端的反馈数据,并基于所述第一密钥,加密所述反馈数据;基于所述第一公网IP,向所述第一VPN终端发送加密后的所述反馈数据。所述第一VPN终端还用于:基于所述第一密钥,解密所述反馈数据。
可选地,所述VPN中心端还用于确认在预设时间段内没有接收到所述第一VPN终端的数据后,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN中心端还用于在接收用于指示删除所述第一VPN终端信息的指令后,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
基于该实施例中VPN终端接入系统的一种VPN终端接入方法,可以包括如下步骤:所述第一VPN终端向所述VPN中心端发送注册申请;其中,所述注册申请包括所述第一VPN终端的密钥协商请求、终端设备的局域网内部IP地址分配请求和所述第一VPN终端的第一公网IP,所述终端设备连接于所述第一VPN终端;所述VPN中心端基于IPSec协议与所述第一VPN终端密钥协商,获取第一密钥以及与所述密钥对应的第一安全参数索引;所述VPN中心端为所述终端设备分配第一局域网内部IP地址,并将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP关联存储;所述VPN中心端向所述第一VPN终端发送所述第一局域网内部IP地址;所述第一VPN终端为所述终端设备分配所述第一局域网内部IP地址。
可选地,所述VPN中心端为所述终端设备分配第一局域网内部IP地址,可以包括如下步骤:所述VPN中心端从IP地址池中选择一IP地址以作为第一局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
可选地,基于该实施例中VPN终端接入系统的一种VPN终端接入方法,还可以包括如下步骤:所述第一VPN终端基于所述第一密钥加密数据以生成数据包,并向所述VPN中心端发送所述数据包;其中,所述数据包中包括安全参数索引;所述VPN中心端获取所述数据包中的所述安全参数索引,在确认所述安全参数索引为所述第一安全参数索引后,基于所述第一密钥,解密所述数据包中的加密数据;所述VPN中心端向服务器发送解密后的数据。
基于该VPN终端接入系统,VPN中心端为VPN终端下的终端设备分配局域网内部地址,进而VPN中心端可以为不同的局域网内的终端设备分配不同的局域网内部地址,可以解决相关技术中VPN中心端不能识别使用NAT技术的不同的局域网内的VPN终端下的终端设备的问题,从而提高VPN隧道中信息数据传输的准度和效率。
实施例四
示例性地,请继续参考图1,该VPN通信的架构包括一种VPN终端通信系统。该VPN终端通信系统包括第一VPN终端和VPN中心端。其中,所述VPN中心端设有数据库,所述数据库关联存储有第一密钥、第一安全参数索引、第一局域网内部IP地址和第一公网IP。
所述第一VPN终端用于:基于所述第一密钥加密数据以生成数据包,并向所述VPN中心端发送所述数据包;其中,所述数据包中包括安全参数索引。
所述VPN中心端用于获取所述数据包中的安全参数索引和公网IP,并在确认所述安全参数索引为所述第一安全参数索引但所述数据库中不存在所述公网IP后,更新所述第一公网IP;基于所述第一密钥,解密所述数据包中的加密数据,并向服务器发送解密后的数据。
可选地,所述VPN中心端还用于:从所述服务器接收反馈数据;在确认所述反馈数据的目标IP为第一局域网内部IP地址后,基于所述第一密钥,加密所述反馈数据;基于所述第一公网IP,向所述VPN终端发送加密后的所述反馈数据。所述第一VPN终端还用于基于所述第一密钥,解密所述反馈数据。
可选地,所述第一VPN终端还用于向所述VPN中心端发送注册申请;其中,所述注册申请包括所述第一VPN终端的密钥协商请求、终端设备的局域网内部IP地址分配请求和所述第一VPN终端的第一公网IP,所述终端设备连接于所述第一VPN终端。
所述VPN中心端基于IPSec协议还用于与所述第一VPN终端密钥协商,获取第一密钥以及与所述密钥对应的第一安全参数索引;为所述终端设备分配第一局域网内部IP地址,并将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP关联存储于数据库内;向所述第一VPN终端发送所述第一局域网内部IP地址。
所述第一VPN终端还用于为所述终端设备分配所述第一局域网内部IP地址。
可选地,所述VPN中心端还用于从IP地址池中选择一IP地址以作为第一局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
可选地,所述VPN中心端还用于:从服务器接收需要发送给所述第一VPN终端的反馈数据,并基于所述第一密钥,加密所述反馈数据;基于所述第一公网IP,向所述第一VPN终端发送加密后的所述反馈数据。所述第一VPN终端还用于:基于所述第一密钥,解密所述反馈数据。
可选地,所述VPN中心端还用于确认在预设时间段内没有接收到所述第一VPN终端的数据后,在所述数据库中删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN中心端还用于在接收用于指示删除所述第一VPN终端信息的指令后,在所述数据库中删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
基于该实施例中VPN终端通信系统的一种VPN终端通信方法,可以包括如下步骤:第一VPN终端基于预设的第一密钥加密数据以生成数据包,并向VPN中心端发送所述数据包;其中,所述数据包中包括安全参数索引;所述VPN中心端获取所述数据包中的安全参数索引和公网IP,并在预设的数据库中确认所述安全参数索引为所述第一安全参数索引但所述数据库中不存在所述公网IP后,更新所述数据库中的第一公网IP;所述VPN中心端基于与所述第一安全参数索对应的第一密钥,解密所述数据包中的加密数据,并向服务器发送解密后的数据。
可选地,基于该实施例中VPN终端通信系统的一种VPN终端通信方法,还可以包括如下步骤:所述VPN中心端从所述服务器接收反馈数据,并在确认所述反馈数据的目标IP为第一局域网内部IP地址后,基于所述第一密钥,加密所述反馈数据;所述VPN中心端基于所述第一公网IP,向所述VPN终端发送加密后的所述反馈数据;所述第一VPN终端基于所述第一密钥,解密所述反馈数据。
可选地,基于该实施例中VPN终端通信系统的一种VPN终端通信方法,还可以包括如下步骤:所述第一VPN终端向所述VPN中心端发送注册申请;其中,所述注册申请包括所述第一VPN终端的密钥协商请求、终端设备的局域网内部IP地址分配请求和所述第一VPN终端的第一公网IP,所述终端设备连接于所述第一VPN终端;所述VPN中心端基于IPSec协议与所述第一VPN终端密钥协商,获取第一密钥以及与所述密钥对应的第一安全参数索引;所述VPN中心端为所述终端设备分配第一局域网内部IP地址,并将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP关联存储于数据库内;所述VPN中心端向所述第一VPN终端发送所述第一局域网内部IP地址;所述第一VPN终端为所述终端设备分配所述第一局域网内部IP地址。
基于该VPN终端通信系统,VPN终端的公网IP与安全参数索引关联存储,当动态NAT的环境中VPN终端的公网IP发生变化时,交互的数据包中安全参数索引没有变化,进而可以根据根据安全参数索引更新VPN终端的公网IP,可以解决相关技术中基于IPSec协议建立的VPN隧道在动态NAT的环境中难以实现通信的问题,从而提高VPN隧道中信息数据传输的准度和效率。
实施例五
示例性地,图4为本申请实施例提供的基于IPSec协议的VPN终端通信方法的流程示意图。该VPN终端通信方法可以适用于图1所示的VPN中心端与任意两个VPN终端节点之间的通信。
如图4所示,该VPN终端接入方法应用于VPN中心端,所述VPN中心端预设有第一密钥、第一安全参数索引、第一局域网内部IP地址和第一公网IP,且关联存储。该VPN终端通信方法可以包括如下步骤:
S401,接收第一VPN终端的数据包。
S402,获取所述数据包中的安全参数索引和公网IP。
S403,确认所述安全参数索引为预设的第一安全参数索引但所述公网IP与预设的第一公网IP不同。
S404,更新所述第一公网IP。
S405,基于预设的第一密钥,解密所述数据包中的加密数据。其中,所述第一密钥对应于所述第一安全参数索引;所述加密数据包括第二局域网内部IP地址以及与第二终端设备通信的第一通信数据;所述第二终端设备连接于第二VPN终端。
S406,基于预设的第二密钥,加密所述第一通信数据。其中,所述第二密钥对应于所述第二局域网内部IP地址。
S407,向所述第二VPN终端发送加密后的所述第一通信数据。
可选地,所述VPN终端通信方法,还可以包括如下步骤:接收第二VPN终端的反馈数据包;获取所述反馈数据包中的安全参数索引和公网IP;确认所述反馈数据包中的安全参数索引为预设的第二安全参数索引但该公网IP与预设的第二公网IP不同;更新所述第二公网IP;基于所述第二密钥,解密所述反馈数据包中的加密数据;其中,所述反馈数据包中的加密数据包括第一局域网内部IP地址以及与第一终端设备通信的第二通信数据;所述第一终端设备连接于所述第一VPN终端;基于所述第一密钥,加密所述第二通信数据;向所述第一VPN终端发送加密后的所述第二通信数据。
可选地,所述VPN终端通信方法,还可以包括如下步骤:接收第一VPN终端和第二VPN终端的注册申请;其中,所述注册申请包括所述第一VPN终端和第二VPN终端的密钥协商请求、第一终端设备和第二终端设备的局域网内部IP地址分配请求、所述第一VPN终端的第一公网IP和所述第二VPN终端的第二公网IP;基于IPSec协议与所述第一VPN终端以及所述第二VPN终端密钥协商,获取第一密钥、与所述第一密钥对应的第一安全参数索引、第二密钥以及与所述第二密钥对应的第一安全参数索引;为所述第一终端设备和所述第二终端设备对应分配第一局域网内部IP地址和第二局域网内部IP地址;将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP、以及所述第二密钥、所述第二安全参数索引、所述第二局域网内部IP地址和所述第二公网IP关联存储;向所述第一VPN终端、所述第二VPN终端对应发送所述第一局域网内部IP地址和所述第二局域网内部IP地址。
可选地,所述为所述第一终端设备和所述第二终端设备对应分配第一局域网内部IP地址和第二局域网内部IP地址,可以包括如下步骤:从IP地址池中选择两个IP地址分别作为第一局域网内部IP地址和第二局域网内部IP地址;在所述IP地址池中删除两个所述IP地址。
可选地,所述VPN终端通信方法,还可以包括如下步骤:确认在预设时间段内没有接收到所述第一VPN终端的数据;删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN终端通信方法,还可以包括如下步骤:确认在预设时间段内没有接收到所述第二VPN终端的数据;删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
可选地,所述VPN终端通信方法,还可以包括如下步骤:接收用于指示删除所述第一VPN终端信息的指令;删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN终端通信方法,还可以包括如下步骤:接收用于指示删除所述第二VPN终端信息的指令;删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
基于该VPN终端通信方法,VPN终端的公网IP与安全参数索引关联存储,当动态NAT的环境中VPN终端的公网IP发生变化时,交互的数据包中安全参数索引没有变化,进而可以根据根据安全参数索引更新VPN终端的公网IP,可以解决相关技术中基于IPSec协议建立的VPN隧道在动态NAT的环境中难以实现通信的问题,从而提高VPN隧道中信息数据传输的准度和效率。
实施例六
示例性地,请继续参考图1,该VPN通信的架构包括一种基于IPSec协议的终端通信系统。该VPN终端通信系统包括第一VPN终端、第二VPN终端和VPN中心端。其中,所述VPN中心端设有数据库,所述数据库关联存储有第一密钥、第一安全参数索引、第一局域网内部IP地址和第一公网IP、以及关联存储有第二密钥、第二安全参数索引、第二局域网内部IP地址和第二公网IP。
所述第一VPN终端用于:基于所述第一密钥加密数据以生成数据包,并向所述VPN中心端发送所述数据包;其中,所述数据包中包括第一安全参数索引;所述数据包括所述第二局域网内部IP地址以及与第二终端设备通信的第一通信数据,所述第二终端设备连接于第二VPN终端。
所述VPN中心端用于:获取所述数据包中的第一安全参数索引和公网IP,在确认所述公网IP与预设的第一公网IP不同时,更新所述第一公网IP;基于所述第一密钥,解密所述数据包中的加密数据;基于所述第二密钥,加密所述第一通信数据;向所述第二VPN终端发送加密后的所述第一通信数据。
所述第二VPN终端用于:基于所述第二密钥,解密加密后的所述第一通信数据。
可选地,所述第二VPN终端还用于:基于所述第二密钥,加密第一局域网内部IP地址以及与第一终端设备通信的第二通信数据以生成反馈数据包;向所述VPN中心端发送所述反馈数据包。其中,所述反馈数据包包括所述第二安全参数索引,所述第一终端设备连接于所述第一VPN终端。
所述VPN中心端还用于:获取所述反馈数据包中的所述第二安全参数索引和公网IP;在确认该公网IP与预设的第二公网IP不同时,更新所述第二公网IP;基于所述第二密钥,解密所述反馈数据包以获取所述第一局域网内部IP地址以及所述第二通信数据;基于所述第一密钥,加密所述第二通信数据;向所述第一VPN终端发送加密后的所述第二通信数据。
所述第一VPN终端还用于:基于所述第一密钥,解密加密后的所述第二通信数据。
可选地,所述第一VPN终端和第二VPN终端还用于向所述VPN中心端发送注册申请;其中,所述注册申请包括所述第一VPN终端和第二VPN终端的密钥协商请求、第一终端设备和第二终端设备的局域网内部IP地址分配请求、所述第一VPN终端的第一公网IP和所述第二VPN终端的第二公网IP。
所述VPN中心端还用于:基于IPSec协议与所述第一VPN终端以及所述第二VPN终端密钥协商,获取第一密钥、与所述第一密钥对应的第一安全参数索引、第二密钥以及与所述第二密钥对应的第一安全参数索引;为所述第一终端设备和所述第二终端设备对应分配第一局域网内部IP地址和第二局域网内部IP地址;将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP、以及所述第二密钥、所述第二安全参数索引、所述第二局域网内部IP地址和所述第二公网IP关联存储于所述数据库内。
所述VPN中心端还用于:向所述第一VPN终端、所述第二VPN终端对应发送所述第一局域网内部IP地址和所述第二局域网内部IP地址。
所述第一VPN终端还用于为所述第一终端设备分配所述第一局域网内部IP地址。
所述第二VPN终端还用于为所述第二终端设备分配所述第二局域网内部IP地址。
可选地,所述VPN中心端还用于从IP地址池中选择一IP地址作为第一局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
可选地,所述VPN中心端还用于从IP地址池中选择一IP地址作为第二局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
可选地,所述VPN中心端还用于确认在预设时间段内没有接收到所述第一VPN终端的数据时,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN中心端还用于确认在预设时间段内没有接收到所述第二VPN终端的数据时,删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
可选地,所述VPN中心端还用于接收用于指示删除所述第一VPN终端信息的指令时,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
可选地,所述VPN中心端还用于接收用于指示删除所述第二VPN终端信息的指令时,删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
基于该实施例中VPN终端通信系统的一种VPN终端通信方法,可以包括如下步骤:第一VPN终端基于预设的第一密钥加密数据以生成数据包,并向VPN中心端发送所述数据包;其中,所述数据包中包括第一安全参数索引;所述数据包括第二局域网内部IP地址以及与第二终端设备通信的第一通信数据,所述第二终端设备连接于第二VPN终端;所述VPN中心端获取所述数据包中的第一安全参数索引和公网IP,并在预设的数据库中确认存在第一安全参数索引但所述数据库中不存在所述公网IP后,更新所述数据库中的第一公网IP;所述VPN中心端基于与所述第一安全参数索对应的第一密钥,解密所述数据包中的加密数据;所述VPN中心端基于所述数据库与所述第二局域网内部IP地址对应的第二密钥,加密所述第一通信数据;所述VPN中心端向所述第二VPN终端发送加密后的所述第一通信数据;所述第二VPN终端基于所述第二密钥,解密加密后的所述第一通信数据。
基于该VPN终端通信系统,VPN终端的公网IP与安全参数索引关联存储,当动态NAT的环境中VPN终端的公网IP发生变化时,交互的数据包中安全参数索引没有变化,进而可以根据根据安全参数索引更新VPN终端的公网IP,可以解决相关技术中基于IPSec协议建立的VPN隧道在动态NAT的环境中难以实现通信的问题,从而提高VPN隧道中信息数据传输的准度和效率。
以上结合图2-图4详细说明了本申请实施例提供的VPN通信方法。以下结合图5-图6详细说明用于执行本申请实施例提供的VPN终端通信方法的VPN中心端。
示例性地,图5是本申请实施例提供的VPN中心端的结构示意图一。如图5所示,VPN中心端500包括:处理模块501、收发模块502和存储模块(图5中未示出)。其中,所述存储模块存有数据库,所述数据库关联存储有第一密钥、第一安全参数索引、第一局域网内部IP地址和第一公网IP。为了便于说明,图5仅示出了该VPN中心端的主要部件。
其中,收发模块502用于接收VPN终端的数据包。
处理模块501用于获取所述数据包中的安全参数索引和公网IP,并确认所述安全参数索引为所述第一安全参数索引但所述数据库中不存在所述公网IP。
处理模块501还用于更新所述第一公网IP,并基于所述第一密钥,解密所述数据包中的加密数据。
收发模块502还用于向服务器发送解密后的数据。
可选地,收发模块502还用于从所述服务器接收反馈数据。
处理模块501还用于确认所述反馈数据的目标IP为第一局域网内部IP地址,并基于所述第一密钥,加密所述反馈数据。
收发模块502还用于基于所述第一公网IP,向所述VPN终端发送加密后的所述反馈数据。
可选地,收发模块502可以包括接收模块和发送模块。其中,收发模块502用于实现VPN中心端500的发送功能和接收功能。
可选地,VPN中心端500还可以包括存储模块(图5中未示出),该存储模块存储有程序或指令。当处理模块501执行该程序或指令时,使得VPN中心端500可以执行图2中所示出的VPN终端通信方法。
应理解,VPN中心端500中涉及的处理模块501可以由处理器或处理器相关电路组件实现,可以为处理器或处理单元;收发模块502可以由收发器或收发器相关电路组件实现,可以为收发器或收发单元。
需要说明的是,VPN中心端500可以是网络设备,也可以是可设置于网络设备中的芯片(系统)或其他部件或组件,还可以是包含终端设备或网络设备的装置,本申请对此不做限定。
此外,VPN中心端500的技术效果可以参考第图3所示出的VPN终端通信方法的技术效果,此处不再赘述。
示例性地,图6为本申请实施例提供的VPN中心端的结构示意图二。该VPN中心端可以是网络设备,也可以是可设置于网络设备的芯片(系统)或其他部件或组件。如图6所示,VPN中心端600可以包括处理器601。可选地,VPN中心端600还可以包括存储器602和/或收发器603。其中,处理器601与存储器602和收发器603耦合,如可以通过通信总线连接。
下面结合图6对VPN中心端600的各个构成部件进行具体的介绍:
其中,处理器601是VPN中心端600的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器601是一个或多个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specific integratedcircuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digitalsignal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gatearray,FPGA)。
可选地,处理器601可以通过运行或执行存储在存储器602内的软件程序,以及调用存储在存储器602内的数据,执行VPN中心端600的各种功能。
在具体的实现中,作为一种实施例,处理器601可以包括一个或多个CPU,例如图6中所示出的CPU0和CPU1。
在具体实现中,作为一种实施例,VPN中心端600也可以包括多个处理器,例如图2中所示的处理器601和处理器604。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
其中,所述存储器602用于存储执行本申请方案的软件程序,并由处理器601来控制执行,具体实现方式可以参考上述方法实施例,此处不再赘述。
可选地,存储器602可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器602可以和处理器601集成在一起,也可以独立存在,并通过VPN中心端600的接口电路(图6中未示出)与处理器601耦合,本申请实施例对此不作具体限定。
收发器603,用于与其他VPN中心端之间的通信。例如,VPN中心端600为终端设备,收发器603可以用于与网络设备通信,或者与另一个终端设备通信。又例如,VPN中心端600为网络设备,收发器603可以用于与终端设备通信,或者与另一个网络设备通信。
可选地,收发器603可以包括接收器和发送器(图6中未单独示出)。其中,接收器用于实现接收功能,发送器用于实现发送功能。
可选地,收发器603可以和处理器601集成在一起,也可以独立存在,并通过VPN中心端600的接口电路(图6中未示出)与处理器601耦合,本申请实施例对此不作具体限定。
需要说明的是,图6中示出的VPN中心端600的结构并不构成对该VPN中心端的限定,实际的VPN中心端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
此外,VPN中心端600的技术效果可以参考上述方法实施例所述的VPN终端接入方法的技术效果,此处不再赘述。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是现场可编程门阵列(field programmablegatearray,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(centralprocessorunit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controllerunit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
应理解,在本申请实施例中的处理器可以是中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DRRAM)。
上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种基于IPSec协议的VPN终端通信系统,其特征在于,包括第一VPN终端、第二VPN终端和VPN中心端;其中,所述VPN中心端设有数据库,所述数据库关联存储有第一密钥、第一安全参数索引、第一局域网内部IP地址和第一公网IP、以及关联存储有第二密钥、第二安全参数索引、第二局域网内部IP地址和第二公网IP;
所述第一VPN终端用于:基于所述第一密钥加密数据以生成数据包,并向所述VPN中心端发送所述数据包;其中,所述数据包中包括第一安全参数索引;所述数据包括所述第二局域网内部IP地址以及与第二终端设备通信的第一通信数据,所述第二终端设备连接于第二VPN终端;
所述VPN中心端用于:获取所述数据包中的第一安全参数索引和公网IP,在确认所述公网IP与预设的第一公网IP不同时,更新所述第一公网IP;
所述VPN中心端还用于:基于所述第一密钥,解密所述数据包中的加密数据;基于所述第二密钥,加密所述第一通信数据;向所述第二VPN终端发送加密后的所述第一通信数据;
所述第二VPN终端用于:基于所述第二密钥,解密加密后的所述第一通信数据。
2.根据权利要求1所述的VPN终端通信系统,其特征在于,
所述第二VPN终端还用于:基于所述第二密钥,加密第一局域网内部IP地址以及与第一终端设备通信的第二通信数据以生成反馈数据包;向所述VPN中心端发送所述反馈数据包;其中,所述反馈数据包包括所述第二安全参数索引,所述第一终端设备连接于所述第一VPN终端;
所述VPN中心端还用于:获取所述反馈数据包中的所述第二安全参数索引和公网IP;在确认该公网IP与预设的第二公网IP不同时,更新所述第二公网IP;基于所述第二密钥,解密所述反馈数据包以获取所述第一局域网内部IP地址以及所述第二通信数据;基于所述第一密钥,加密所述第二通信数据;向所述第一VPN终端发送加密后的所述第二通信数据;
所述第一VPN终端还用于:基于所述第一密钥,解密加密后的所述第二通信数据。
3.根据权利要求2所述的VPN终端通信系统,其特征在于,
所述第一VPN终端和第二VPN终端还用于向所述VPN中心端发送注册申请;其中,所述注册申请包括所述第一VPN终端和第二VPN终端的密钥协商请求、第一终端设备和第二终端设备的局域网内部IP地址分配请求、所述第一VPN终端的第一公网IP和所述第二VPN终端的第二公网IP;
所述VPN中心端还用于:基于IPSec协议与所述第一VPN终端以及所述第二VPN终端密钥协商,获取第一密钥、与所述第一密钥对应的第一安全参数索引、第二密钥以及与所述第二密钥对应的第一安全参数索引;为所述第一终端设备和所述第二终端设备对应分配第一局域网内部IP地址和第二局域网内部IP地址;将所述第一密钥、所述第一安全参数索引、所述第一局域网内部IP地址和所述第一公网IP、以及所述第二密钥、所述第二安全参数索引、所述第二局域网内部IP地址和所述第二公网IP关联存储于所述数据库内;
所述VPN中心端还用于:向所述第一VPN终端、所述第二VPN终端对应发送所述第一局域网内部IP地址和所述第二局域网内部IP地址;
所述第一VPN终端还用于为所述第一终端设备分配所述第一局域网内部IP地址;
所述第二VPN终端还用于为所述第二终端设备分配所述第二局域网内部IP地址。
4.根据权利要求3所述的VPN终端通信系统,其特征在于,所述VPN中心端还用于从IP地址池中选择一IP地址作为第一局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
5.根据权利要求3所述的VPN终端通信系统,其特征在于,所述VPN中心端还用于从IP地址池中选择一IP地址作为第二局域网内部IP地址,并在所述IP地址池中删除所述IP地址。
6.根据权利要求1-5中任一项所述的VPN终端通信系统,其特征在于,所述VPN中心端还用于确认在预设时间段内没有接收到所述第一VPN终端的数据时,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
7.根据权利要求1-5中任一项所述的VPN终端通信系统,其特征在于,所述VPN中心端还用于确认在预设时间段内没有接收到所述第二VPN终端的数据时,删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
8.根据权利要求1-5中任一项所述的VPN终端通信系统,其特征在于,所述VPN中心端还用于接收用于指示删除所述第一VPN终端信息的指令时,删除所述第一密钥、所述第一安全参数索引和所述第一公网IP。
9.根据权利要求1-5中任一项所述的VPN终端通信系统,其特征在于,所述VPN中心端还用于接收用于指示删除所述第二VPN终端信息的指令时,删除所述第二密钥、所述第二安全参数索引和所述第二公网IP。
10.一种VPN终端通信方法,其特征在于,包括:
第一VPN终端基于预设的第一密钥加密数据以生成数据包,并向VPN中心端发送所述数据包;其中,所述数据包中包括第一安全参数索引;所述数据包括第二局域网内部IP地址以及与第二终端设备通信的第一通信数据,所述第二终端设备连接于第二VPN终端;
所述VPN中心端获取所述数据包中的第一安全参数索引和公网IP,并在预设的数据库中确认存在第一安全参数索引但所述数据库中不存在所述公网IP后,更新所述数据库中的第一公网IP;
所述VPN中心端基于与所述第一安全参数索对应的第一密钥,解密所述数据包中的加密数据;
所述VPN中心端基于所述数据库与所述第二局域网内部IP地址对应的第二密钥,加密所述第一通信数据;
所述VPN中心端向所述第二VPN终端发送加密后的所述第一通信数据;
所述第二VPN终端基于所述第二密钥,解密加密后的所述第一通信数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110880062.6A CN115701692A (zh) | 2021-08-02 | 2021-08-02 | 基于IPSec协议的VPN终端通信系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110880062.6A CN115701692A (zh) | 2021-08-02 | 2021-08-02 | 基于IPSec协议的VPN终端通信系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115701692A true CN115701692A (zh) | 2023-02-10 |
Family
ID=85142382
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110880062.6A Pending CN115701692A (zh) | 2021-08-02 | 2021-08-02 | 基于IPSec协议的VPN终端通信系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115701692A (zh) |
-
2021
- 2021-08-02 CN CN202110880062.6A patent/CN115701692A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103051510B (zh) | 网络策略向网络接口卡的安全和高效卸载的方法和装置 | |
WO2017143611A1 (zh) | 用于处理vxlan报文的方法、设备及系统 | |
CN106506354B (zh) | 一种报文传输方法和装置 | |
US20160218939A1 (en) | Distributed multi-site cloud deployment | |
US9602470B2 (en) | Network device, IPsec system and method for establishing IPsec tunnel using the same | |
JP2021530892A (ja) | 通信方法及び通信装置 | |
CN104619040A (zh) | WiFi设备快速连接的方法和系统 | |
US11877334B2 (en) | Facilitating over-the-air address rotation | |
CN114547583A (zh) | 身份认证系统、方法、装置、设备及计算机可读存储介质 | |
WO2023046177A1 (zh) | 无人机数据加密传输方法、装置、设备及存储介质 | |
CN215990843U (zh) | 基于IPSec协议的VPN终端通信系统 | |
CN113556340B (zh) | 一种便携式vpn终端、数据处理方法及存储介质 | |
CN115865314A (zh) | Vpn终端通信系统及方法 | |
CN115913818A (zh) | Vpn终端通信方法、vpn中心端及存储介质 | |
CN112887187B (zh) | 一种设备间通信建立方法、系统、装置、设备及介质 | |
WO2014172836A1 (zh) | 接入网络的方法、装置及网络系统 | |
CN104243423A (zh) | 一种自组网的加密鉴权方法、系统及终端 | |
CN115701692A (zh) | 基于IPSec协议的VPN终端通信系统及方法 | |
CN115706681A (zh) | 基于IPSec协议的VPN终端通信方法、VPN中心端及存储介质 | |
CN115883281A (zh) | Vpn终端接入系统及方法 | |
CN115701693A (zh) | 基于IPSec协议的VPN终端接入方法、VPN中心端及存储介质 | |
CN109150793B (zh) | 一种隐私保护方法及设备 | |
WO2022094936A1 (zh) | 接入方法、设备和云平台设备 | |
US11606199B2 (en) | Management of groups of connected objects using wireless communication protocols | |
JP5992115B2 (ja) | Cpeに結合された移動システムに結合されたデバイスにより生成されたデータへの同時アクセスを制御するための方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |