CN101964799B - 点到网隧道方式下地址冲突的解决方法 - Google Patents
点到网隧道方式下地址冲突的解决方法 Download PDFInfo
- Publication number
- CN101964799B CN101964799B CN201010514283.3A CN201010514283A CN101964799B CN 101964799 B CN101964799 B CN 101964799B CN 201010514283 A CN201010514283 A CN 201010514283A CN 101964799 B CN101964799 B CN 101964799B
- Authority
- CN
- China
- Prior art keywords
- shadow
- address
- sslvpn
- conflict
- user side
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种点到网隧道方式下地址冲突的解决方法,包括以下步骤:用户端开始向SSLVPN发起隧道建立请求;用户端向SSLVPN发起IP地址请求;SSLVPN生成影子IP,此影子IP与原始IP地址通过哈希进行关联;SSLVPN将影子IP发送给用户端;用户端判断影子IP地址是否与本机网络环境存在冲突:如果存在冲突,由SSLVPN重新生成影子IP;如果不存在冲突,则使用此影子IP作为虚拟网卡的IP地址。能成功解决某些情况下要求用户端的虚拟网卡必须使用特定的IP地址,而SSLVPN分配的虚拟网卡的IP地址与上述特定的IP地址冲突的问题,使点到网隧道能够应对各种网络拓扑要求,拓宽了此种应用的使用范围。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种点到网隧道方式下地址冲突的解决方法。
背景技术
VPN(Virtual Private Network虚拟专用网)可以通过特殊的加密的通讯协议在连接在Internet上的位于不同地方的两个或多个企业内部网之间建立一条专有的通讯线路,能够利用公共网络建立虚拟私有网,目前在企业中得到了广泛的应用;其中,SSLVPN以其简单的客户端配置、细粒度的ACL控制和丰富的功能等特点正渐渐取代传统的IPSecVPN。
在SSLVPN中,一个重要的使用方式就是点到网隧道,用户通过与SSLVPN建立一条加密的隧道来进行业务访问。在用户端和SSLVPN端,此隧道均需使用虚拟网卡,并由SSLVPN给用户端分配虚拟网卡的IP地址。隧道建立成功后,用户端将自己的请求数据包通过隧道传送到SSLVPN,SSLVPN将该请求转发到后端的服务器。这个过程中,用户端需要使用虚拟网卡的IP地址作为请求数据包的源IP地址。在以上应用中,分配给用户端的IP地址可能会与用户端的网络环境发生冲突,如与本机路由表中的某一项相同或被某一项包含,通常情况下,解决这种问题的方法是由SSLVPN重新分配另外一个不同的IP地址给用户端。
但是某些情况下要求用户端的虚拟网卡必须使用特定的IP地址,如果此时恰好发生冲突,上述方法就无法解决了。举例说明如下:某高校经过授权后可以使用国外的某个数字图书馆,该数字图书馆使用IP地址来禁止非授权用户访问,即只有从该高校的某个特定IP地址或地址段发出的请求才允许访问。此时采用SSLVPN给用户端分配的虚拟网卡的IP地址则不能满足访问的条件。
发明内容
本发明是针对上述提到的点到网隧道应用中存在的问题,提供一种解决方法。
本发明通过以下方案实现上述目的:
一种点到网隧道方式下地址冲突的解决方法,包括以下步骤:
S101用户端开始向SSLVPN发起隧道建立请求;
S102用户端向SSLVPN发起IP地址请求;
S103SSLVPN生成影子IP,此影子IP与原始IP地址通过哈希进行关联;
S104SSLVPN将影子IP发送给用户端;
S105用户端判断影子IP地址是否与本机网络环境存在冲突:
如果存在冲突,返回到步骤3由SSLVPN重新生成影子IP;
如果不存在冲突,则使用此影子IP作为虚拟网卡的IP地址。
优选的,在步骤S103生成影子IP时,采用的规则为:假设IP地址为x1:x2:x3:x4,
根据x2的值改变x2为x2`,
如果x2大于等于127,x2`=x2-1;
如果x2小于127,x2`=x2+1;
将x1:x2`:x3:x4作为影子IP;
如果改变x2生成的影子IP均发生冲突,则根据x1的值改变x1为x1`,
如果x1大于等于127,x1`=x1-1;
如果x1小于127,x1`=x1+1;
将x1`:x2:x3:x4作为影子IP。
在步骤S105中用户端判断影子IP地址与本机网络环境存在冲突时,将影子IP地址与本机路由表进行比较,如果IP地址与本机路由表中的某一项相同或被某一项包含,则判定为冲突。
进一步的,点到网隧道建立成功后,SSLVPN收到用户端通过此隧道发来的数据包时,根据需要对IP地址进行处理,将影子IP替换为原始IP。
进一步的,点到网隧道建立成功后,SSLVPN对后端服务器返回的数据包,根据需要进行反替换,即将原始IP替换为影子IP,然后通过隧道发送给用户端。
本发明能成功解决上述的地址冲突问题,使点到网隧道能够应对各种网络拓扑要求,拓宽了此种应用的使用范围。
附图说明
下面根据实施例和附图对本发明作进一步详细说明。
图1是本发明所述实施例应用现场的系统结构图;
图2是本发明所述方法的原理流程框图;
图3是本发明所述方法建立点到网隧道成功后的数据处理原理图。
具体实施方式
图1是本发明所述实施例应用现场的系统结构图,图2给出了处理流程图,本方法包括以下步骤:
S101用户端开始向SSLVPN发起隧道建立请求;
S102用户端向SSLVPN发起IP地址请求;
S103SSLVPN生成影子IP,此影子IP与原始IP地址通过哈希进行关联;
S104SSLVPN将影子IP发送给用户端;
S105用户端判断影子IP地址是否与本机网络环境存在冲突:
如果存在冲突,返回到步骤S103由SSLVPN重新生成影子IP;
如果不存在冲突,则使用此影子IP作为虚拟网卡的IP地址。
优选的,在步骤S103生成影子IP时,采用的规则为:假设IP地址为x1:x2:x3:x4,
根据x2的值改变x2为x2`,
如果x2大于等于127,x2`=x2-1;
如果x2小于127,x2`=x2+1;
将x1:x2`:x3:x4作为影子IP;
如果改变x2生成的影子IP均发生冲突,则根据x1的值改变x1为x1`,
如果x1大于等于127,x1`=x1-1;
如果x1小于127,x1`=x1+1;
将x1`:x2:x3:x4作为影子IP。
在步骤S105中用户端判断影子IP地址与本机网络环境存在冲突时,将影子IP地址与本机路由表进行比较,如果IP地址与本机路由表中的某一项相同或被某一项包含,则判定为冲突。
图3是给出了本发明所述方法建立点到网隧道成功后的数据处理原理图,点到网隧道建立成功后,SSLVPN收到用户端通过此隧道发来的数据包时,根据需要对IP地址进行处理,将影子IP替换为原始IP;点到网隧道建立成功后,SSLVPN对后端服务器返回的数据包,根据需要进行反替换,即将原始IP替换为影子IP,然后通过隧道发送给用户端。
具体实施例如下:
用户端真实网卡的IP地址为192.168.1.100,并准备通过隧道方式访问服务器1,但是服务器1要求只有源地址是192.168.1.100的用户才能访问,即用户端虚拟网卡的IP地址应该是192.168.1.100。基于此,SSLVPN为用户端分配了虚拟IP地址:192.168.1.100。但是此IP地址与用户端的真实网卡IP地址冲突,无法使用隧道,于是用户端将冲突通知给SSLVPN,SSLVPN根据算法为用户端生成了影子IP192.168.2.100,并下发给用户端,同时SSLVPN记录这两个IP地址的关联。由于192.168.2.100与用户端没有冲突,这样,隧道建立成功。用户端通过此隧道向服务器1发起资源请求,这个请求的源IP和目的IP分别为:192.168.2.100->192.168.1.1。请求到达SSLVPN后,SSLVPN在转发前,根据先前记录的关联关系,将此数据包的源IP从192.168.2.100修改为192.168.1.100。这样,到达服务器1的请求包变为:192.168.1.100->192.168.1.1。符合服务器1的限制,该请求被接受。而服务器1的回复为:192.168.1.1->192.168.1.100。到达SSLVPN后,SSLVPN根据先前记录的关联关系,将此数据包的目的IP从192.168.1.100修改为192.168.2.100,然后将此回复数据包通过隧道转发给用户端。以后的数据包皆按以上方式进行转发,最终实现了用户端对服务器1的访问。
应该注意,虽然以上是参考具体实施方式对本发明进行说明的,但这并不意味是对本发明的限制,本发明的保护范围是由所附权利要求而不是具体实施方式来限定的。
Claims (3)
1.一种点到网隧道方式下地址冲突的解决方法,其特征在于包括以下步骤:
S101用户端开始向SSLVPN发起隧道建立请求;
S102用户端向SSLVPN发起IP地址请求;
S103SSLVPN生成影子IP,此影子IP与原始IP地址通过哈希进行关联;
S104SSLVPN将影子IP发送给用户端;
S105用户端判断影子IP地址是否与本机网络环境存在冲突:
如果存在冲突,返回到步骤S103由SSLVPN重新生成影子IP;
如果不存在冲突,则使用此影子IP作为虚拟网卡的IP地址;
点到网隧道建立成功后,SSLVPN收到用户端通过此隧道发来的数据包时,根据需要对IP地址进行处理,将影子IP替换为原始IP;SSLVPN对后端服务器返回的数据包,根据需要进行反替换,即将原始IP替换为影子IP,然后通过隧道发送给用户端。
2.根据权利要求1所述的点到网隧道方式下地址冲突的解决方法,其特征在于:在步骤S103生成影子IP时,采用的规则为:假设IP地址为x1:x2:x3:x4,
根据x2的值改变x2为x2`,
如果x2大于等于127,x2`=x2-1;
如果x2小于127,x2`=x2+1;
将x1:x2`:x3:x4作为影子IP;
如果改变x2生成的影子IP均发生冲突,则根据x1的值改变x1为x1`,
如果x1大于等于127,x1`=x1-1;
如果x1小于127,x1`=x1+1;
将x1`:x2:x3:x4作为影子IP。
3.根据权利要求1所述的点到网隧道方式下地址冲突的解决方法,其特征在于:在步骤S105中用户端判断影子IP地址与本机网络环境存在冲突时,将影子IP地址与本机路由表进行比较,如果IP地址与本机路由表中的某一项相同或被某一项包含,则判定为冲突。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010514283.3A CN101964799B (zh) | 2010-10-21 | 2010-10-21 | 点到网隧道方式下地址冲突的解决方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010514283.3A CN101964799B (zh) | 2010-10-21 | 2010-10-21 | 点到网隧道方式下地址冲突的解决方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101964799A CN101964799A (zh) | 2011-02-02 |
CN101964799B true CN101964799B (zh) | 2014-06-04 |
Family
ID=43517531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010514283.3A Active CN101964799B (zh) | 2010-10-21 | 2010-10-21 | 点到网隧道方式下地址冲突的解决方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101964799B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102917081B (zh) * | 2012-09-27 | 2016-02-17 | 汉柏科技有限公司 | Vpn客户端ip地址的分配方法、报文传输方法及vpn服务器 |
CN103023898B (zh) * | 2012-12-03 | 2016-05-11 | 杭州迪普科技有限公司 | 一种访问vpn服务端内网资源的方法及装置 |
CN103905302B (zh) * | 2012-12-28 | 2017-06-06 | 上海格尔软件股份有限公司 | 一种在使用虚拟网卡的Windows主机上绑定源IP的方法 |
US20160226815A1 (en) * | 2015-01-30 | 2016-08-04 | Huawei Technologies Co., Ltd. | System and method for communicating in an ssl vpn |
CN105939239B (zh) * | 2015-07-31 | 2020-05-12 | 杭州迪普科技股份有限公司 | 虚拟网卡的数据传输方法及装置 |
US10572932B2 (en) | 2017-01-27 | 2020-02-25 | Walmart Apollo, Llc | System for providing optimal shopping routes in retail store and method of using same |
US10657580B2 (en) | 2017-01-27 | 2020-05-19 | Walmart Apollo, Llc | System for improving in-store picking performance and experience by optimizing tote-fill and order batching of items in retail store and method of using same |
US10796357B2 (en) | 2017-04-17 | 2020-10-06 | Walmart Apollo, Llc | Systems to fulfill a picked sales order and related methods therefor |
US10846645B2 (en) | 2017-04-28 | 2020-11-24 | Walmart Apollo, Llc | Systems and methods for real-time order delay management |
US10810542B2 (en) | 2017-05-11 | 2020-10-20 | Walmart Apollo, Llc | Systems and methods for fulfilment design and optimization |
US11126953B2 (en) | 2017-06-14 | 2021-09-21 | Walmart Apollo, Llc | Systems and methods for automatically invoking a delivery request for an in-progress order |
US11126954B2 (en) | 2017-06-28 | 2021-09-21 | Walmart Apollo, Llc | Systems and methods for automatically requesting delivery drivers for online orders |
US10909612B2 (en) | 2017-07-13 | 2021-02-02 | Walmart Apollo Llc | Systems and methods for determining an order collection start time |
CN108551496B (zh) * | 2018-07-26 | 2021-03-02 | 杭州云缔盟科技有限公司 | 一种防止vpn客户端地址与本地地址冲突的解决方法 |
US11178100B1 (en) | 2018-12-28 | 2021-11-16 | Berryville Holdings, LLC | Systems and methods for communicating between private networks with conflicting internet protocol (IP) addresses |
US11657347B2 (en) | 2020-01-31 | 2023-05-23 | Walmart Apollo, Llc | Systems and methods for optimization of pick walks |
US11868958B2 (en) | 2020-01-31 | 2024-01-09 | Walmart Apollo, Llc | Systems and methods for optimization of pick walks |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101132420A (zh) * | 2007-10-16 | 2008-02-27 | 杭州华三通信技术有限公司 | 一种基于ssl vpn的链接改写方法和设备 |
CN101197856A (zh) * | 2007-12-27 | 2008-06-11 | 北京交通大学 | Vpn网络间ip地址空间免规划及私有域名访问的方法 |
CN101442565A (zh) * | 2008-12-18 | 2009-05-27 | 成都市华为赛门铁克科技有限公司 | 一种固定虚拟网络地址的分配方法和网关 |
CN101572643A (zh) * | 2008-04-30 | 2009-11-04 | 成都市华为赛门铁克科技有限公司 | 实现私网之间转发数据的方法和系统 |
-
2010
- 2010-10-21 CN CN201010514283.3A patent/CN101964799B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101132420A (zh) * | 2007-10-16 | 2008-02-27 | 杭州华三通信技术有限公司 | 一种基于ssl vpn的链接改写方法和设备 |
CN101197856A (zh) * | 2007-12-27 | 2008-06-11 | 北京交通大学 | Vpn网络间ip地址空间免规划及私有域名访问的方法 |
CN101572643A (zh) * | 2008-04-30 | 2009-11-04 | 成都市华为赛门铁克科技有限公司 | 实现私网之间转发数据的方法和系统 |
CN101442565A (zh) * | 2008-12-18 | 2009-05-27 | 成都市华为赛门铁克科技有限公司 | 一种固定虚拟网络地址的分配方法和网关 |
Also Published As
Publication number | Publication date |
---|---|
CN101964799A (zh) | 2011-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101964799B (zh) | 点到网隧道方式下地址冲突的解决方法 | |
CN102223365B (zh) | 基于ssl vpn网关集群的用户接入方法及其装置 | |
EP4009593A1 (en) | Data transmission method and apparatus, network card and storage medium | |
EP2569902B1 (en) | Interconnecting members of a virtual network | |
CN101141420B (zh) | 私网与公网进行数据通信的方法及系统 | |
EP2351315B1 (en) | A virtualization platform | |
CN101572643B (zh) | 实现私网之间转发数据的方法和系统 | |
US10454880B2 (en) | IP packet processing method and apparatus, and network system | |
US11671363B2 (en) | Method and apparatus for cross-service-zone communication, and data center network | |
KR20150009550A (ko) | 소스 라우팅에 근거한 별개의 인피니밴드 서브넷들 간에 트래픽을 라우팅하기 위한 시스템 및 방법 | |
CN102948132A (zh) | 分布式虚拟网络网关 | |
EP2499787A2 (en) | Smart client routing | |
WO2014190791A1 (zh) | 一种网关设备身份设置的方法及管理网关设备 | |
CN107534643A (zh) | 在ip vpn与传输层vpn之间转换移动业务 | |
CN109525684B (zh) | 报文转发方法和装置 | |
WO2013097484A1 (zh) | 虚拟机集群的负载均衡方法、服务器及系统 | |
US11888818B2 (en) | Multi-access interface for internet protocol security | |
WO2014089799A1 (zh) | 一种确定虚拟机漂移的方法和装置 | |
CN103441932A (zh) | 一种主机路由表项生成方法及设备 | |
US20190286737A1 (en) | Synchronizing a forwarding database within a high-availability cluster | |
CN105450585A (zh) | 一种信息传输方法及装置 | |
CN107659930A (zh) | 一种ap接入控制方法和装置 | |
CN115442100A (zh) | 基于多节点零信任网关的数据访问方法及相关设备 | |
CN102447626A (zh) | 具有策略驱动路由的主干网 | |
CN107547621B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |