一种基于IKEv2确定保护网段的方法和装置转让专利

申请号 : CN201710606272.X

文献号 : CN107204994B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张鹤岭

申请人 : 杭州迪普科技股份有限公司

摘要 :

本申请提供一种基于IKEv2确定保护网段的方法和装置,应用于VPN设备。所述方法包括:接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在所述TSi载荷和所述TSr载荷中关联存储;如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。采用本申请的技术方法,可以加快完成IKEv2第二协商阶段的协商速度。

权利要求 :

1.一种基于IKEv2确定保护网段的方法,应用于VPN设备,其特征在于,包括:接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;

判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在TSi载荷和TSr载荷中关联存储;

如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。

2.根据权利要求1所述的方法,其特征在于,当未携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段在所述TSi载荷和所述TSr载荷中未关联存储;

所述方法还包括:

将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合,将组合后的存在互访关系的本端网段和对端网段确定为保护网段。

3.根据权利要求1所述的方法,其特征在于,所述基于读取到的关联存储的网段确定保护网段,包括:将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合,将组合后的存在互访关系的本端网段和对端网段确定为保护网段。

4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:基于本端VPN设备上预先配置的本端的私网网段和对端的私网网段之间的互访关系,确定第二保护网段;

判断基于对端VPN设备发送的所述协商报文确定的保护网段,和所述第二保护网段是否相同;

如果相同,将基于对端VPN设备发送的所述协商报文确定的保护网段或者所述第二保护网段确定为保护网段。

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:如果基于对端VPN设备发送的所述协商报文确定的保护网段,和所述第二保护网段不相同,将所述基于对端VPN设备发送的所述协商报文确定的保护网段和所述第二保护网段进行交集运算以得到运算结果;

将所述运算结果确定为保护网段。

6.一种基于IKEv2确定保护网段的装置,应用于VPN设备,其中,所述VPN设备上预先配置了本端VPN设备侧的私网网段与对端VPN设备侧的私网网段,以及,本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,其特征在于,包括:接收单元,用于接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;

判断单元,用于判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在TSi载荷和TSr载荷中关联存储;

确定单元,用于如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。

7.根据权利要求6所述的装置,其特征在于,当未携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段在所述TSi载荷和所述TSr载荷中未关联存储;

包括:

所述确定单元进一步用于:

将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合,将组合后的存在互访关系的本端网段和对端网段确定为保护网段。

8.根据权利要求6所述的装置,其特征在于,包括:

所述确定单元具体用于:

将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合,将组合后的存在互访关系的本端网段和对端网段确定为保护网段。

9.根据权利要求6-8任一项所述的装置,其特征在于,所述装置还包括:第二确定单元,用于基于本端VPN设备上预先配置的本端的私网网段和对端的私网网段之间的互访关系,确定第二保护网段;

第二判断单元,用于判断基于对端VPN设备发送的所述协商报文确定的保护网段,和所述第二保护网段是否相同;

所述确定单元,进一步用于如果相同,将基于对端VPN设备发送的所述协商报文确定的保护网段或者所述第二保护网段确定为保护网段。

10.根据权利要求9所述的装置,其特征在于,所述装置还包括:运算单元,用于如果基于对端VPN设备发送的所述协商报文确定的保护网段,和所述第二保护网段不相同,将所述基于对端VPN设备发送的所述协商报文确定的保护网段和所述第二保护网段进行交集运算以得到运算结果;

所述确定单元,进一步用于将所述运算结果确定为保护网段。

说明书 :

一种基于IKEv2确定保护网段的方法和装置

技术领域

[0001] 本申请涉及网络通信技术领域,特别涉及一种基于IKEv2确定保护网段的方法和装置。

背景技术

[0002] 当在网络上建立VPN(Virtual Private Network,虚拟专用网)时,通常可以采用IPSec(Internet Protocol Security,网络协议安全性)协议。其中,所述IPSec协议,是一种开放标准的框架结构,通过使用加密的安全服务以确保在IP网络上进行保密而安全的通讯。IPSec协议不是一个单独的协议,它给出了应用于IP网络层上网络数据安全的一整套体系结构,包括AH(Authentication Header,验证头)协议、ESP(Encapsulating Security Payload,封装安全载荷)协议、IKE(Internet Key Exchange,网络密钥交换)协议和用于网络认证及加密的一些算法等。
[0003] 其中,所述IKE协议为一种密钥管理协议。所述IKE协议的主要用于VPN设备双方的协商过程。IKE的协商过程包括两个协商阶段。第一协商阶段用于协商VPN设备双方公共的用于保护第二协商阶段的密钥,第二协商阶段用于协商保护数据的密钥及保护网段。
[0004] 上述保护网段为IPSec需要加密的报文集合。如果VPN设备接收到IP报文,可以将该IP报文的源IP和目的IP等信息匹配所述保护网段。如果匹配中所述保护网段,可以对该IP报文进行加密。
[0005] 其中,两端的VPN设备通过IKE第二协商阶段的协商报文中携带的两端的TS载荷来确定保护网段。所述TS载荷包括私网网段的个数,具体的私网网段等。当VPN设备接收到第二协商阶段的协商报文时,可以从两端的TS载荷中获取到两端的私网网段,然后建立本端的各私网网段与对端的各私网网段之间互访关系,所述互访关系即为保护网段。
[0006] 然而,只有当两端的VPN设备的各私网网段之间均能互相访问时,才能通过上述第二协商阶段中的一个协商报文确定保护网段。当各私网网段之间不是均能互相访问时,需要增加协商报文的数量才能确定保护网段。

发明内容

[0007] 有鉴于此,本申请提供一种基于IKEv2确定保护网段的方法和装置,应用于VPN设备,采用本申请提供的技术方法,无论两端的VPN设备的各私网网段之间是否均能互相访问,均只需要一个协商报文就能确定保护网段,从而可以加快完成所述IKEv2第二协商阶段协商的速度。
[0008] 具体地,本申请是通过如下技术方案实现的:
[0009] 一种基于IKEv2确定保护网段的方法,应用于VPN设备,其中,所述VPN设备上预先配置了本端VPN设备侧的私网网段与对端VPN设备侧的私网网段,以及,本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,包括:
[0010] 接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;
[0011] 判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在所述TSi载荷和所述TSr载荷中关联存储;
[0012] 如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。一种基于IKEv2确定保护网段的装置,应用于VPN设备,其中,所述VPN设备上预先配置了本端VPN设备侧的私网网段与对端VPN设备侧的私网网段,以及,本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,包括:
[0013] 接收单元,用于接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;
[0014] 判断单元,用于判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在所述TSi载荷和所述TSr载荷中关联存储;
[0015] 确定单元,用于如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。由于本端VPN设备接收到对端VPN设备发送的IKEv2第二协商阶段的协商报文后,可以判断所述协商报文中是否携带了用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的标记。如果所述协商报文中携带了所述标记,本端VPN设备可以将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合以确定保护网段。如果所述协商报文中未携带所述标记,本端VPN设备可以将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合以确定保护网段。
[0016] 因此,采用本申请提供的技术方法,无论本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间是否均互访,本端VPN设备和对端VPN设备之间只需要一次IKEv2第二协商阶段的协商就可以确定保护网段。从而,加快了完成所述IKEv2第二协商阶段协商的速度。

附图说明

[0017] 图1为本申请实施例示例性示出的一种VPN组网示意图;
[0018] 图2为本申请实施例示出的TS载荷的格式示意图;
[0019] 图3为本申请实施例示例性示出的一种基于IKEv2确定保护网段的方法流程图;
[0020] 图4为本申请一种基于IKEv2确定保护网段的装置所在VPN设备的一种硬件结构图;
[0021] 图5为本申请实施例示例性示出的一种基于IKEv2确定保护网段的装置。

具体实施方式

[0022] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0023] 在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0024] 应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0025] 请参见图1,图1为本申请实施例示例性示出的一种VPN组网示意图。
[0026] 在相关技术中,通过IKEv2第二协商阶段的协商确定保护网段的具体过程如下:
[0027] 在IKEv2第二协商阶段的协商过程中,两端的VPN设备通过向对端VPN设备发送所述第二阶段的协商报文确定保护网段。在该协商过程中,其中一端VPN设备为发起方,另一端VPN设备为响应方。
[0028] 如果两端的VPN设备进行IKEv2第二协商阶段的协商,发起方向响应方发送协商报文,其中该协商报文的内容包括HDR,SK{SA,[KEi,]Ni,TSi,TSr}。如果响应方接收到发起方发送的协商报文,响应方将响应于发起方发送的协商报文,向发起方发送协商报文,该协商报文的内容包括:HDR,SK{SA,[KEr,]Nr,TSi,TSr}。
[0029] 其中,所述HDR为协商报文的报文头部,SK{}表示括号内部的数据被加密。KEi和KEr分别为发起方和响应方的KE载荷,Ni和Nr为随机数,TSi和TSr分别为发起方和响应方的TS载荷,所述TS载荷包括网段信息。
[0030] 在发起方接收到响应方返回的协商报文后,发起方将从该协商报文中获取发起方的TS载荷TSi和响应方的TS载荷TSr。
[0031] 其中,发起方接收到响应方返回的协商报文中的TSi和TSr中的网段信息为用户在响应方的VPN设备上预先配置的。
[0032] 需要说明的是,用户在发起方的VPN设备上预先配置网段信息的过程,与用户在响应方的VPN设备上预先配置网段信息的过程是互相独立的。
[0033] 通常,用户在发起方的VPN设备上预先配置的本端VPN设备侧的私网网段和对端VPN设备侧的私网网段之间的互访关系,与用户在响应方的VPN设备上预先配置的本端VPN设备侧的私网网段和对端VPN设备侧的私网网段之间的互访关系是相同的,当然,也可能是不相同的。
[0034] 请参见图2,图2为本申请实施例示出的TS载荷的格式示意图。
[0035] 其中,图2所示的TS载荷中包括Next Payload、RESERVED-1、Payload Length、Number of TS、RESERVED-2、Traffic Selectors。其中,所述Next Payload、RESERVED-1、Payload Length为IKEv2消息报文的通用头部,在这里不在对所述Next  Payload、RESERVED-1、Payload Length进行描述,详细内容请参考相关技术内容。
[0036] 所述Number of TS表示该TS载荷中包含的网段个数。所述RESERVED-2为保留字段,IKEv2协议要求发送方需要将该保留字段置零,响应方忽略该保留字段的值。所述Traffic Selectors为该TS载荷中包含的网段具体信息,其中,每个网段的具体格式在这里不再进行描述,请参考相关技术内容。
[0037] 发起方从响应方返回的协商报文中获取到TSi和TSr后,发起方将从TSi和TSr中分别获取Traffic Selectors中的网段信息,然后确定保护网段。
[0038] 例如,VPN设备A为发起方,VPN设备B为响应方,VPN设备A接收到VPN设备B返回的协商报文中的TSi中的网段信息为私网网段1和私网网段2,TSr中的网段信息为私网网段3和私网网段4,VPN设备A可以初步确定的保护网段为:私网网段1<—>私网网段3、私网网段1<—>私网网段4、私网网段2<—>私网网段3、私网网段2<—>私网网段4。
[0039] 然而,如图1所示,VPN设备A侧有私网网段1和私网网段2,VPN设备B侧有私网网段3和私网网段4。VPN设备A侧的私网网段和VPN设备B侧的私网网段之间的互访关系存在以下几种情况:
[0040] 1)VPN设备A侧的各私网网段与VPN设备B侧的各私网网段之间均可以互相访问,那么VPN设备A和VPN设备B通过IKEv2第二协商阶段的协商后,VPN设备A和VPN设备B需要确定的保护网段为:私网网段1<—>私网网段3、私网网段1<—>私网网段4、私网网段2<—>私网网段3、私网网段2<—>私网网段4。
[0041] 2)VPN设备A侧的私网网段与VPN设备B侧的私网网段只能一对一访问。比如,只允许私网网段1和私网网段3之间进行互访,以及只允许私网网段2和私网网段4之间进行互访,那么VPN设备A和VPN设备B通过IKEv2第二协商阶段的协商后,VPN设备A和VPN设备B需要确定的保护网段为:私网网段1<—>私网网段3、私网网段2<—>私网网段4。
[0042] 3)VPN设备A侧的私网网段与VPN设备B侧的私网网段,既存在一对多访问又存在一对一访问。比如,私网网段1均能访问私网网段3和私网网段4,私网网段2只能访问私网网段3,那么VPN设备A和VPN设备B通过IKEv2第二协商阶段的协商后,VPN设备A和VPN设备B需要确定的保护网段为:私网网段1<—>私网网段3、私网网段1<—>私网网段4、私网网段2<—>私网网段3。
[0043] 通过上述IKEv2第二协商阶段的协商确定保护网段的具体过程可见,如果发起方侧的各个私网网段与响应方侧的各个私网网段均互相访问,那么发起方和响应方只需要向对方发送一个IKEv2第二协商阶段的协商报文即可,即上述1)所示的情况。
[0044] 如果发起方侧的部分私网网段无法与响应方侧的部分私网网段互相访问,那么发起方与响应方之间需要增加IKEv2第二协商阶段的协商报文才能确定保护网段,即上述2)、3)所示的情况。
[0045] 如果是上述2)所述的情况,那么发起方与响应方各需要增加一个第二协商阶段的协商报文,即发起方和响应方之间需要多增加一次IKEv2第二协商阶段的协商过程。在第一次IKEv2第二协商阶段的协商过程,发起方向响应方发送的协商报文中,TSi的网段信息为私网网段1,TSr的网段信息为私网网段3,响应方返回至发起方的协商报文中的TSi的网段信息也为私网网段1,TSr的网段信息也为私网网段3。在第二次IKEv2第二协商阶段的协商过程,发起方向响应方发送的协商报文中,TSi的网段信息为私网网段2,TSr的网段信息为私网网段4,响应方返回至发起方的协商报文中的TSi的网段信息也为私网网段2,TSr的网段信息也为私网网段4。
[0046] 如果是上述3)所述的情况,那么发起方与响应方也各需要增加一个第二协商阶段的协商报文,即发起方和响应方之间需要多增加一次IKEv2第二协商阶段的协商过程。在第一次IKEv2第二协商阶段的协商过程,发起方向响应方发送的协商报文中,TSi的网段信息为私网网段1,TSr的网段信息为私网网段3和私网网段4,响应方返回至发起方的协商报文中的TSi的网段信息也为私网网段1,TSr的网段信息也为私网网段3和私网网段4。在第二次IKEv2第二协商阶段的协商过程,发起方向响应方发送的协商报文中,TSi的网段信息为私网网段2,TSr的网段信息为私网网段3,响应方返回至发起方的协商报文中的TSi的网段信息也为私网网段2,TSr的网段信息也为私网网段3。
[0047] 如果需要多次IKEv2第二协商阶段的协商过程才能确定保护网段,那么会降低完成IKEv2第二协商阶段协商的速度。
[0048] 为了解决上述问题,本申请提出了一种基于IKEv2确定保护网段的方法,应用于VPN设备。本端VPN设备通过接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在所述TSi载荷和所述TSr载荷中关联存储;如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。
[0049] 由于本端VPN设备接收到对端VPN设备发送的IKEv2第二协商阶段的协商报文后,可以判断所述协商报文中是否携带了用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的标记。如果所述协商报文中携带了所述标记,本端VPN设备可以将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合以确定保护网段。如果所述协商报文中未携带所述标记,本端VPN设备可以将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合以确定保护网段。
[0050] 因此,采用本申请提供的技术方法,无论本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间是否均互访,本端VPN设备和对端VPN设备之间只需要一次IKEv2第二协商阶段的协商就可以确定保护网段。从而,加快了完成所述IKEv2第二协商阶段协商的速度。
[0051] 以下通过具体的实施例和示意图对本申请提出的技术方法进行描述。
[0052] 请参见图3,图3为本申请实施例示例性示出的一种基于IKEv2确定保护网段的方法流程图,应用于VPN设备,具体执行以下步骤:
[0053] 步骤301:接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;
[0054] 步骤302:判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在所述TSi载荷和所述TSr载荷中关联存储;
[0055] 步骤303:如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。
[0056] 在本申请中,各端VPN设备根据其设备上预先配置的本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,将指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的预设标记携带于发送至对端VPN设备的IKEv2第二协商阶段的协商报文。本端VPN设备接收到对端VPN设备发送的所述协商报文后,本端VPN设备可以判断所述协商报文中是否携带了所述预设标记。如果携带了所述预设标记,本端VPN设备可以将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合以确定保护网段。如果所述协商报文中未携带所述标记,本端VPN设备可以将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合以确定保护网段。
[0057] 上述本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系,换言之就是,本端的各个私网网段无法与对端的各个私网网段互访。
[0058] 在示出的一种实施方式中,用户在本端VPN设备上预先配置本端VPN设备侧的私网网段与对端VPN设备侧的私网网段,以及本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系。本端VPN设备启动后,可以在IKEv2第二协商阶段的协商过程中,将本端VPN设备上预先配置的本端VPN设备侧的私网网段与对端VPN设备侧的私网网段保存于IKEv2第二协商阶段的协商报文中,以及,将用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的预设标记携带于所述协商报文中,然后将所述协商报文发送至对端VPN设备。
[0059] 在实现时,如果用户在本端VPN设备上已经预先配置了本端VPN设备侧的私网网段与对端VPN设备侧的私网网段,以及本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,那么,在本端VPN设备与对端VPN设备进行IKE第二协商阶段的协商过程中,本端VPN设备可以读取预先配置的本端VPN设备侧的私网网段和对端VPN设备侧的私网网段,以及本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系。
[0060] 其中,用户在本端VPN设备上将本端VPN设备侧的私网网段与对端VPN设备侧的私网网段,以及本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系进行预先配置的方式不进行限定。比如,用户可以在本端VPN设备上配置的方式可以如表1所示,表1为本申请实施例示出的一种VPN设备上预先配置私网网段的示意表。
[0061]序号 本端VPN设备侧的私网网段 对端VPN设备侧的私网网段
1 私网网段1 私网网段3
2 私网网段1 私网网段4
3 私网网段2 私网网段3
… … …
[0062] 表1
[0063] 本端VPN设备读取到本端VPN设备侧的私网网段和对端VPN设备侧的私网网段,以及本端VPN设备侧的私网网段与对端VPN设备侧的私网网段的互访关系后,本端VPN设备可以判断本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间是否均互访。
[0064] 如果本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间均互访,在这样的情况下,本端VPN设备可以将本端VPN设备侧的各个私网网段保存于IKEv2第二协商阶段的协商报文中的TSi中的Traffic Selectors字段,将对端VPN设备侧的各个私网网段保存于TSr中的Traffic Selectors字段。其中,TSi的Traffic Selectors字段中的各个私网网段之间互不相同,TSr的TrafficSelectors字段中的各个私网网段之间也互不相同,即TSi和TSr的TrafficSelectors字段中均不会出现重复的私网网段。
[0065] 例如,本端VPN设备侧包括私网网段1和私网网段2,对端VPN设备侧包括私网网段3和私网网段4,且本端VPN设备侧的各个私网网段与对端各个私网网段之间均互访,那么TSi的Traffic Selectors字段中写入私网网段1和私网网段2,TSr的Traffic Selectors字段中写入私网网段3和私网网段4。
[0066] 其中,TSi和TSr的Traffic Selectors字段中保存的各个私网网段之间没有先后顺序的要求,比如,TSi的Traffic Selectors字段中可以先保存私网网段1,再保存私网网段2,也可以先保存私网网段2,再保存私网网段1。
[0067] 相反地,如果本端VPN设备侧的部分私网网段与对端VPN设备侧的部分私网网段存在互访关系,在这样的情况下,本端VPN设备需要将本端VPN设备侧的私网网段,和该私网网段互访的对端VPN设备侧的私网网段,以一一对应的形式分别保存于TSi和TSr的Traffic Selectors字段中,以及在TSi和TSr中分别保存对应的私网网段的个数。其中,TSi的Traffic Selectors字段中可能会出现相同的私网网段,TSr的Traffic Selectors字段中也可能会出现相同的私网网段,即TSi和TSr的Traffic Selectors字段中均可能会出现重复的私网网段。
[0068] 例如,本端VPN设备侧包括私网网段1和私网网段2,对端VPN设备侧包括私网网段3和私网网段4,且只允许私网网段1与私网网段3互访,私网网段2与私网网段4互访。那么,本端VPN设备可以在TSi的Traffic Selectors字段中先写入私网网段1,同时,在TSr的Traffic Selectors字段中写入私网网段3,然后,本端设备可以在TSi的Traffic Selectors字段中的私网网段1后面的位置写入私网网段2,同时,在TSr的Traffic Selectors字段中的私网网段3后面的位置写入私网网段4。
[0069] 其中,TSi和TSr的Traffic Selectors字段中写入的私网网段之间有先后顺序的要求。比如,TSi的Traffic Selectors字段中先写入了私网网段1,那么TSr的Traffic Selectors字段中必须先写入与私网网段1互访的私网网段3,然后TSi的Traffic Selectors字段中的私网网段1后面的位置在写入私网网段2,同时,TSr的Traffic Selectors字段中的私网网段3后面的位置,写入与私网网段2互访的私网网段4。或者,TSi的Traffic Selectors字段中先写入了私网网段2,那么TSr的Traffic Selectors字段中必须先写入与私网网段2互访的私网网段4,然后TSi的Traffic Selectors字段中的私网网段2后面的位置在写入私网网段1,同时,TSr的Traffic Selectors字段中的私网网段4后面的位置,写入与私网网段1互访的私网网段3。
[0070] 例如,本端VPN设备侧包括私网网段1和私网网段2,对端VPN设备侧包括私网网段3和私网网段4,且允许私网网段1与私网网段3和私网网段4均互访,只允许私网网段2与私网网段3互访。那么,本端VPN设备可以在TSi的Traffic Selectors字段中写入私网网段1,同时,在TSr的Traffic Selectors字段中写入私网网段3,然后,在TSi的Traffic Selectors字段中的私网网段1后面的位置继续写入私网网段1,同时,在TSr的Traffic Selectors字段中的私网网段3后面的位置写入私网网段4,最后,TSi的Traffic Selectors字段中的第二私网网段1后面的位置写入私网网段2,同时,在TSr的Traffic Selectors字段中的私网网段4后面的位置写入私网网段3。
[0071] 其中,TSi和TSr的Traffic Selectors字段中保存的私网网段之间有先后顺序的要求。在保证可以互访的两个私网网段在TS载荷的Traffic Selectors字段中相同次序位置的情况下,可以同步调整在Traffic Selectors字段中的保存位置。
[0072] 此外,如果本端VPN设备确定本端VPN设备侧的部分私网网段与对端VPN设备侧的部分私网网段存在互访关系,本端VPN设备还需要将用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的预设标记携带于所述IKEv2第二协商阶段的协商报文中。
[0073] 在可选的一种实现方式中,本端VPN设备可以在TS载荷中设置所述标记。参考图2所示的TS载荷的格式示意图,所述TS载荷中存在预留字段,本端VPN设备可以在预留字段中设置所述标记。其中,TSi和TSr中设置的所述标记相同。
[0074] 比如,本端设备可以在第二预留字段中设置标记。本端VPN设备可以将第二预留字段的首位置零,用于标识本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间均互访;将第二预留字段的首位置位,用于标识本端VPN设备侧的部分私网网段与对端VPN设备侧的部分私网网段存在互访关系。
[0075] 在本申请的实施例中,本端VPN设备根据本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,在IKEv2第二协商阶段的协商报文中的TSi和TSr中分别保存本端VPN设备侧的私网网段和对端VPN设备侧的私网网段,以及在所述IKEv2第二协商阶段的协商报文中设置了用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的预设标记后,本端VPN设备可以将所述IKEv2第二协商阶段的协商报文发送至对端VPN设备。
[0076] 对端VPN设备接收到本端VPN设备发送的所述IKEv2第二协商阶段的协商报文后,将会向本端VPN设备返回IKEv2第二协商阶段的协商报文。其中,对端VPN设备在该IKEv2第二协商阶段的协商报文中保存网段信息以及携带标记的过程与上述本端VPN设备在IKEv2第二协商阶段的协商报文中保存网段信息以及携带标记的过程一样,请参考上述内容,在此不再对对端VPN设备在IKEv2第二协商阶段的协商报文中写入网段信息以及标记的过程进行赘述。
[0077] 在本申请的实施例中,本端VPN设备接收到对端VPN设备返回的IKEv2第二协商阶段的协商报文后,本端VPN设备可以判断该IKEv2第二协商阶段的协商报文中是否携带了用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的预设标记,确定是否本端VPN设备侧的部分私网网段与对端VPN设备侧的部分私网网段存在互访关系。
[0078] 假设,通过在TS载荷的第二预留字段的首位置零和置位来标识本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间是否均互访。在实现时,本端VPN设备可以从TSi或者TSr的第二预留字段首位的值,如果所述第二预留字段首位的值为0,那么本端VPN设备可以确定本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间均互访。如果所述第二预留字段首位的值为1,那么本端VPN设备可以确定本端VPN设备侧的部分私网网段与对端VPN设备侧的部分私网网段存在互访关系。
[0079] 如果本端VPN设备确定本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间均互访,在这样的情况,本端VPN设备可以从对端VPN设备返回的IKEv2第二协商阶段的协商报文中的TSi和TSr中的Traffic Selectors字段,读取本端VPN设备侧的私网网段和对端VPN设备侧的私网网段。然后,将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合,将组合后的存在互访关系的本端网段和对端网段确定为保护网段。
[0080] 例如,对端VPN设备返回的IKEv2第二协商阶段的协商报文中的TSi中的Traffic Selectors字段写入了私网网段1和私网网段2,TSr中的Traffic Selectors字段写入了私网网段3和私网网段4。本端VPN设备可以确定保护网段为:私网网段1<—>私网网段3、私网网段1<—>私网网段4、私网网段2<—>私网网段3、私网网段2<—>私网网段4。
[0081] 如果本端VPN设备确定本端VPN设备侧的部分私网网段与对端VPN设备侧的部分私网网段存在互访关系,在这样的情况下,本端VPN设备可以从对端VPN设备返回的IKEv2第二协商阶段的协商报文中的TSi和TSr中的TrafficSelectors字段,读取私网网段,并将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合,即将在TSi和TSr中的Traffic Selectors字段中同一次序位置的私网网段建立互访关系,确定保护网段。
[0082] 例如,对端VPN设备返回的IKEv2第二协商阶段的协商报文中的TSi中的Traffic Selectors字段依次写入了私网网段1、私网网段1和私网网段2,TSr中的Traffic Selectors字段依次写入了私网网段3、私网网段4和私网网段3。本端VPN设备可以确定保护网段为:私网网段1<—>私网网段3、私网网段1<—>私网网段4、私网网段2<—>私网网段3。
[0083] 通常,本端VPN设备上预先配置的本端VPN设备侧的私网网段和对端VPN设备侧的私网网段之间的互访关系,与对端VPN设备上预先配置的本端VPN设备侧的私网网段和对端VPN设备侧的私网网段之间的互访关系是相同的,通过对端发送的IKEv2第二协商阶段的协商报文就可以确定本端VPN设备侧的保护网段。
[0084] 然而,在现实中,本端VPN设备上预先配置的本端VPN设备侧的私网网段和对端VPN设备侧的私网网段之间的互访关系,与对端VPN设备上预先配置的本端VPN设备侧的私网网段和对端VPN设备侧的私网网段之间的互访关系也会出现不相同的情况。
[0085] 因此,在本申请的实施例中,本端VPN设备除了根据对端VPN设备返回的协商报文初步确定保护网段之外,还可以根据本端VPN设备上预先配置的本端VPN侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,确定第二保护网段。
[0086] 例如,本端VPN设备上预先配置的本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系为:本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间均互访,那么本端VPN设备可以确定第二保护网段为:私网网段1<—>私网网段3、私网网段1<—>私网网段4、私网网段2<—>私网网段3、私网网段2<—>私网网段4。
[0087] 在本申请的实施例中,本端VPN设备通过对端VPN设备发送的协商报文确定的保护网段和通过本端VPN设备上预先配置的本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系确定的保护网段后,判断两个保护网段是否相同。
[0088] 如果所述两个保护网段相同,本端VPN设备可以确定本端VPN设备侧的保护网段为所述两个保护网段;如果所述两个保护网段不相同,本端VPN设备可以将所述两个保护网段进行交集运算得到运算结果,本端VPN设备侧的保护网段即为所述运算结果。
[0089] 例如,基于对端VPN设备返回的IKEv2第二协商阶段的协商报文确定的保护网段为:
[0090] 192.168.1.0/25<—>192.168.3.0/24、
[0091] 192.168.1.0/25<—>192.168.4.0/24、
[0092] 192.168.2.0/25<—>192.168.3.0/24、
[0093] 192.168.2.0/25<—>192.168.4.0/24;
[0094] 基于本端VPN设备上预先配置的本端VPN设备侧的私网网段与对端VPN设备侧的私网网段的互访关系确定的保护网段为:
[0095] 192.168.1.0/24<—>192.168.3.0/25、
[0096] 192.168.1.0/24<—>192.168.4.0/25、
[0097] 192.168.2.0/24<—>192.168.3.0/25、
[0098] 192.168.2.0/24<—>192.168.4.0/25;
[0099] 很明显,上述两个确定的保护网段不一样,本端VPN设备就会将上述两个确定的保护网段进行交集运算,得到运算结果为:
[0100] 192.168.1.0/25<—>192.168.3.0/25、
[0101] 192.168.1.0/25<—>192.168.4.0/25、
[0102] 192.168.2.0/25<—>192.168.3.0/25、
[0103] 192.168.2.0/25<—>192.168.4.0/25;
[0104] 本端VPN设备侧的保护网段即为上述运算结果。
[0105] 由上述本申请提供的技术方法可见,由于本端VPN设备接收到对端VPN设备发送的IKEv2第二协商阶段的协商报文后,可以判断所述协商报文中是否携带了用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系的标记。如果所述协商报文中携带了所述标记,本端VPN设备可以将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合以确定保护网段。如果所述协商报文中未携带所述标记,本端VPN设备可以将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合以确定保护网段。
[0106] 因此,采用本申请提供的技术方法,无论本端VPN设备侧的各个私网网段与对端VPN设备侧的各个私网网段之间是否均互访,本端VPN设备和对端VPN设备之间只需要一次IKEv2第二协商阶段的协商就可以确定保护网段。从而,加快了完成所述IKEv2第二协商阶段协商的速度。
[0107] 与前述一种基于IKEv2确定保护网段的方法的实施例相对应,本申请还提供了一种基于IKEv2确定保护网段的装置的实施例。
[0108] 本申请一种基于IKEv2确定保护网段的装置的实施例可以应用在VPN设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在VPN设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本申请一种基于IKEv2确定保护网段的装置所在VPN设备的一种硬件结构图,除了图4所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的VPN设备通常根据该基于IKEv2确定保护网段的实际功能,还可以包括其他硬件,对此不再赘述。
[0109] 请参见图5,图5为本申请实施例示例性示出的一种基于IKEv2确定保护网段的装置,应用于VPN设备,其中,所述VPN设备上预先配置了本端VPN设备侧的私网网段与对端VPN设备侧的私网网段,以及,本端VPN设备侧的私网网段与对端VPN设备侧的私网网段之间的互访关系,所述装置包括:接收单元510,判断单元520,确定单元530。
[0110] 其中,所述接收单元510,用于接收对端VPN设备发送的IKEv2第二协商阶段的协商报文;
[0111] 所述判断单元520,用于判断所述协商报文中是否携带了预设标记;其中,所述预设标记用于指示本端的私网网段中的部分网段与对端的私网网段中的部分网段存在互访关系;当携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段分别在所述TSi载荷和所述TSr载荷中关联存储;
[0112] 所述确定单元530,用于如果携带了所述预设标记,读取TSi载荷和TSr载荷中关联存储的网段,并基于读取到的关联存储的网段确定保护网段。
[0113] 其中,所述确定单元530具体用于:
[0114] 将TSi载荷中的本端网段和TSr载荷中与本端网段关联存储的对端网段进行两两组合,将组合后的存在互访关系的本端网段和对端网段确定为保护网段。
[0115] 在本申请的实施例中,当未携带所述预设标记时,本端网段和与本端网段存在互访关系的对端网段在所述TSi载荷和所述TSr载荷中未关联存储;
[0116] 所述确定单元530进一步用于:
[0117] 将TSi载荷中的本端网段与TSr载荷中的对端网段依次进行两两交叉组合,将组合后的存在互访关系的本端网段和对端网段确定为保护网段。
[0118] 由于,本端发送至对端的协商报文中的TSi和TSr中的网段信息,与对端发送至本端的协商报文中的TSi和TSr中的网段信息可能不相同,因此,在本申请的实施例中,所述装置还包括:
[0119] 第二确定单元,用于基于本端VPN设备上预先配置的本端的私网网段和对端的私网网段之间的互访关系,确定第二保护网段;
[0120] 第二判断单元,用于判断基于对端VPN设备发送的所述协商报文确定的保护网段,和所述第二保护网段是否相同;
[0121] 所述确定单元530,进一步用于如果相同,将基于对端VPN设备发送的所述协商报文确定的保护网段或者所述第二保护网段确定为保护网段。
[0122] 运算单元,用于如果基于对端VPN设备发送的所述协商报文确定的保护网段,和所述第二保护网段不相同,将所述基于对端VPN设备发送的所述协商报文确定的保护网段和所述第二保护网段进行交集运算以得到运算结果;
[0123] 所述确定单元530,进一步用于将所述运算结果确定为保护网段。
[0124] 上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0125] 对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0126] 以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。