CN104023022B - 一种IPSec SA的获取方法和装置 - Google Patents
一种IPSec SA的获取方法和装置 Download PDFInfo
- Publication number
- CN104023022B CN104023022B CN201410264460.5A CN201410264460A CN104023022B CN 104023022 B CN104023022 B CN 104023022B CN 201410264460 A CN201410264460 A CN 201410264460A CN 104023022 B CN104023022 B CN 104023022B
- Authority
- CN
- China
- Prior art keywords
- vam
- ipsec
- servers
- clients
- newest
- 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
本发明提出一种IPSec SA获取方法和装置,所述方法包括:所述VAM客户端向所述VAM服务器进行注册;VAM服务器根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA;VAM客户端向所述VAM服务器发送keepalive报文;所述keepalive报文包括所述VAM客户端本地最新IPSec SA的SPI;VAM服务器判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSec SA的SPI是否相同;如果不同,将所述本地最新的IPSec SA下发给所述VAM客户端;通过本发明,实现了ADVPN网络中IPSec SA的集中管理和下发,同时由于所述keepalive报文是由VAM客户端发起的,使得VAM服务器对VAM客户端本地的IPSec SA进行更新时,VAM服务器下发的最新IPSec SA可以正常穿越NAT。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种IPSec SA的获取方法和装置。
背景技术
传统的GRE(Generic Routing Encapsulation,通用路由封装)隧道,是点到点的隧道,进行通信的两端必须知道对端的公网地址;而ADVPN(Auto Discovery VirtualPrivate Network,自动发现虚拟专用网络)是一种三层隧道,提供了点到多点的隧道,可以实现多个分支之间的互通,因此在ADVPN网络中,每个节点均需要知道所有对端的公网地址。
在ADVPN网络中,是通过部署VAM(Virtual Private Network AddressManagement,虚拟专用网地址管理)服务器来获取到通信对端的公网地址。VAM协议是ADVPN方案的主要协议。VAM服务器负责收集、维护、分发分支公网地址等信息。每一个Hub/Spoke设备(统称为VAM客户端)向VAM服务器注册自己的公网地址和私网地址(即ADVPN隧道的接口地址)。企业分支的私网之间转发数据报文时,需要查询路由表,获得到达对端目的网段的私网路由,再查询VAM服务器,获取该私网路由下一跳对应的公网地址,并利用该公网地址作为隧道的目的地址对报文进行封装,最后交给已建立起的安全隧道发送到目的端用户。
ADVPN具有两种典型的组网结构,分别为Full-Mesh(全互联)网络和Hub-Spoke网络;
请参见图1,图1为Full-Mesh网络拓扑图,在该网络中,Spoke之间可以建立隧道直接通信;Hub主要作为路由信息交换的中心。其中Spoke在向 VAM服务器注册后获得该VPN域中Hub的信息,并与Hub建立永久的隧道连接;任意的两个Spoke之间也可以直接建立隧道。
请参见图2,图2为Hub-Spoke网络拓扑图,在该网络中,Spoke之间不能建立隧道直接通信,只能通过Hub转发数据;Hub即作为路由信息交换的中心,又作为数据转发的中心。
在ADVPN网络中,Spoke设备向VAM服务器进行注册的时候,VAM服务器会将Hub的公网和私网地址发送给Spoke设备。这样Spoke设备可以和Hub之间建立永久隧道。如果Hub是后注册的,当Hub上线后,原有的Spoke使用保活报文(Keepalive)和VAM服务器联系的时候,VAM服务器会将Hub信息发送给Spoke,从而保证Spoke和Hub之间建立永久隧道。所有Spoke和Hub之间都会有隧道,Spoke通过Spoke和Hub之间的隧道获取所有对端的路由信息。例如在部署OSPF(Open Shortest Path First,开放路径最短优先)时,通过Spoke和Hub之间的隧道,Hub和Spoke可以互相传递LSA(Link State Advertisement,链路状态通告)。另外,虽然Spoke的路由信息从Hub获取,但是路由的下一跳不一定是Hub,可以是其它的Spoke。
当Spoke上有报文需要转发的时候,通过查询路由表匹配路由,如果发现下一跳是对端私网地址,则进一步检查是否已和所述对端已建立了隧道;如果有隧道,直接转发;如果没有隧道,根据所述对端的私网地址向VAM服务器查询所述对端的公网地址,从而建立到达所述对端的隧道,并通过隧道转发报文。
VAM客户端(即Spoke和Hub)和VAM服务器之间通过keepalive报文进行保活。当有多个VAM Server的时候,VAM客户端需要向该多个VAM Server单独进行注册和进行keepalive保活;当VAM客户端需要进行地址查询的时候,应该向primary(主用)VAM服务器进行查询,如果主用VAM服务器不是online(在线)状态,那么则向secondary(备用)VAM服务器进行查询。
ADVPN隧道实现了点到多点之间的私网通信。为了不使私网消息泄漏到公网上,ADVPN和IPSEC(IP Security,IP安全)技术进行了紧密结合,实现了私网报文在广域网上的加密传输。因为使用了IPSEC技术,ADVPN的各个节点之间需要一对一协商IKE SA和IPSECSA对私网数据进行加密。因此,当节点很多的时候,整个ADVPN网络则需要建立和维护大量的IKE SA和IPSEC SA,例如假如一个网络中存在3000个分支,那么Hub设备就需要建立和维护3000个IKE SA和IPSEC SA,需要消耗大量的系统资源。
发明内容
有鉴于此,本发明提供一种IPSec SA的获取方法,应用于ADVPN网络中的任一VAM服务器上,所述ADVPN网络包括VAM服务器以及若干VAM客户端,所述方法包括:
根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA;
接收所述VAM客户端发送的保活keepalive报文;所述keepalive报文包括所述VAM客户端最新IPSec SA的安全参数索引SPI;
判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSec SA的SPI是否相同;
当判断出本地最新IPSec SA的SPI与所述VAM客户端最新IPSec SA的SPI不相同时,将所述本地最新的IPSec SA下发给所述VAM客户端,以使得所述VAM客户端完成IPSecSA更新。
本发明还提供一种IPSec SA的获取方法,应用于ADVPN网络中的任一VAM客户端上,所述ADVPN网络包括VAM服务器以及若干VAM客户端,所述方法包括:
向所述VAM服务器分别进行注册;
接收所述VAM服务器下发的IPSec SA;
向所述VAM服务器发送keepalive报文;所述keepalive报文包括本地最新IPSecSA的SPI;
接收所述VAM服务器下发的最新IPSec SA,并根据接收到的所述最新IPSec SA完成本地IPSec SA的更新,其中,所述最新IPSec SA为当所述VAM服务器最新IPSec SA的SPI与所述本地最新IPSec SA的SPI不相同时,由所述VAM服务器下发的。
本发明还提供一种IPSec SA的获取装置,应用于ADVPN网络中的任一VAM服务器上,所述ADVPN网络包括VAM服务器以及若干VAM客户端,所述装置包括:
下发单元,用于根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSecSA;
第一接收单元,用于接收所述VAM客户端发送的保活keepalive报文;所述keepalive报文包括所述VAM客户端最新IPSec SA的安全参数索引SPI;
第一判断单元,用于判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSec SA的SPI是否相同;当判断出本地最新IPSec SA的SPI与所述VAM客户端最新IPSec SA的SPI不相同时,将所述本地最新的IPSec SA下发给所述VAM客户端,以使得所述VAM客户端完成IPSec SA更新。
本发明还提供一种IPSec SA的获取装置,应用于ADVPN网络中的任一VAM客户端上,所述ADVPN网络包括VAM服务器以及若干VAM客户端,所述装置包括:
注册单元,用于向所述VAM服务器分别进行注册;
第二接收单元,用于接收所述VAM服务器下发的IPSec SA;
发送单元,用于向所述VAM服务器发送keepalive报文;所述keepalive报文包括本地最新IPSec SA的SPI;
第二更新单元,用于接收所述VAM服务器下发的最新IPSec SA,并根据接收到的所述最新IPSec SA完成本地IPSec SA的更新,其中,所述最新IPSec SA为当所述VAM服务器最新IPSec SA的SPI与所述本地最新IPSec SA的SPI不相同时,由所述VAM服务器下发的。
本发明通过由VAM服务器为VAM客户端创建和下发IPSec SA,并通过 接收VAM客户端定期发送的keepalive报文对所述VAM客户端本地的IPSec SA进行更新,实现了ADVPN网络中IPSec SA的集中管理和下发,同时由于所述keepalive报文是由VAM客户端发起的,使得VAM服务器对VAM客户端本地的IPSec SA进行更新时,VAM服务器下发的最新IPSec SA可以正常穿越NAT。
附图说明
图1是ADVPN网络中的一种Full-Mesh结构的网络拓扑图;
图2是ADVPN网络中的一种Hub-Spoke结构的网络拓扑图;
图3是GDVPN网络的组网图;
图4是本发明一种实施方式中一种IPSec SA的获取方法的流程图;
图5是现有技术中采用GRE封装的ADVPN控制报文的报文格式;
图6是现有技术中采用GRE封装的ADVPN数据报文的报文格式;
图7是现有技术中采用UDP封装的ADVPN控制报文的报文格式;
图8是现有技术中采用UDP封装的ADVPN数据报文的报文格式;
图9是本发明一种实施方式中一种扩展后的采用UDP封装的ADVPN控制报文的报文格式;
图10是本发明一种实施方式中一种扩展后的采用UDP封装的ADVPN数据报文的报文格式;
图11是本发明一种实施方式中一种扩展后的采用GRE封装的ADVPN控制报文的报文格式;
图12是本发明一种实施方式中一种扩展后的采用GRE封装的ADVPN数据报文的报文格式;
图13是本发明一种实施方式中一种IPSec SA的获取装置的结构示意图;
图14是本发明一种实施方式中一种IPSec SA的获取装置的硬件结构示意图;
图15是本发明一种实施方式中另一种IPSec SA的获取装置的结构示意 图。
具体实施方式
在具体应用中,为了使ADVPN网络中所承载的用户私网数据不泄露到公网中,可以在ADVPN网络中引入IPSec技术。引入了IPSec技术后,ADVPN网络中各节点一对一协商IPSecSA,节点间的私网数据通过IPSec SA封装上具体的报文头后进行加密传输。具体地,ADVPN网络中各节点在协商IPSec SA时,首先要保证协商IPSEC SA时交互的控制报文的安全性,因此整个协商分为两个阶段;第一阶段是节点间建立IKE(Internet Key Exchange,互联网密钥交换)对等实体,然后实体间协商IKE SA;IKE SA用于对第二阶段的保护,即对建立IPSEC SA时交互的控制报文进行保护;第二阶段就是在第一阶段的保护下,协商IPSEC SA的过程。
其中,所述SA(Security Association安全联盟)是指安全关联,可以看作是一个逻辑连接,所有经过同一个SA的数据流都会得到相同的安全服务;不同的SA之间依靠SPI(Security Parameter Index,安全参数索引)进行区分,即SPI可以用于唯一标识一个IPSEC SA。
IPSEC SA规定对数据报文进行封装时使用两种报文头,一种是AH头,一种是ESP头;前者用于认证,后者用于对数据报文的加密。其中AH头和ESP头中均携带SPI;报文的接收端根据AH头和ESP头中携带的SPI能够确定出对应的IPSEC SA,然后再使用同一个IPSECSA对加密的报文进行解密。
然而在具体应用时,ADVPN网络中引入IPSEC技术后,ADVPN的各个节点之间需要一对一协商IKE SA和IPSEC SA对私网数据进行加密。因此,当节点很多的时候,整个ADVPN网络则需要建立和维护大量的IKE SA和IPSEC SA,需要消耗大量的系统资源。
请参见图3,图3为GDVPN(Group Domain VPN,组域虚拟专用网络)网络的组网图。GDVPN技术是一种实现密钥和安全策略集中管理的VPN解 决方案。传统的IPSec VPN是一种点到点的隧道连接,而Group Domain VPN是一种点到多点的无隧道连接。GDVPN提供了一种基于组的IPSec安全模型。组是一个安全策略的集合,属于同一个组的所有成员共享相同的安全策略及密钥(IPSEC SA)。GDVPN网络由KS(Key Server,密钥服务器)和GM(GroupMember,组成员)组成。GM通过加入相应的组,从KS获取安全策略及密钥,并负责对数据流量加密和解密。传统的IPSec VPN中,每对通信对等体之间都需要建立IKE SA和IPSec SA,而GDVPN中所有组成员之间共用一对IPSec SA,管理复杂度低,可扩展性更好。
因此,为了解决ADVPN网络中引入IPSEC技术后,系统资源消耗过大的问题,可以考虑将GDVPN技术和ADVPN技术进行结合。然而将GDVPN技术和ADVPN技术进行结合,仍然会存在无法穿越NAT(Network Address Translation,网络地址转换)的问题。
NAT穿越支持的报文包括TCP报文、UDP报文以及ICMP报文;目前,穿越NAT防火墙通用的做法是为报文封装UDP报文头来穿越NAT防火墙,然而这种方法虽然高效易用但是有个缺陷,就是必须要由NAT防火墙管辖的网络内部的成员设备首先向外发起一个连接才能实现NAT穿越,NAT防火墙以外的用户无法主动穿越NAT防火墙而访问NAT防火墙内部的私网数据。
在GDVPN网络中,KS服务器通常部署在公网中,而且由于GDVPN网络中各节点上IPSec SA的更新是由KS服务器主动推送给各节点的,因此这种主动推送的方式不能穿越用户网络中的NAT防火墙,从而造成各节点设备无法收到KS服务器下发的最新IPSec SA,也就不能够对用户网络中的私人数据进行加密传输,从而导致用户的私网数据泄露到公网中。
有鉴于此,本发明提供一种IPSec SA的获取方法,应用于ADVPN网络中,通过由VAM服务器为VAM客户端创建和下发IPSec SA,并通过接收VAM客户端定期发送的keepalive报文对所述VAM客户端本地的IPSec SA进行更新,实现了ADVPN网络中IPSec SA的集中管理和下发,同时由于所述对IPSec SA进行更新的过程是由VAM客户端发起的,因此VAM服务器 对VAM客户端本地的IPSec SA进行更新时,VAM服务器下发的最新IPSecSA可以正常穿越NAT。
请参见图4,图4是根据一示例性实施例示出的一种IPSec SA的获取方法,分别应用于ADVPN网络中的任一VAM服务器和VAM客户端上,所述ADVPN网络通常包括VAM服务器以及若干VAM客户端,其中所述VAM服务器通常包括一个主用VAM服务器和至少一个备用VAM服务器,主用VAM服务器与备用VAM服务器之间进行业务的负载分担;所述VAM客户端通常是指ADVPN网络中的Hub设备和Spoke设备的统称。其中所述Hub设备,是VPN网络的中心设备,它是路由信息交换的中心。在Hub-Spoke组网中,它也是数据转发的中心,一般是企业总部网关,所述Spoke设备是指分支机构的网关。
如图4所示,VAM服务器和VAM客户端相互配合执行如下步骤:
步骤S401、所述VAM客户端向所述VAM服务器进行注册;
步骤S402、VAM服务器根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA;
步骤S403、VAM客户端向所述VAM服务器发送keepalive报文;所述keepalive报文包括所述VAM客户端本地最新IPSec SA的SPI;
步骤S404、VAM服务器判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSecSA的SPI是否相同;如果不同,将所述本地最新的IPSec SA下发给所述VAM客户端;
步骤S405、VAM客户端接收所述VAM服务器下发的最新IPSec SA,并根据接收到的所述最新IPSec SA完成本地IPSec SA的更新。
在本实施例中,VAM客户端需要向主用和备用服务器分别进行注册,从而保证所述主用和备用服务器在负载分担进行切换时,主用和备用服务器上均保存一份各节点的注册信息。当然在具体实现时,也可以只向主用VAM服务器进行注册,然后由所述主用VAM服务器实时的将各节点的注册信息同步到备用VAM服务器上。
其中,所述主用和备用VAM服务器在具体实现时是通过选举产生的。所述选举过程为,每个VAM服务器将本设备的优先级信息分别通告给其他各VAM服务器,同时接收所述其他各VAM服务器的优先级;当所有VAM服务器的优先级信息均通告完毕后,则在本地判断本设备的优先级是否高于所述其他各VAM服务器的优先级;如果是,则本设备为主用VAM服务器;如果否,则本设备为备用VAM服务器。同时,为了保证VAM服务器之间交互信息的安全性,各VAM服务器之间还可以预先建立IKE对等实体,并且协商IKE SA用以对VAM服务器之间交互的信息进行安全性保护。
在本实施例中,IPSec SA的创建以及更新是由主用VAM服务器进行的;主用VAM服务器首先根据ADVPN域对在本地已注册的各VAM客户端进行分组,然后针对每个分组即每个ADVPN域分别创建IPSec SA和对应的安全策略,并分别下发给各分组中的成员VAM客户端。同时,由于主用和备用VAM服务器均能够为VAM客户端下发IPSec SA,因此为了保证主用和备用VAM服务器下发IPSec SA的一致性,主用VAM服务器还需将为所述每个分组创建的IPSec SA同步给备用VAM服务器,并实时的进行同步更新,从而保证主用VAM服务器和备用VAM服务器向VAM客户端下发的IPSec SA保持一致。
另外,在现有的ADVPN实现中,VAM服务器和VAM客户端之间进行交互过程通常采用MD5(Message Digest Algorithm5,消息摘要算法第五版)算法进行加密,而本方案中IPSecSA是用于对ADVPN网络中的各个用户组中的所有成员设备之间的私网数据进行加密,因此在本实施例中可以沿用IPSec已有实现中的协商机制,来增强VAM服务器与VAM客户端之间报文通信的安全性。
具体地,VAM服务器可以分别与各VAM客户端之间进行IKE协商,建立IKE SA,当建立了IKE SA后,此时VAM服务器与VAM客户端之间交互的所有报文,比如VAM客户端的注册报文、公网地址的查询请求、keepalive报文以及IPSec SA的下发,均可以通过IKE SA进行加密传送。
在本实施例中,VAM客户端上IPSec SA的更新是通过向VAM服务器周期性的发送keepalive报文来实现的,换句话说就是,VAM服务器对所述VAM客户端本地的IPSec SA进行更新的过程是由NAT管辖内部的成员设备VAM客户端由内而外首先发起的,因此VAM服务器为VAM客户端下发的最新的IPSec SA能够正常的穿越NAT。
具体地,当服务器收到VAM客户端发送的keepalive报文后,判断该报文中携带的SPI与本地最新的IPSec SA的SPI是否相同,如果相同,则表明所述VAM客户端上的IPSec SA已经是最新的,此时VAM服务器不需要重复下发;如果不相同则代表所述VAM客户端上的IPSec SA不是最新的,于是将本地最新的IPSec SA下发给所述VAM客户端,从而使所述VAM客户端完成本地IPSec SA的更新。
值得说明的是,IPSEC SA的默认生命周期通常为1个小时(3600秒),而keepalive报文的发送周期是3分钟(180秒),由于要保证新产生的IPSECSA在老的IPSEC SA的生命周期超时之前下发,因此,在本实施例中,可以提前一定倍数的keepalive发送周期的时间产生新的IPSEC SA。例如,可以提前3-4倍的keepalive发送周期的时间产生新的IPSEC SA,从而使得原有IPSEC SA超时前,Hub/Spoke至少有6次机会下发新的IPSEC SA(如果存在两个VAM Server的话)。
通过以上描述可知,在本实施例中对IPSEC SA的更新是通过在keepalive中携带SPI来实现的,而各VAM客户端发送keepalive报文的时间则是分散的,因此在本实施例中对IPSEC SA的更新并不是由VAM服务器集中进行,从而不会造成VAM服务器CPU瞬间负载过高的问题。
以下结合附图并举实施例对VAM客户端使用本地IPSec SA对用户网络中的私网数据进行加密的具体过程作进一步详细描述。
IPSEC协议规定对数据进行封装时使用两种报文头,一种是AH头,一种是ESP头;前者用于认证,后者用于对数据报文的加密;因此,在本实施例中,在对用户网络中的私网数据进行加密传输时,可以在私网数据报文中 增加一个ESP头,从而达到对私网数据报文进行加密的目的。
在现有技术中,ADVPN网络中VAM客户端(即Spoke和Hub)在对报文进行封装时通常采用GRE封装和UDP封装;另外,由于用户网络中的私网数据报文通常可以分为控制报文和数据报文,因此在具体应用中对控制报文和数据报文需要采用不同的封装格式。
请参见图5~图8,图5为GRE封装后的控制报文的报文格式,图6为GRE封装后的数据报文的报文格式;图7为UDP封装后的控制报文的报文格式,图8为UDP封装后的数据报文的报文格式,其中VAM客户端采用UDP封装格式对数据报文进行封装时,缺省端口号为20000;VAM客户端采用UDP封装格式对控制报文进行封装时,缺省端口号为18001。
在本实施例中,由于IKE协商是通信节点和VAM服务器之间进行的,而加密通信是在两个通信节点之间,因此在保证用户私网数据完全加密不泄露到公网上的前提下,还需要保证用户的私网数据能够正常穿越NAT;因此,在本实施例中,针对VAM客户端对报文采用的不同的封装格式,需要分别进行报文格式的扩展。
一方面,请参见图9和图10,当VAM客户端采用UDP封装格式对数据报文或控制报文进行封装时(在实际应用中,由于GRE封装不能携带多余信息,因此通常采用UDP封装),我们可以利用原有的UDP头,将ESP头放在UDP头和ADVPN头(ADVPN数据头或ADVPN控制头)之间;同时,为了使得接收端能够判断出当前报文UDP头后的数据是加密报文还是非加密报文,可以将UDP头中的目的端口号采用专门定义的非知名端口号,以区别于缺省端口号;当然,在具体实现时,也可以不利用原有的UDP头而直接再新增一个UDP头(即两层UDP头)。
另一方面,请参见图11和12,当VAM客户端采用GRE封装格式对数据报文或控制报文进行封装时,可以直接在公网头和GRE头之间新增一个UDP头,并将ESP头放在UDP头和GRE头之间;其中UDP头中的目的端口号仍然采用专门定义的非知名端口号。
综上所述,当使用上述扩展后的封装格式对私网报文进行封装后,私网报文的所有内容都进行了加密,所以私网数据不会泄露到公网上,而且可以正常的穿越NAT。
请参见图13,本发明还提供一种与上述一种IPSec SA的获取方法对应的装置130,应用于ADVPN网络中的任一VAM服务器上,所述ADVPN网络通常VAM服务器以及若干VAM客户端,其中所述VAM服务器通常包括一个主用VAM服务器和至少一个备用VAM服务器,主用VAM服务器与备用VAM服务器之间进行业务的负载分担;所述VAM客户端包括所述ADVPN网络中的Hub设备和Spoke设备;该装置130具体可包括:
下发单元1301,用于根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA;
第一接收单元1302,用于接收所述VAM客户端发送的保活keepalive报文;所述keepalive报文包括所述VAM客户端最新IPSec SA的安全参数索引SPI;
第一判断单元1303,用于判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSec SA的SPI是否相同;当判断出本地最新IPSec SA的SPI与所述VAM客户端最新IPSecSA的SPI不相同时,将所述本地最新的IPSec SA下发给所述VAM客户端,以使得所述VAM客户端完成IPSec SA更新。
本发明实施例提供的装置130的具体实现过程可参见上述方法实施例的说明,在此不再赘述。
上述装置130中,所述下发单元进一步用于:
根据ADVPN域对在本地已注册的各VAM客户端进行分组;
为每个分组分别创建IPSec SA,并分别下发给各分组中的成员VAM客户端。
如图13所示,上述装置130还可包括第一更新单元1304,用于在本地对已创建的所述IPSec SA进行周期性的更新,并同步给备用VAM服务器,以使得所述备用VAM服务器向所述VAM客户端下发的IPSec SA为最新, 并且与主用VAM服务器下发的IPSec SA保持一致。
如图13所示,上述装置130还可包括通告单元1305和第二判断单元1306;其中所述通告单元1305用于将本设备的优先级通告给其他各VAM服务器,同时接收所述其他各VAM服务器通告的优先级;
所述第二判断单元1306,用于判断所述本设备的优先级是否高于所述其他各VAM服务器的优先级;如果是,则确定本设备为主用VAM服务器;如果否,则确定本设备为备用VAM服务器。
上述装置130中,所述VAM客户端包括所述ADVPN网络中的Hub设备和Spoke设备。
本发明还提供一种与上述一种IPSec SA的获取方法对应的装置130,可以通过图14所示的硬件来实现,具体地,图14中的控制器(CPU)连接有存储器以及其它硬件,其中,存储器中存放有程序或指令,CPU可通过读取存储器中的程序或指令,执行相应的操作,其它硬件,具体可以是通信接口等,可接收或发送报文。
具体地,CPU通过读取存储器中的程序或指令,可执行以下操作:
CPU通过读取程序或指令,根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA;
CPU通过读取程序或指令,接收所述VAM客户端发送的保活keepalive报文;所述keepalive报文包括所述VAM客户端最新IPSec SA的安全参数索引SPI;
CPU通过读取程序或指令,判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSec SA的SPI是否相同;当判断出本地最新IPSec SA的SPI与所述VAM客户端最新IPSecSA的SPI不相同时,将所述本地最新的IPSec SA下发给所述VAM客户端,以使得所述VAM客户端完成IPSec SA更新。
当所述VAM服务器为主用VAM服务器时,CPU通过读取程序或指令,根据ADVPN域对在本地已注册的各VAM客户端进行分组;为每个分组分别创建IPSec SA和对应的安全策略,并分别下发给各分组中的成员VAM客 户端。
CPU通过读取程序或指令,在本地对已创建的所述IPSec SA进行周期性的更新,并同步给备用VAM服务器,以使得所述备用VAM服务器向所述VAM客户端下发的IPSec SA为最新,并且与主用VAM服务器下发的IPSec SA保持一致。
CPU通过读取程序或指令,将本设备的优先级通告给其他各VAM服务器,同时接收所述其他各VAM服务器通告的优先级;判断所述本设备的优先级是否高于所述其他各VAM服务器的优先级;如果是,则确定本设备为主用VAM服务器;如果否,则确定本设备为备用VAM服务器。
请参见图15,本发明还提供一种与上述一种IPSec SA的获取方法对应的装置150,应用于ADVPN网络中的任一VAM客户端上,所述ADVPN网络通常VAM服务器以及若干VAM客户端,其中所述VAM服务器通常包括一个主用VAM服务器和至少一个备用VAM服务器,主用VAM服务器与备用VAM服务器之间进行业务的负载分担;所述VAM客户端包括所述ADVPN网络中的Hub设备和Spoke设备;该装置150具体可包括:
注册单元1501,用于向所述VAM服务器进行注册;
第二接收单元1502,用于接收所述VAM服务器下发的IPSec SA;
发送单元1503,用于向所述VAM服务器发送keepalive报文;所述keepalive报文包括本地最新IPSec SA的SPI;
第二更新单元1504,用于接收所述VAM服务器下发的最新IPSec SA,并根据接收到的所述最新IPSec SA完成本地IPSec SA的更新,其中,所述最新IPSec SA为当所述VAM服务器最新IPSec SA的SPI与所述本地最新IPSec SA的SPI不相同时,由所述VAM服务器下发的。
上述装置150中,所述第二接收单元进一步用于接收所述VAM服务器下发的与所述IPSec SA对应的安全策略;
上述装置150中还包括封装单元1505,用于根据本地的IPSec SA对匹配所述安全策略的通信报文进行加密,并封装UDP报文头;其中,所述UDP 报文头中的目的UDP端口号为单独定义的非知名端口号。
本发明还提供一种与上述一种IPSec SA的获取方法对应的装置150,可以通过图14所示的硬件来实现,具体地,图14中的控制器(CPU)连接有存储器以及其它硬件,其中,存储器中存放有程序或指令,CPU可通过读取存储器中的程序或指令,执行相应的操作,其它硬件,具体可以是通信接口等,可接收或发送报文。
具体地,CPU通过读取存储器中的程序或指令,可执行以下操作:
CPU通过读取程序或指令,向所述VAM服务器进行注册;
CPU通过读取程序或指令,接收所述VAM服务器下发的IPSec SA;
CPU通过读取程序或指令,向所述VAM服务器发送keepalive报文;所述keepalive报文包括本地最新IPSec SA的SPI;
CPU通过读取程序或指令,接收所述VAM服务器下发的最新IPSec SA,并根据接收到的所述最新IPSec SA完成本地IPSec SA的更新,其中,所述最新IPSec SA为当所述VAM服务器最新IPSec SA的SPI与所述本地最新IPSec SA的SPI不相同时,由所述VAM服务器下发的。
CPU通过读取程序或指令,还用于接收所述VAM服务器下发的与所述IPSec SA对应的安全策略;
CPU通过读取程序或指令,还用于根据本地的IPSec SA对匹配所述安全策略的通信报文进行加密,并封装UDP报文头;其中,所述UDP报文头中目的UDP端口号为单独定义的非知名端口号。
本领域技术人员可以理解实施例中的装置中的单元可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的单元可以合并为一个单元,也可进一步拆分成多个子模块。上述发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (16)
1.一种因特网协议安全的安全关联IPSec SA的获取方法,应用于自动发现虚拟专用网ADVPN网络中的任一虚拟专用网地址管理VAM服务器上,所述ADVPN网络包括至少两个VAM服务器以及若干VAM客户端,其特征在于,所述方法包括:
根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA;
接收所述VAM客户端发送的保活keepalive报文;所述keepalive报文包括所述VAM客户端最新IPSec SA的安全参数索引SPI;
判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSec SA的SPI是否相同;
当判断出本地最新IPSec SA的SPI与所述VAM客户端最新IPSec SA的SPI不相同时,将所述本地最新的IPSec SA下发给所述VAM客户端,以使得所述VAM客户端完成IPSec SA更新。
2.如权利要求1所述的方法,其特征在于,当所述VAM服务器为主用VAM服务器时,所述根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA包括:
根据ADVPN域对在本地已注册的各VAM客户端进行分组;
为每个分组分别创建IPSec SA和对应的安全策略,并分别下发给各分组中的成员VAM客户端。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
在本地对已创建的所述IPSec SA进行周期性的更新,并同步给备用VAM服务器,以使得所述备用VAM服务器向所述VAM客户端下发的IPSec SA为最新,并且与主用VAM服务器下发的IPSec SA保持一致。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
将本设备的优先级通告给其他各VAM服务器,同时接收所述其他各VAM服务器通告的优先级;
判断所述本设备的优先级是否高于所述其他各VAM服务器的优先级;
如果是,则确定本设备为主用VAM服务器;
如果否,则确定本设备为备用VAM服务器。
5.如权利要求1所述的方法,其特征在于,所述VAM客户端包括所述ADVPN网络中的Hub设备和Spoke设备。
6.一种安全关联IPSec SA的获取方法,应用于自动发现虚拟专用网ADVPN网络中的任一虚拟专用网地址管理VAM客户端上,所述ADVPN网络包括至少两个VAM服务器以及若干VAM客户端,其特征在于,所述方法包括:
向所述VAM服务器进行注册;
接收所述VAM服务器下发的IPSec SA;
向所述VAM服务器发送保活keepalive报文;所述keepalive报文包括本地最新IPSecSA的安全参数索引SPI;
接收所述VAM服务器下发的最新IPSec SA,并根据接收到的所述最新IPSec SA完成本地IPSec SA的更新,其中,所述最新IPSec SA为当所述VAM服务器最新IPSec SA的SPI与所述本地最新IPSec SA的SPI不相同时,由所述VAM服务器下发的。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
接收所述VAM服务器下发的与所述IPSec SA对应的安全策略;
根据所述IPSec SA对匹配所述安全策略的通信报文进行加密,并封装UDP报文头;
其中,所述UDP报文头中的目的UDP端口号为单独定义的非知名端口号。
8.如权利要求6所述的方法,其特征在于,所述VAM客户端包括所述ADVPN网络中的Hub设备和Spoke设备。
9.一种安全关联IPSec SA的获取装置,应用于自动发现虚拟专用网ADVPN网络中的任一虚拟专用网地址管理VAM服务器上,所述ADVPN网络包括至少两个VAM服务器以及若干VAM客户端,其特征在于,所述装置包括:
下发单元,用于根据VAM客户端的注册信息为所述VAM客户端下发对应的IPSec SA;
第一接收单元,用于接收所述VAM客户端发送的保活keepalive报文;所述keepalive报文包括所述VAM客户端最新IPSec SA的安全参数索引SPI;
第一判断单元,用于判断所述VAM客户端最新IPSec SA的SPI与本地最新IPSec SA的SPI是否相同;当判断出本地最新IPSec SA的SPI与所述VAM客户端最新IPSec SA的SPI不相同时,将所述本地最新的IPSec SA下发给所述VAM客户端,以使得所述VAM客户端完成IPSecSA更新。
10.如权利要求9所述的装置,其特征在于,所述下发单元进一步用于:
根据ADVPN域对在本地已注册的各VAM客户端进行分组;
为每个分组分别创建IPSec SA,并分别下发给各分组中的成员VAM客户端。
11.如权利要求10所述的装置,其特征在于,所述装置还包括:
第一更新单元,用于在本地对已创建的所述IPSec SA进行周期性的更新,并同步给备用VAM服务器,以使得所述备用VAM服务器向所述VAM客户端下发的IPSec SA为最新,并且与主用VAM服务器下发的IPSec SA保持一致。
12.如权利要求9所述的装置,其特征在于,所述装置还包括:
通告单元,用于将本设备的优先级通告给其他各VAM服务器,同时接收所述其他各VAM服务器通告的优先级;
第二判断单元,用于判断所述本设备的优先级是否高于所述其他各VAM服务器的优先级;如果是,则确定本设备为主用VAM服务器;如果否,则确定本设备为备用VAM服务器。
13.如权利要求9所述的装置,其特征在于,所述VAM客户端包括所述ADVPN网络中的Hub设备和Spoke设备。
14.一种安全关联IPSec SA的获取装置,应用于自动发现虚拟专用网ADVPN网络中的任一虚拟专用网地址管理VAM客户端上,所述ADVPN网络包括至少两个VAM服务器以及若干VAM客户端,其特征在于,所述装置包括:
注册单元,用于向所述VAM服务器进行注册;
第二接收单元,用于接收所述VAM服务器下发的IPSec SA;
发送单元,用于向所述VAM服务器发送保活keepalive报文;所述keepalive报文包括本地最新IPSec SA的安全参数索引SPI;
第二更新单元,用于接收所述VAM服务器下发的最新IPSec SA,并根据接收到的所述最新IPSec SA完成本地IPSec SA的更新,其中,所述最新IPSec SA为当所述VAM服务器最新IPSec SA的SPI与所述本地最新IPSec SA的SPI不相同时,由所述VAM服务器下发的。
15.如权利要求14所述的装置,其特征在于,所述第二接收单元进一步用于接收所述VAM服务器下发的与所述IPSec SA对应的安全策略;
所述装置还包括:
封装单元,用于根据本地的IPSec SA对匹配所述安全策略的通信报文进行加密,并封装UDP报文头;
其中,所述UDP报文头中目的UDP端口号为单独定义的非知名端口号。
16.如权利要求14所述的装置,其特征在于,所述VAM客户端包括所述ADVPN网络中的Hub设备和Spoke设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410264460.5A CN104023022B (zh) | 2014-06-13 | 2014-06-13 | 一种IPSec SA的获取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410264460.5A CN104023022B (zh) | 2014-06-13 | 2014-06-13 | 一种IPSec SA的获取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104023022A CN104023022A (zh) | 2014-09-03 |
CN104023022B true CN104023022B (zh) | 2017-08-08 |
Family
ID=51439592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410264460.5A Active CN104023022B (zh) | 2014-06-13 | 2014-06-13 | 一种IPSec SA的获取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104023022B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107534643B (zh) * | 2015-03-20 | 2021-03-09 | 移动熨斗公司 | 在ip vpn与传输层vpn之间转换移动业务的方法和系统 |
CN104868991B (zh) * | 2015-05-07 | 2018-09-04 | 新华三技术有限公司 | 一种安全参数索引冲突处理方法及组密钥服务器ks |
CN105978909B (zh) * | 2016-07-08 | 2019-01-22 | 北京炼石网络技术有限公司 | 基于传输层封包的数据传输方法、数据传输装置及系统 |
CN106878184B (zh) * | 2017-02-28 | 2020-02-11 | 新华三技术有限公司 | 一种数据报文传输方法和装置 |
CN107171786A (zh) * | 2017-05-19 | 2017-09-15 | 成都极玩网络技术有限公司 | 网络代理账户控制方法 |
CN112751946B (zh) * | 2019-10-31 | 2023-11-24 | 中国移动通信有限公司研究院 | 一种隧道建立方法、装置、设备及计算机可读存储介质 |
CN111614796B (zh) * | 2020-04-30 | 2023-03-24 | 网络通信与安全紫金山实验室 | 使用手工密钥配置IPsec隧道穿越NAT的方法及装置 |
CN112564969A (zh) * | 2020-12-04 | 2021-03-26 | 浪潮电子信息产业股份有限公司 | 简单网络管理协议中的信息传输方法、系统及相关装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148810A (zh) * | 2010-02-04 | 2011-08-10 | 成都市华为赛门铁克科技有限公司 | 安全关联存活检测方法、装置和系统 |
CN102739497A (zh) * | 2012-06-07 | 2012-10-17 | 杭州华三通信技术有限公司 | 一种路由自动生成方法及其装置 |
CN102904901A (zh) * | 2012-10-29 | 2013-01-30 | 杭州华三通信技术有限公司 | 同步IPsec SA的方法、组成员及组密钥服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100651716B1 (ko) * | 2004-10-11 | 2006-12-01 | 한국전자통신연구원 | Diameter 기반 프로토콜에서 모바일 네트워크의부트스트랩핑 방법 및 그 시스템 |
-
2014
- 2014-06-13 CN CN201410264460.5A patent/CN104023022B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148810A (zh) * | 2010-02-04 | 2011-08-10 | 成都市华为赛门铁克科技有限公司 | 安全关联存活检测方法、装置和系统 |
CN102739497A (zh) * | 2012-06-07 | 2012-10-17 | 杭州华三通信技术有限公司 | 一种路由自动生成方法及其装置 |
CN102904901A (zh) * | 2012-10-29 | 2013-01-30 | 杭州华三通信技术有限公司 | 同步IPsec SA的方法、组成员及组密钥服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN104023022A (zh) | 2014-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104023022B (zh) | 一种IPSec SA的获取方法和装置 | |
US7373660B1 (en) | Methods and apparatus to distribute policy information | |
US10015046B2 (en) | Methods and apparatus for a self-organized layer-2 enterprise network architecture | |
EP2579544B1 (en) | Methods and apparatus for a scalable network with efficient link utilization | |
US6701437B1 (en) | Method and apparatus for processing communications in a virtual private network | |
US20020016926A1 (en) | Method and apparatus for integrating tunneling protocols with standard routing protocols | |
CN116319516A (zh) | 安全sd-wan端口信息分发 | |
CN101515859B (zh) | 一种因特网协议安全隧道传输组播的方法及设备 | |
CN109923838A (zh) | 桥接远程孤岛的弹性vpn | |
JP5558485B2 (ja) | マルチドメインプロバイダEthernetネットワークの動作方法 | |
RU2761446C1 (ru) | Система и способ для создания групповых сетей между сетевыми устройствами | |
EP2161873A1 (en) | Method, device and system for realizing a new group member registration in the multicast key management | |
CN112769614B (zh) | 一种按需vpn的自动管理方法和异构网络的互通系统 | |
KR102117434B1 (ko) | 전기통신 네트워크와 적어도 하나의 사용자 장비 간의 적어도 하나의 통신 교환의 개선된 핸들링을 위한 방법, 전기통신 네트워크, 사용자 장비, 시스템, 프로그램 및 컴퓨터 프로그램 제품 | |
CN107040441A (zh) | 跨数据中心的数据传输方法、装置及系统 | |
CN103095507B (zh) | 基于以太网虚拟化互联网络的报文传输方法及边缘设备 | |
CN108259292B (zh) | 建立隧道的方法及装置 | |
CN117424778B (zh) | 跨控制域sd-wan网络实现大二层通信的方法 | |
CN115473641B (zh) | 可自动组网的量子加密通信方法和系统 | |
KR100664715B1 (ko) | 게이트웨이 다중화를 제공하는 지알이 기반 가상사설망 | |
US11924172B1 (en) | System and method for instantiation of stateless extranets | |
Farota et al. | DMVPN (dynamic multipoint VPN): A solution for interconnection of sites IPV6 over an IPV4 transport network | |
KR100730024B1 (ko) | 지알이 터널을 기반 가상 사설 네트워크 및 지알이 터널을기반으로 하는 회선 다중화 방법 | |
Fang | Ruta: Dis-aggregated routing system over multi-cloud | |
CN104040971B (zh) | 一种针对终端加入/离开虚拟专用网的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |