CN101582889A - 一种利用探测机制实现vpn自动穿透的方法及装置 - Google Patents

一种利用探测机制实现vpn自动穿透的方法及装置 Download PDF

Info

Publication number
CN101582889A
CN101582889A CNA2009100863772A CN200910086377A CN101582889A CN 101582889 A CN101582889 A CN 101582889A CN A2009100863772 A CNA2009100863772 A CN A2009100863772A CN 200910086377 A CN200910086377 A CN 200910086377A CN 101582889 A CN101582889 A CN 101582889A
Authority
CN
China
Prior art keywords
vpn
port
packet
penetration
data package
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
Application number
CNA2009100863772A
Other languages
English (en)
Inventor
周永刚
陈大钊
惠晨犇
任献永
倪县乐
王刚
王凯阳
刘晓慧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SECWORLD TECHNOLOGY (BEIJING) Co Ltd
Original Assignee
SECWORLD TECHNOLOGY (BEIJING) Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SECWORLD TECHNOLOGY (BEIJING) Co Ltd filed Critical SECWORLD TECHNOLOGY (BEIJING) Co Ltd
Priority to CNA2009100863772A priority Critical patent/CN101582889A/zh
Publication of CN101582889A publication Critical patent/CN101582889A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明是一种利用探测机制实现VPN自动穿透的方法及装置,其步骤分为配置和数据包处理两个过程,其中:数据包处理过程的步骤是:当IPSEC数据包发送时,检查该隧道是否引用了VPN穿透端口,如果引用了,那么该数据包根据配置的穿透端口进行转换发送出去;当VPN网关系统收到数据包时,处理方式分为以下二种:如果不是IPSEC数据包,那么走正常系统流程,不进行数据包转换;如果是经过转换后IPSEC数据包,则将其转换成标准的IPSEC数据包。用于上述利用探测机制实现VPN自动穿透的方法的装置,包括:接收模块、发送模块、转换模块、自动探测模块和穿透端口可用性配置模块(5)。本发明可方法根据网络中开放的服务端口建立VPN隧道,当探测到端口不开放时,能够切换到其它开放的端口进行VPN通信。使得VPN隧道的建立更加灵活,可以满足在标准IPSec VPN不能正常通信的情况下建立VPN通信,并可以实现隧道的负载均衡。

Description

一种利用探测机制实现VPN自动穿透的方法及装置
技术领域
本发明是一种利用探测机制实现VPN自动穿透的方法及装置,属于网络信息安全技术领域。
背景技术
路由器是具有多个网络接口的计算机系统,从网络中接收到数据包,根据数据包源、目的进行路由表查找,并对查找成功的数据包进行转发。现在企业和政府都在不同的地区有大大小小的分支机构,这些分支机构都拥有自己的局域网络。但是这些网络都是分散的,需要互联互通。因为这些局域网络的地址都是私有地址,不能通过Internet进行路由,所以依靠路由器无法实现互联互通。
IPSec协议为IP的安全设计了框架与标准。IPSec虚拟专用网络(VPN)是目前实现该种互联互通普遍采用的一项技术。通过在各个分支机构的网络边界增加安全网关,安全网关根据安全策略将需要到达远程网络的数据进行加密,并发送到远程网络。但是目前存在以下缺陷:
1.如网关间通信的网络没有开放标准IPSec VPN服务,导致标准的IPSec VPN无法建立;
2.即使开放,一旦网络中标准IPSec VPN服务不稳定,会导致IPSec VPN通信异常;
发明内容
本发明正是针对上述现有技术中存在的问题而设计提供了一种利用探测机制实现VPN自动穿透的方法及装置,该技术利用探测机制发现网络中开放的业务端口,根据开放的端口对VPN数据进行封装的方法,使在UDP500及UDP4500端口未开放的情况下能够建立VPN隧道,实现VPN的穿越功能。当探测到端口由开放状态变成不开发时,VPN通信自动切换到另一开放端口,从而达到自动穿透。
本发明的目的是通过以下措施来实现的:
本发明技术方案提出了一种利用探测机制实现VPN自动穿透的方法,其特征在于:该方法的步骤分为配置、数据包处理两个过程,其中:
配置过程的步骤是:
[1]在VPN网关系统的预定义服务中增加定义网络已知的业务端口;
[2]在IPSEC虚拟专用网络(VPN)隧道中,选取上述业务端口,将其配置成VPN穿透端口,穿透端口的功能是对数据包进行封装;
[3]在IPSEC虚拟专用网络(VPN)通信的过程中,探测VPN穿透端口是否可以在网络中通信;
数据包处理过程的步骤是:
[4]当IPSEC数据包发送时,检查该隧道是否引用了VPN穿透端口,如果引用了,那么该数据包根据配置的穿透端口进行转换发送出去;
[5]当VPN网关系统收到数据包时,处理方式分为以下二种:
[5-1]如果不是IPSEC数据包,那么走正常系统流程,不进行数据包转换;
[5-2]如果是IPSEC数据包,此时处理方式分为以下三种:
[5-2-1]如果是密钥交换(IKE)UDP500的数据数据包,转换源端口为500;
[5-2-2]如果是密钥交换(IKE)UDP4500的数据数据包,转换源端口为4500;
[5-2-3]如果是ESP4500数据包,查询端口转换表,转换源端口为4500,将转换后的数据包继续正常系统流程。
本发明还提出了一种适用于上述利用探测机制实现VPN自动穿透的方法的装置,其特征在于:该装置包括:
接收模块,用于数据包的接收,判断数据包的合法性;
发送模块,判断数据包的合法性,发送数据包;
转换模块,连接接收模块和发送模块,查询端口转换表,转换数据包;
自动探测模块,用于探测配置的VPN穿透端口的可用性,将探测到的端口可用性作为端口转换表的基本属性发送给转换模块,连接转换模块;
穿透端口可用性配置模块,用户的配置接口,与自动探测模块连接。
本发明技术方案是在依靠IPSEC VPN协议的UDP500及UDP4500无法正常建立VPN隧道的情况下提出的,该方案利用了网络中开放的业务端口对数据包进行转换,绕过了网络中的安全设备对IPSEC数据包的阻断,从而能够成功地建立VPN隧道。
为了实现该功能,该方案要求在IKE协商中强制启用NAT穿越。
该方案中接受模块和发送模块首先是基于五元组(源IP地址、目的IP地址、协议类型、源端口、目的端口)对数据包的进行匹配的。对于外出的数据包,如果该IPSEC数据包是到达用户所配置的远端VPN网关的数据包,且用户配置了到达该远端VPN网关的开放服务,该数据包则会被转换模块转换成对应开放服务端口号的数据包发送出去。当远端端VPN网关收到被转换的数据包后,转换模块会根据本地的配置将该数据包转换成标准的IPSEC VPN数据包。
该方案中,自动探测模块实时地根据用户配置VPN穿透端口进行端口可用性的探测,并将探测的结果发送给转换模块,转换模块根据VPN穿透端口的可用性选择合适的端口号进行数据的转换。当有多个VPN穿透端口可用时,该方案允许多个可用端口间做负载均衡。
附图说明
图1是本发明系统组成的示意图
图2是实现本发明方法的数据包的处理的流程图
图3是本发明中转换模块的软件流程图
图4是本发明中自动探测模块的软件流程图
图5是本发明技术方案的应用的整体拓朴图
具体实施方式
参见附图5所示:建立一个从北京到天津的虚拟专用网络,该网络由北京安全网关设备与天津安全网关设备组成,北京网络安全设备的IP地址为212.218.85.1,天津网络安全设备的IP地址为218.202.2.1。该网络中已知存在的业务端口分别为80、22、1273、1083.
北京安全网关设备和天津安全网关设备都是由包含多个网卡的计算机设备、其中运行了支持网络转发、IPSEC加解密处理的操作系统。并在操作系统中安装实现本发明技术方案所需要的计算机程序文件。该计算机程序的流程如附图2所示,
上述系统在工作中,利用探测机制实现VPN自动穿透的方法的步骤分为配置和数据包处理两个过程,其中:
配置过程的步骤是:
(1)在开放服务配置列表中配置开放服务端口项,选择端口为:80、22、1273、1083;
(2)增加VPN隧道,源地址是212.218.85.1,目的地址是218.202.2.1,算法采用3DES和MD5,密钥生存期是3600秒,在IPSEC虚拟专用网络(VPN)隧道的配置中引用(1)中配置的开放服务端口项作为VPN穿透端口;
(3)同时选择启用自动穿透功能;数据包处理过程的步骤是:
(4)当北京网络安全网关发起连接时(212.218.84.1->218.202.2.1)
[4-1]数据包进入转换模块,模块首先判断该数据包是否VPN数据包,如果不是,则跳出转换模块,否则转到第[4-2]步;图2(a)
[4-2]查找转换状态表,如果找到匹配条目,则转到第[4-3]步,否则转到第[4-4]步;图2(b)
[4-3]根据匹配到的转换状态条目转换数据包,更新状态超时时间,然后发送出去,该处理结束;图2(e)
[4-4]转换模块查找匹配的数据转换列表,如果查到,则转到第
[4-5]步,否则退出转换模块直接发送出去,该处理结束;图2(c)
[4-5]转换模块根据步骤(2)所配置的穿透端口号,选择一个可用的穿透端口号,建立两个转换状态表(一个为发送数据状态转换表,另一个为接收数据状态转换表),然后对VPN数据包进行转换,转换成功后转到第[4-6]步,否则退出,该处理结束。图2(d)
[4-6]发送模块检查数据包的包头的长度及校验和是否正确,如果正确则将数据包发送出去,否则纠正包头错误,然后将数据包发送出去。
(5)当天津网络安全网关收到请求包时(218.202.2.1->212.218.84.1)
[5-1]接收模块对数据的合法性进行判断,如果合法则转到[5-2],否则退出;
[5-2]数据包进入转换模块,转换模块首先判断是否VPN数据包,并识别是哪一种类型的VPN数据包(UDP500还是UDP4500),如果不是VPN数据包,则退出转换模块,否则转到第[5-3]步;图2(a)
[5-3]查找转换状态表,如果找到匹配的条目,则转到第[5-4]步,否则转到[5-5]步;图2(b)
[5-4]根据匹配到的转换状态条目转换数据包,更新状态超时时间,然后退出转换模块,继续走防火墙正常处理流程;图2(e)
[5-5]转换模块查找匹配的数据转换列表,如果查到,则转到第[5-6]步,否则退出转换模块,继续走防火墙正常处理流程;图2(c)
[5-6]根据9中识别的VPN数据类型(UDP500或者UDP4500)转换该数据包,并建立两个转换状态表(一个为接收数据状态转换表,另一个为发送数据状态转换表),然后退出转换模块,继续走防火墙正常处理流程。图2(d)
(6)当北京网络安全网关接收到天津的回应包时,重复第(5)步操作;
(7)当北京网络安全网关继续发送时,重复第(4)步操作;
(8)当天津网络安全网关收到请求包时,重复第(5)步操作;
(5)至(8)为一个数据包来回的处理过程,多个数据包重复此流程。
如图1所示,适用于上述利用探测机制实现VPN自动穿透的方法的装置,其特征在于:该装置包括:
接收模块1,用于数据包的接收,判断数据包的合法性;
发送模块2,判断数据包的合法性,发送数据包;
转换模块3,连接接收模块1和发送模块2,查询端口转换表,转换数据包;
自动探测模块4,用于探测配置的VPN穿透端口的可用性,将探测到的端口可用性作为端口转换表的基本属性发送给转换模块,连接转换模块3;
穿透端口可用性配置模块5,用户的配置接口,与自动探测模块4连接。
其中,实现转换模块的软件流程如图3所示,实现自动探测模块的软件流程如图4所示。
本发明技术方案与现有技术相比,使得防火墙可以利用网络中开放端口进行隧道的建立及隧道数据业务的传输,增加了防火墙的复杂网络中建立VPN隧道的灵活性。

Claims (2)

1.一种利用探测机制实现VPN自动穿透的方法,其特征在于:该方法的步骤分为配置和数据包处理两个过程,其中:
配置过程的步骤是:
[1]在VPN网关系统的预定义服务中增加定义网络已知的业务端口;
[2]在IPSEC虚拟专用网络(VPN)隧道中,选取上述业务端口,将其配置成VPN穿透端口,穿透端口的功能是对数据包进行封装;
[3]在IPSEC虚拟专用网络(VPN)通信的过程中,探测VPN穿透端口是否可以在网络中通信;
数据包处理过程的步骤是:
[4]当IPSEC数据包发送时,检查该隧道是否引用了VPN穿透端口,如果引用了,那么该数据包根据配置的穿透端口进行转换发送出去;
[5]当VPN网关系统收到数据包时,处理方式分为以下二种:
[5-1]如果不是IPSEC数据包,那么走正常系统流程,不进行数据包转换;
[5-2]如果是IPSEC数据包,此时处理方式分为以下三种:
[5-2-1]如果是密钥交换(IKE)UDP500的数据数据包,转换源端口为500;
[5-2-2]如果是密钥交换(IKE)UDP4500的数据数据包,转换源端口为4500;
[5-2-3]如果是ESP4500数据包,查询端口转换表,转换源端口为4500,将转换后的数据包继续正常系统流程。
2.一种适用于上述利用探测机制实现VPN自动穿透的方法的装置,其特征在于:该装置包括:
接收模块(1),用于数据包的接收,判断数据包的合法性;
发送模块(2),判断数据包的合法性,发送数据包;
转换模块(3),连接接收模块(1)和发送模块(2),查询端口转换表,转换数据包;
自动探测模块(4),用于探测配置的VPN穿透端口的可用性,将探测到的端口可用性作为端口转换表的基本属性发送给转换模块,连接转换模块(3);
穿透端口可用性配置模块(5),用户的配置接口,与自动探测模块(4)连接。
CNA2009100863772A 2009-06-11 2009-06-11 一种利用探测机制实现vpn自动穿透的方法及装置 Pending CN101582889A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2009100863772A CN101582889A (zh) 2009-06-11 2009-06-11 一种利用探测机制实现vpn自动穿透的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2009100863772A CN101582889A (zh) 2009-06-11 2009-06-11 一种利用探测机制实现vpn自动穿透的方法及装置

Publications (1)

Publication Number Publication Date
CN101582889A true CN101582889A (zh) 2009-11-18

Family

ID=41364852

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2009100863772A Pending CN101582889A (zh) 2009-06-11 2009-06-11 一种利用探测机制实现vpn自动穿透的方法及装置

Country Status (1)

Country Link
CN (1) CN101582889A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102970229A (zh) * 2012-12-18 2013-03-13 网神信息技术(北京)股份有限公司 数据转发的方法及装置
CN104184843A (zh) * 2013-11-06 2014-12-03 深圳市邦彦信息技术有限公司 数据转发装置和方法
CN104702590A (zh) * 2014-12-09 2015-06-10 网神信息技术(北京)股份有限公司 通信协议的切换方法及装置
CN106105153A (zh) * 2014-04-17 2016-11-09 华为技术有限公司 一种数据处理方法、控制方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102970229A (zh) * 2012-12-18 2013-03-13 网神信息技术(北京)股份有限公司 数据转发的方法及装置
CN104184843A (zh) * 2013-11-06 2014-12-03 深圳市邦彦信息技术有限公司 数据转发装置和方法
CN104184843B (zh) * 2013-11-06 2018-08-03 邦彦技术股份有限公司 数据转发装置和方法
CN106105153A (zh) * 2014-04-17 2016-11-09 华为技术有限公司 一种数据处理方法、控制方法及装置
CN104702590A (zh) * 2014-12-09 2015-06-10 网神信息技术(北京)股份有限公司 通信协议的切换方法及装置

Similar Documents

Publication Publication Date Title
CN101027888B (zh) 一种管理接入系统和远程系统之间的安全连接的方法、中间系统和通信系统
CN100411374C (zh) 无线通信系统、通信设备及通信控制方法
US8774764B2 (en) Method and system for peer-to-peer enforcement
CN1829195B (zh) 分组转发装置
CN102148773B (zh) 一种IPv6协议和IPv4协议转换的方法及系统
CN1825828B (zh) 一种两端均处于不同nat下直接穿透通信的控制方法和设备
CN107786613A (zh) 宽带远程接入服务器bras转发实现方法和装置
CN101383778B (zh) 基于网络双出口的报文传输方法和出口路由器
CN1849796B (zh) 用于确定对等路由器的能力和配置的ttl探询技术
CN101217435B (zh) 一种L2TP over IPSEC远程接入的方法及装置
US20110280175A1 (en) Wireless relay device
US10250581B2 (en) Client, server, radius capability negotiation method and system between client and server
CN101499965B (zh) 一种基于IPSec安全关联的网络报文路由转发和地址转换方法
JPH11355271A (ja) 移動ポイント・ツ―・ポイント・プロトコル
CN101572643A (zh) 实现私网之间转发数据的方法和系统
CN103179100A (zh) 一种防止域名系统隧道攻击的方法及设备
CN102055765A (zh) 一种网络通信系统
CN101582889A (zh) 一种利用探测机制实现vpn自动穿透的方法及装置
CN102256293B (zh) 自组织融合网络按需路由网关及其驱动设计方法
CN101159750B (zh) 一种身份认证方法和装置
CN101207475B (zh) 一种网络系统的防止非授权连结方法
CN101605093A (zh) 利用IP Option实现信息透传的方法
US7324454B2 (en) Router
CN107147619A (zh) 基于多源、多径协同传输控制协议的数据传输方法
CN100490393C (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20091118