CN101119273A - 实现通用路由封装隧道穿越的方法及设备 - Google Patents

实现通用路由封装隧道穿越的方法及设备 Download PDF

Info

Publication number
CN101119273A
CN101119273A CNA2007101215710A CN200710121571A CN101119273A CN 101119273 A CN101119273 A CN 101119273A CN A2007101215710 A CNA2007101215710 A CN A2007101215710A CN 200710121571 A CN200710121571 A CN 200710121571A CN 101119273 A CN101119273 A CN 101119273A
Authority
CN
China
Prior art keywords
address
gre tunneling
network side
source
message
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.)
Granted
Application number
CNA2007101215710A
Other languages
English (en)
Other versions
CN100588171C (zh
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.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN200710121571A priority Critical patent/CN100588171C/zh
Publication of CN101119273A publication Critical patent/CN101119273A/zh
Application granted granted Critical
Publication of CN100588171C publication Critical patent/CN100588171C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种实现通用路由封装(GRE)隧道穿越的方法,通过网络地址转换(NAT)设备在收到GRE隧道的首个报文时,在地址池内为GRE隧道选择其对应公网侧的IP地址,将该IP地址配置为该GRE隧道在NAT设备上应于公网侧的源IP地址;以及配置为该GRE隧道在对端GRE隧道公网接口设备上对应于公网侧的目的IP地址,进而实现GRE隧道的穿越。同时,本发明还提供了一种实现GRE隧道穿越的NAT设备、以及GRE隧道公网接口设备。在本发明所提供的技术方案中,由于采用地址池为GRE隧道分配IP地址,进而使攻击者探测对应公网侧IP地址的难度增大,因此提高了GRE隧道的安全性。

Description

实现通用路由封装隧道穿越的方法及设备
技术领域
本发明涉及通用路由封装(GRE,Generic Routing Encapsulation)技术,尤指一种在网络地址转换(NAT,Network Address Translation)设备上实现GRE隧道穿越的方法、及一种在GRE隧道公网接口设备上实现GRE隧道穿越的方法、及一种实现GRE隧道穿越的NAT设备、及一种实现GRE隧道穿越的GRE隧道公网接口设备。
背景技术
虚拟私有网(VPN,Virtual Private Network)是随着互联网的广泛应用而迅速发展起来的一种新技术,实现了在公用网络上构建私人专用网络。VPN只为特定的企业或用户群体所专用,VPN一方面能与底层承载网络之间保持资源独立性,即在一般情况下VPN资源不会被承载网络中的其它VPN或非该VPN用户的网络成员所使用;另一方面能够向VPN用户提供足够的安全性,确保VPN内部信息不受外部的侵扰。其中,GRE技术是VPN的一种实现技术,它通过在协议层之间采用隧道(Tunnel)技术构建GRE隧道,进而向用户提供VPN业务。
参见图1,图1为使用GRE技术的VPN组网结构示意图。如图1所示,局域网(LAN)A通过路由器A连接公网,即互联网;LANB通过路由器B连接公网,路由器A和路由器B通过建立的GRE隧道为LANA和LANB中的用户提供VPN业务。其中,路由器A和路由器B为图1所示GRE隧道的终结设备。
为了在路由器A和路由器B上构建GRE隧道,至少需要在路由器A和路由器B上分别配置该GRE隧道的IP地址,具体配置情况可参考以下示例。假设,在路由器A上设置该GRE隧道所使用的IP地址为192.10.1.10,路由器B上设置该GRE隧道所使用的IP地址为202.18.4.10。则在路由器A和路由器B上分别配置该GRE隧道IP地址为:在路由器A上为GRE隧道配置(192.10.1.10,202.18.4.10);相应的,在路由器B上为GRE隧道配置(202.18.4.10,192.10.1.10)。在本文中,除有特别说明外,位于括号前端的IP地址为源IP地址、括号后端的IP地址为目的IP地址。当路由器A或者路由器B收到需要通过GRE隧道发送的报文时,则用本端为该GRE隧道配置的IP地址封装该需要通过GRE隧道发送的报文。
如图2所示,在LANA位于私网内,网络内部署了NAT设备的情况下,此时由于GRE隧道的GRE终结设备路由器A位于私网内,路由器A上为GRE隧道配置的源IP地址为私网IP地址。因此,GRE隧道的报文是用私网IP地址进行封装,该报文不能在公网上传输。为了GRE隧道报文能够在公网传输、GRE隧道能够穿越NAT设备,现有技术的处理方法是:在NAT设备上为GRE隧道静态配置其对应公网侧的源IP地址;并在路由器B上,将该对应公网侧的源IP地址配置为该GRE隧道在路由器B上的目的IP地址。其中,在NAT设备上为GRE隧道静态配置其对应公网侧的源IP地址包括:生成记录GRE隧道对应私网侧的源IP地址与对应公网侧的源IP地址之间关系的地址转换表项。
例如,在路由器A上设置GRE隧道使用的IP地址为10.1.8.1,路由器B上设置GRE隧道使用的IP地址为202.18.4.10,而NAT设备为GRE隧道静态配置的对应公网侧的源IP地址为192.10.1.10的情况下,则路由器A为GRE隧道配置的IP地址为(10.1.8.1,202.18.4.10),路由器B为该GRE隧道配置的IP地址为(202.18.4.10,192.10.1.10),而在NAT设备上生成的地址转换表项如表一所示。
对应私网侧的源IP地址   对应公网侧的源IP地址
10.1.8.1   192.10.1.10
表一
由于NAT设备保存了用于转换公、私网IP地址的地址转换表项,因此在NAT设备从私网侧收到GRE隧道报文时,可以根据该地址转换表项将该GRE隧道报文的源IP地址从对应私网侧的IP地址转换为对应公网侧的IP地址。进而,报文就可以在公网中进行传输。同时GRE隧道在路由器B上的目的IP地址对应于NAT设备的源IP地址,实现了路由器A和路由器B的互通。进而,GRE报文能从路由器A通过NAT设备、公网发送至路由器B,同样能从路由器B通过公网、NAT设备发送至路由器A,使GRE隧道能够穿越NAT设备。
通过以上对现有技术的介绍可知,在现有技术中为了使GRE隧道能够穿越NAT设备,在NAT设备上为GRE隧道静态配置在公网中所使用的IP地址,本文中将其称为GRE隧道对应公网侧的IP地址。通过将GRE隧道上报文的源IP地址,从对应私网的源IP地址转换为对应公网的源IP地址,实现GRE隧道穿越NAT设备。在现有技术中,由于在NAT设备上GRE隧道固定占用一个对应于公网侧的IP地址,使攻击者很容易探测该GRE隧道对应于公网侧的IP地址,进而通过该IP地址访问私网,造成对GRE隧道的使用造成安全隐患。
发明内容
有鉴于此,本发明提供了一种在NAT设备上实现GRE隧道穿越的方法、以及一种在GRE隧道公网接口设备上实现GRE隧道穿越的方法,应用本发明所提供的方法能够提高GRE隧道的安全性。
其次,本发明还提供了一种实现GRE隧道穿越的NAT设备,该NAT设备能够提高GRE隧道的安全性。
另外,本发明还提供了一种实现GRE隧道穿越的GRE隧道公网接口设备,本发明所提供的设备能够提高GRE隧道的安全性。
为达到上述目的,本发明的技术方案是这样实现的:
一种在网络地址转换设备上实现通用路由封装隧道穿越的方法,
在NAT设备上设置GRE隧道对应于公网侧的源IP地址接口;
确定所述NAT设备从私网侧收到所述GRE隧道的首个报文时,为所述GRE隧道在地址池内选择IP地址,将其值赋予源IP地址接口,配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址;
将所述GRE隧道首个报文内的源IP地址,由从收到时对应私网侧的源IP地址转换为对应于公网侧的源IP地址,并发送转换后的报文。
较佳地,
所述确定NAT设备从私网侧收到所述GRE隧道的首个报文的操作包括:NAT设备从私网侧收到所述GRE隧道的报文时,获取该报文当前对应私网侧的源IP地址,判断是否存在与所获取的源IP地址对应的地址转换表项,在不存在的情况下,判定所述NAT设备从私网侧收到所述GRE隧道的首个报文。
较佳地,
所述配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址包括:获得所述GRE隧道首个报文当前对应于私网侧的源IP地址,并为所述GRE隧道生成记录当前所获得的对应私网侧的源IP地址、与当前所选择的对应公网侧的源IP地址之间关系的地址转换表项。
较佳地,该方法进一步包括:
确定所述GRE隧道对应的地址转换表项是否满足老化条件,当满足老化条件时,删除所述GRE隧道对应的地址转换表项。
较佳地,
该方法进一步包括:为所述GRE隧道设置定时器以及老化时长;
所述确定GRE隧道对应的地址转换表项满足老化条件为:所述NAT设备监控所述GRE隧道,当所述GRE隧道在老化时长内没有流量时,确定所述GRE隧道对应的地址转换表项满足老化条件。
一种在通用路由封装隧道公网接口设备上实现通用路由封装隧道穿越的方法,
在GRE隧道公网接口设备上,设置GRE隧道在本端对应于公网侧的目的IP地址接口;
所述GRE隧道公网接口设备收到所述GRE隧道首个报文时,获取该报文的源IP地址,将其值赋予目的IP地址接口,配置所获取的IP地址为所述GRE隧道在本端对应于公网侧的目的IP地址。
一种实现通用路由封装隧道穿越的网络地址转换设备,该网络地址转换NAT设备包括:地址池单元、控制单元和收发单元;
所述地址池单元用于为通用路由封装GRE隧道配置地址池;
所述控制单元用于为GRE隧道设置对应于公网侧的源IP地址接口;确定NAT设备从私网侧收到所述GRE隧道的首个报文时,为所述GRE隧道在配置的地址池内选择IP地址,将其值赋予设置的所述GRE隧道对应于公网侧的源IP地址接口,配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址;并将所选的GRE隧道的公网源IP地址发送至所述收发单元;
所述收发单元将所述GRE隧道首个报文内的源IP地址,由对应私网侧的源IP地址转换为对应于公网侧的源IP地址,并发送转换后的报文。
较佳地,所述控制单元包括处理单元和存储单元;
所述处理单元配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址时,获得所述GRE隧道首个报文当前对应于私网侧的源IP地址,并为所述GRE隧道生成记录当前所获得的对应私网侧的源IP地址、与当前所选择的对应公网侧的源IP地址之间关系的地址转换表项,并将所述地址转换表项保存至存储单元;在NAT设备从私网侧收到所述GRE隧道的报文时,获取该报文当前对应私网侧的源IP地址,判断所述存储单元中是否存在与所获取的源IP地址对应的地址转换表项,在不存在的情况下,判定所述NAT设备从私网侧收到所述GRE隧道的首个报文;
所述存储单元,用于保存所述处理单元生成的地址转发表项。
较佳地,该设备进一步包括老化单元:
所述老化单元在确定所述GRE隧道对应的地址转换表项满足老化条件时,在所述存储单元中删除所述GRE隧道对应的地址转换表项。
较佳地,
所述老化单元内包括计时器,并监控所述收发单元接收、以及发送报文的情况,在计时器设置的老化时长内所述GRE隧道上没有流量时,确定所述GRE隧道对应的地址转换表项满足老化条件。
一种实现通用路由封装GRE隧道穿越的GRE隧道公网接口设备,该设备包括收发单元和控制单元;
所述收发单元收到所述GRE隧道首个报文时,将所收到的报文发送至控制单元;
所述控制单元用于为GRE隧道设置对应于公网侧的目的IP地址接口;接收所述收发单元发送的所述GRE隧道首个报文,获取该报文的源IP地址,将其值赋予设置的所述GRE隧道对应于公网侧的目的IP地址接口,配置所获取的IP地址为所述GRE隧道在本端对应于公网侧的目的IP地址。
本发明所提供的一种实现GRE隧道穿越的方法,通过为GRE隧道配置地址池,使NAT设备在地址池内为GRE隧道选择其对应公网侧的IP地址,使攻击者探测GRE隧道对应公网侧的IP地址的难度增大,进而提高了GRE隧道的安全性。同时,本发明还提供了一种实现GRE隧道穿越的NAT设备、以及GRE隧道公网接口设备。通过应用本发明所提供的技术方案,外网GRE隧道的用户只能在NAT设备上配置好该GRE隧道对应公网侧的IP地址后,才能使用对应的GRE隧道,提高了GRE隧道的安全性。
同时,在本发明的技术方案中,通过地址转换表项的老化处理,由于在地址转换表项老化后,还需重新为该GRE隧道在NAT设备上配置其对应公网侧的IP地址,因此进一步提高了GRE隧道的安全性。
另外,在GRE隧道的地址转换表项老化后,就会释放该GRE隧道对应公网侧的IP地址,以供其它GRE隧道使用。从而,在一定程度上节约了公网IP地址,提高了IP地址的使用效率。
附图说明
图1为现有技术中一VPN组网结构图;
图2为现有技术中又一VPN组网结构图;
图3为本发明的方法示例性流程图;
图4为本发明的系统示例性结构图;
图5为本发明实施例的方法流程图;
图6为本发明实施例的NAT设备结构图;
图7为本发明实施例的路由器B结构图;
图8为本发明能够适用的一VPN组网结构图。
具体实施方式
为了提高GRE隧道的安全性,本发明的技术方案中,可以预先在NAT设备上设置GRE隧道在本端对应于公网侧的源IP地址接口;在对端的GRE隧道公网接口设备上,设置GRE隧道在本端对应于公网侧的目的IP地址接口。然后,通过NAT设备在收到GRE隧道的首个报文时,在地址池内为GRE隧道选择其对应公网侧的IP地址,将其值赋予源IP地址接口,配置为该GRE隧道在NAT设备上应于公网侧的源IP地址;将其值赋予目的IP地址接口,配置为该GRE隧道在对端GRE隧道公网接口设备上对应于公网侧的目的IP地址,实现GRE隧道的穿越。由于采用地址池为GRE隧道分配IP地址,使攻击者探测对应公网侧的IP地址的难度增大,进而提高GRE隧道的安全性。在本发明中,所描述的GRE隧道公网接口设备为GRE隧道用户用于连接公网的设备。例如图1中的路由器A和路由器B,以及图2中的NAT设备和路由器B。
参见图3,图3为本发明的方法示例性流程图。在NAT设备上设置GRE隧道对应于公网侧的源IP地址接口;在对端的GRE隧道公网接口设备上,设置GRE隧道在本端对应于公网侧的目的IP地址接口。该方法包括:在步骤301中,确定NAT设备从私网侧收到GRE隧道的首个报文时,为GRE隧道在地址池内选择IP地址,将其值赋予源IP地址接口,配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址;在步骤302中,将GRE隧道首个报文内的源IP地址,由从收到时对应私网侧的源IP地址转换为对应于公网侧的源IP地址,并发送转换后的报文;在步骤303中,对端的GRE隧道公网接口设备收到GRE隧道首个报文时,获取该报文的源IP地址,将其值赋予目的IP地址接口,配置所获取的IP地址为GRE隧道在本端对应于公网侧的目的IP地址。
参见图4,图4为本发明的系统示例性结构图,该系统至少包括GRE隧道公网接口设备和NAT设备。
NAT设备为GRE隧道配置地址池、并为GRE隧道设置对应于公网侧的源IP地址接口;在确定NAT设备从私网侧收到GRE隧道的首个报文时,为GRE隧道在配置的地址池内选择IP地址,将其值赋予设置的GRE隧道对应于公网侧的源IP地址接口,配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址;将GRE隧道首个报文内的源IP地址,由对应私网侧的源IP地址转换为对应于公网侧的源IP地址,并发送转换后的报文。GRE隧道公网接口设备用于为GRE隧道在本端设置对应于公网侧的目的IP地址接口,从NAT设备收到GRE隧道首个报文时,获取该报文的源IP地址,将其值赋予设置的GRE隧道对应于公网侧的目的IP地址接口,配置所获取的IP地址为GRE隧道在本端对应于公网侧的目的IP地址。上述所描述的GRE隧道公网接口设备可以具体的网络应用应景,可以为NAT设备或者路由器。具体见后续介绍。
为使本发明的目的、技术方案及优点更加清楚明白,以下列举实施例对本发明做进一步的详细说明。
本实施例以图2所示的组网场景为例,介绍本发明实施例的技术方案。在本实施例中,由于NAT设备是在收到GRE隧道的首个报文时,才为GRE隧道选择其对应于公网侧的源IP地址。因此,在这种情况下,初始化GRE隧道时,可以在在NAT设备上设置GRE隧道对应于公网侧的源IP地址接口;在对端的GRE隧道公网接口设备上,设置GRE隧道在本端对应于公网侧的目的IP地址接口。该源IP地址接口、或者目的IP地址接口可以用于存储IP地址的数据结构,该数据结构当前值可以为空。在确定了该GRE隧道X对应公网侧的源IP地址之后,在将该选择的IP地址的值赋予对应的数据结构。此时,由于位于私网侧的GRE隧道终结设备路由器A上配置了该GRE隧道的源、目的IP地址;在路由器B上配置了GER隧道对应公网侧的源IP地址,因此报文通过路由器A传输至到路由器B。
在本实施例中,以GRE隧道X为例对本发明的技术方案进行描述。在本实施例中,假设GRE隧道X在路由器A上配置所使用的IP地址为10.1.8.1,在路由器B上配置的IP地址为202.18.4.10的隧道为例进行介绍。此时,GRE隧道在路由器A配置的地址为(10.1.8.1,202.18.4.10),在NAT设备上配置该GRE隧道的目的IP地址202.18.4.10和该GRE隧道在本端对应于公网侧的源IP地址接口,在路由器B也配置该GRE隧道的源IP地址202.18.4.10和该GRE隧道在本端对应于公网侧的目的IP地址接口。
在本实施例中,将所描述的GRE隧道称为GRE隧道X。为了能够为该GRE隧道选择地址,可以预先为GRE隧道分配其所使用的地址池。假设地址池可供分配的IP地址的范围为192.10.1.1~192.10.1.168。这里,为GRE隧道分配的地址池,可以是单独为其分配的地址池,也可以是NAT设备内为非GRE隧道报文所准备的地址池。
参见图5,图5为本实施例的方法具体流程:
在步骤501中,NAT设备从私网侧收到GRE隧道X的报文后,获取该报文当前的源IP地址。这里,当前报文的源IP地址为路由器A为GRE隧道X配置的IP地址10.1.8.1,即GRE隧道在NAT设备对应私网侧的源IP地址。
这里所指的从私网侧收到的报文在图2所示的网络结构中,实际上就是从路由器A收到报文。由于隧道终结设备的不同实现方式,在实际的操作过程中,NAT设备可能会从私网侧的其它隧道终结设备中收到报文。
另外,NAT设备确定从私网侧收到的报文为GRE隧道X的方式可以是:NAT设备在从私网例收到报文后,可以首先判断该报文的协议字段的值是否为47,如果协议字段的值为47,则该报文为GRE隧道的报文,则再根据报文的目的IP地址判断该报文是否为GRE隧道X的报文,如该报文的目的IP地址与GRE隧道X在NAT设备的目的IP相同的话,则表明该报文为GRE隧道X的报文;如果协议字段的值不为47,则表明当前报文不为GRE报文,从而也不必进行后续判断。
在步骤502中,NAT设备判断自身是否已经存在与获取的源IP地址对应的地址转换表项,如果是,则执行步骤506;否则,执行步骤503。
在步骤503中,在NAT设备内不存在与获取的源IP地址对应的地址转换表项时,表明当前报文为GRE隧道X的首个报文,此时需要为GRE隧道X配置公网IP地址。即NAT设备在配置的地址池中,为当前GRE隧道X选择一个IP地址,将其值赋予源IP地址接口,并配置所选IP地址为该GRE隧道X在NAT设备上对应于公网侧的源IP地址。
其中,可以在为GRE隧道X配置的地址池内为GRE隧道X任意选择一个IP地址,作为其对应公网侧的源IP地址。
另外,配置GRE隧道X对应公网侧的源IP地址的操作中包括:生成记录GRE隧道X对应私网侧的源IP地址与对应公网侧的源IP地址之间关系的地址转换表项。当从地址池内选择出的IP地址为192.10.1.168时,则生成如表二所示的地址转换表项。在生成了该地址转换表项之后,NAT设备不但能够将来自私网侧的报文进行源IP地址转换发送至公网侧,还可以将来自公网侧的报文进行目的IP地址转换进而发送至私网侧,使该GRE隧道X实现了NAT设备的穿越。由于,NAT利用地址转发表项对报文进行地址转换的技术为现有技术,在此不再详述。
对应私网侧的源IP地址   对应公网侧的源IP地址
10.1.8.1   192.10.1.168
表二
在步骤504中,将当前收到的GRE隧道的首个报文的源IP地址从10.1.8.1转换为192.10.1.168,并发送源IP地址转换后的报文。
在步骤505中,路由器B从NAT设备收到GRE隧道X的首个报文,获取该报文的源IP地址,将其值赋予预先配置的目的IP地址接口,配置该源IP地址为GRE隧道X在本端对应公网侧的目的IP地址。即GRE隧道X在路由器B配置的IP地址为(192.10.1.10,202.18.4.10)。结束当前处理流程。
在步骤506中,在NAT设备内存在与获取的源IP地址对应的地址转换表项时,表明当前报文不为GRE隧道X的首个报文,则NAT设备根据该GRE报文的源IP地址找到对应的地址转换表项,根据找到的地址转换表项对报文的源IP地址进行转换,并发送源IP地址转换后GRE报文,结束当前处理流程。
通过以上的流程可以得出,通过对GRE隧道X首个报文的处理,实现了NAT设备上选择GRE隧道X对应公网侧的源IP地址,并且经过该报文的传输,在路由器B上配置了该GRE隧道X在路由器B的目的地址,进而路由器A和路由器B就能够通过GRE隧道X实现报文的传输,实现了GRE隧道在NAT设备的穿越。
同时,由于NAT设备是在收到GRE隧道X的首个报文才选择在GRE隧道X在本端对应公网的IP地址,从而在NAT设备上配置了该GRE隧道X对应公网侧的源IP地址之后,才能实现报文的源IP地址的转换,进而外网GRE隧道X用户只有在私网GRE隧道用户使用GRE隧道X之后,才能使用GRE隧道X,进而提高了GRE隧道的安全性。
另外,在本实施例的技术方案中,为了更进一步提高GRE隧道的安全性,在确定GRE隧道对应的地址转换表项满足老化条件时,可以删除该GRE隧道对应的地址转换表项。这样,在删除对应的地址转换表项之后,由于当前已经不存在对应的地址转换表项,因此NAT设备收到GRE隧道X的报文后,还需要重新为GRE隧道选择对应公网的IP地址,进而进一步增加了GRE隧道使用公网IP地址的不确定,从而提高了GRE隧道的安全性。NAT设备收到的GRE隧道X的报文,在不存在相应的地址转换表项时,该报文为GRE隧道相对于当前NAT设备的首个报文。
在本实施例的技术方案中,确定GRE隧道对应的地址转换表项满足老化条件的方法可以是,为GRE隧道设置定时器以及老化时长,NAT设备监控GRE隧道,当GRE隧道在老化时长内没有流量时,确定GRE隧道对应的地址转换表项满足老化条件。
在本实施例中的以上介绍中,是以一条隧道GRE隧道X为例进行描述。当LANA中存在多条与外部之间的GRE隧道时,对于每条GRE隧道均可以参照本实施例中所提供的技术方案进行处理。这里,可以为所有GRE隧道配置一个地址池,供这些GRE隧道选择其所对应的公网侧的IP地址。
参见图6,图6为本发明实施例的NAT设备的结构图,具体包括:地址池单元、控制单元和收发单元。
其中,地址池单元用于在其上为通用路由封装GRE隧道配置地址池。控制单元用于为GRE隧道设置对应于公网侧的源IP地址接口;在确定NAT设备从私网侧收到GRE隧道的首个报文时,为GRE隧道在配置的地址池内选择IP地址,将其值赋予设置的GRE隧道对应于公网侧的源IP地址接口,配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址;并将所选的GRE隧道的公网源IP地址发送至收发单元。收发单元将GRE隧道首个报文内的源IP地址,由对应私网侧的源IP地址转换为对应于公网侧的源IP地址,并发送源IP地址转换后的报文。
其中,控制单元包括处理单元和存储单元。处理单元配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址时,生成记录GRE隧道对应私网侧的源IP地址与对应公网侧的源IP地址之间关系的地址转换表项,并将地址转换表项保存至存储单元;在NAT设备从私网侧收到GRE隧道的报文时,获取该报文当前对应私网侧的源IP地址,判断存储单元中是否存在与所获取的源IP地址对应的地址转换表项,在不存在的情况下,判定NAT设备从私网侧收到GRE隧道的首个报文。存储单元,用于保存处理单元生成的地址转发表项。
另外,在该设备中还可以进一步包括老化单元。老化单元在确定GRE隧道对应的地址转换表项满足老化条件时,在存储单元中删除GRE隧道对应的地址转换表项。
如图6所示,收发单元还可以进一步用于根据存储单元中保存的地址转换表项,对从公网收到的报文以及私网收到的报文进行地址转换,并发送至对应的私网以及公网。此时,老化单元中还可以进一步包括计时器,监控收发单元接收以及发送报文的情况,在计时器设置的老化时长内GRE隧道上没有流量时,确定GRE隧道对应的地址转换表项满足老化条件。
参见图7,图7为本发明实施例中路由器B的结构示意图,具体可以包括收发单元和控制单元。其中,收发单元收到GRE隧道首个报文时,将所收到的报文发送至控制单元。控制单元用于为GRE隧道设置对应于公网侧的目的IP地址接口;接收所述收发单元发送的所述GRE隧道首个报文,获取该报文的源IP地址,将其值赋予设置的GRE隧道对应于公网侧的目的IP地址接口,配置所获取的IP地址为GRE隧道在本端对应于公网侧的目的IP地址。如图7所示的网络结构还可以存在于其它GRE隧道公网接口设备,用以实现GRE隧道穿越NAT设备。
在图2所示的网络结构,由于使用GRE隧道的LANB不在私网内,因此该GRE隧道的GRE隧道终结设备路由器B也不在私网内,对应的应用场景为LANA属于总部,LANB对应分部的情况。此时,路由器B为该GRE隧道的公网接口设备,因此由路由器B来配置对端NAT设备选择的IP地址。
当使用GRE隧道的LANB位于私网内,则GRE隧道终结设备也同样在私网内。在这种情况下,LANB的用户同样为了能够在使用公网资源,也也会配置NAT设备B,此时的NAT设备B即为即为LANB用户所使用的GRE隧道的公网接口设备,即如图7所示。在此种情况下,则是由NAT设备B接收NAT设备A通过GRE隧道发送的首个报文,进而将该报文的源IP地址配置为在NAT设备B该GRE隧道X的目的IP地址。
综上所述,在本发明的技术方案中,通过在NAT设备上为GRE隧道选择其对应公网的IP地址,使外网只能在内网发送通信配置对应的地址转换表项之后,才能使用对应的GRE隧道,提高了GRE隧道的安全性。同时,通过地址转换表项的老化处理,由于需要老化处理对应的地址转换表项,因此在老化处理地址转换表项后,还需重新为该GRE隧道在NAT设备上配置其对应公网的IP地址,因此进一步提高了安全性。
另外,在现有技术中,当LANA存在多个GRE隧道时,在NAT设备上需要为不同的GRE隧道静态配置不同的对应公网的IP地址。因此,由于这些GRE隧道并不是实时都被使用,因此在一定程度上浪费了公网IP地址的资源。而在本发明的技术方案中,由于要对GRE隧道对应的地址转换表项执行相应的老化操作,当GRE隧道上没有流量时,就释放该GRE隧道对应公网的IP地址供其它GRE隧道。从而,在一定程度上节约了公网IP地址。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1.一种在网络地址转换设备上实现通用路由封装隧道穿越的方法,其特征在于,
在网络地址转换NAT设备上设置通用路由封装GRE隧道对应于公网侧的源IP地址接口;
确定所述NAT设备从私网侧收到所述GRE隧道的首个报文时,为所述GRE隧道在地址池内选择IP地址,将其值赋予源IP地址接口,配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址;
将所述GRE隧道首个报文内的源IP地址,由从收到时对应私网侧的源IP地址转换为对应于公网侧的源IP地址,并发送转换后的报文。
2.根据权利要求1所述的方法,其特征在于,
所述确定NAT设备从私网侧收到所述GRE隧道的首个报文的操作包括:NAT设备从私网侧收到所述GRE隧道的报文时,获取该报文当前对应私网侧的源IP地址,判断是否存在与所获取的源IP地址对应的地址转换表项,在不存在的情况下,判定所述NAT设备从私网侧收到所述GRE隧道的首个报文。
3.根据权利要求2所述的方法,其特征在于,
所述配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址包括:获得所述GRE隧道首个报文当前对应于私网侧的源IP地址,并为所述GRE隧道生成记录当前所获得的对应私网侧的源IP地址、与当前所选择的对应公网侧的源IP地址之间关系的地址转换表项。
4.根据权利要求3所述的方法,其特征在于,该方法进一步包括:
确定所述GRE隧道对应的地址转换表项是否满足老化条件,当满足老化条件时,删除所述GRE隧道对应的地址转换表项。
5.根据权利要求4所述的方法,其特征在于,
该方法进一步包括:为所述GRE隧道设置定时器以及老化时长;
所述确定GRE隧道对应的地址转换表项满足老化条件为:所述NAT设备监控所述GRE隧道,当所述GRE隧道在老化时长内没有流量时,确定所述GRE隧道对应的地址转换表项满足老化条件。
6.一种在通用路由封装隧道公网接口设备上实现通用路由封装隧道穿越的方法,其特征在于,
在通用路由封装GRE隧道公网接口设备上,设置GRE隧道在本端对应于公网侧的目的IP地址接口;
所述GRE隧道公网接口设备收到所述GRE隧道首个报文时,获取该报文的源IP地址,将其值赋予目的IP地址接口,配置所获取的IP地址为所述GRE隧道在本端对应于公网侧的目的IP地址。
7.一种实现通用路由封装隧道穿越的网络地址转换设备,其特征在于,该网络地址转换NAT设备包括:地址池单元、控制单元和收发单元;
所述地址池单元用于为通用路由封装GRE隧道配置地址池;
所述控制单元用于为GRE隧道设置对应于公网侧的源IP地址接口;确定NAT设备从私网侧收到所述GRE隧道的首个报文时,为所述GRE隧道在配置的地址池内选择IP地址,将其值赋予设置的所述GRE隧道对应于公网侧的源IP地址接口,配置所选IP地址为该GRE隧道在网络地址转换NAT设备上对应于公网侧的源IP地址;并将所选的GRE隧道的公网源IP地址发送至所述收发单元;
所述收发单元将所述GRE隧道首个报文内的源IP地址,由对应私网侧的源IP地址转换为对应于公网侧的源IP地址,并发送转换后的报文。
8.根据权利要求7所述的设备,其特征在于,所述控制单元包括处理单元和存储单元;
所述处理单元配置所选IP地址为该GRE隧道在NAT设备上对应于公网侧的源IP地址时,获得所述GRE隧道首个报文当前对应于私网侧的源IP地址,并为所述GRE隧道生成记录当前所获得的对应私网侧的源IP地址、与当前所选择的对应公网侧的源IP地址之间关系的地址转换表项,并将所述地址转换表项保存至存储单元;在NAT设备从私网侧收到所述GRE隧道的报文时,获取该报文当前对应私网侧的源IP地址,判断所述存储单元中是否存在与所获取的源IP地址对应的地址转换表项,在不存在的情况下,判定所述NAT设备从私网侧收到所述GRE隧道的首个报文;
所述存储单元,用于保存所述处理单元生成的地址转发表项。
9.根据权利要求8所述的设备,其特征在于,该设备进一步包括老化单元:
所述老化单元在确定所述GRE隧道对应的地址转换表项满足老化条件时,在所述存储单元中删除所述GRE隧道对应的地址转换表项。
10.根据权利要求9所述的设备,其特征在于,
所述老化单元内包括计时器,并监控所述收发单元接收、以及发送报文的情况,在计时器设置的老化时长内所述GRE隧道上没有流量时,确定所述GRE隧道对应的地址转换表项满足老化条件。
11.一种实现通用路由封装GRE隧道穿越的GRE隧道公网接口设备,其特征在于,该设备包括收发单元和控制单元;
所述收发单元收到所述GRE隧道首个报文时,将所收到的报文发送至控制单元;
所述控制单元用于为GRE隧道设置对应于公网侧的目的IP地址接口;接收所述收发单元发送的所述GRE隧道首个报文,获取该报文的源IP地址,将其值赋予设置的所述GRE隧道对应于公网侧的目的IP地址接口,配置所获取的IP地址为所述GRE隧道在本端对应于公网侧的目的IP地址。
CN200710121571A 2007-09-10 2007-09-10 实现通用路由封装隧道穿越的方法及设备 Active CN100588171C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200710121571A CN100588171C (zh) 2007-09-10 2007-09-10 实现通用路由封装隧道穿越的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200710121571A CN100588171C (zh) 2007-09-10 2007-09-10 实现通用路由封装隧道穿越的方法及设备

Publications (2)

Publication Number Publication Date
CN101119273A true CN101119273A (zh) 2008-02-06
CN100588171C CN100588171C (zh) 2010-02-03

Family

ID=39055218

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710121571A Active CN100588171C (zh) 2007-09-10 2007-09-10 实现通用路由封装隧道穿越的方法及设备

Country Status (1)

Country Link
CN (1) CN100588171C (zh)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101848171A (zh) * 2010-07-01 2010-09-29 杭州华三通信技术有限公司 一种基于gre隧道的数据传输方法、设备和系统
WO2011144154A1 (zh) * 2010-10-15 2011-11-24 华为技术有限公司 在nat穿越中分配外网互联网协议ip地址的方法及设备、系统
CN102316042A (zh) * 2011-09-30 2012-01-11 杭州华三通信技术有限公司 一种报文的传输方法、设备和系统
CN102694738A (zh) * 2012-06-15 2012-09-26 北京傲天动联技术有限公司 在虚拟专用网网关转发报文的方法以及虚拟专用网网关
CN102811174A (zh) * 2012-07-30 2012-12-05 浙江宇视科技有限公司 一种监控业务处理方法和nvr
CN102064999B (zh) * 2009-11-18 2013-04-03 杭州华三通信技术有限公司 实现组播报文转发的方法和组播报文转发设备
WO2014079335A1 (zh) * 2012-11-26 2014-05-30 华为技术有限公司 Ip报文处理方法、装置及网络系统
CN104023091A (zh) * 2013-02-28 2014-09-03 华为终端有限公司 一种多链路融合方法及设备
CN104780107A (zh) * 2014-01-13 2015-07-15 清华大学 一种IDC过渡网络的4over6隧道建立方法
CN104993995A (zh) * 2015-07-15 2015-10-21 上海地面通信息网络有限公司 基于gre路由封装的城市之间虚拟专线控制装置
CN105591873A (zh) * 2015-10-27 2016-05-18 杭州华三通信技术有限公司 一种虚拟机隔离方法和装置
CN105703999A (zh) * 2016-03-29 2016-06-22 华为技术有限公司 建立gre隧道的方法和设备
CN102316042B (zh) * 2011-09-30 2016-12-14 杭州华三通信技术有限公司 一种报文的传输方法、设备和系统
WO2016201966A1 (zh) * 2015-06-18 2016-12-22 中兴通讯股份有限公司 一种nat穿透方法、装置及系统
CN106713099A (zh) * 2015-11-16 2017-05-24 任子行网络技术股份有限公司 一种gre隧道的维护方法及装置
CN107770027A (zh) * 2017-09-19 2018-03-06 大唐网络有限公司 一种基于OpenStack架构提供GRE隧道服务的实现方法
CN107979656A (zh) * 2017-11-22 2018-05-01 安徽皖通邮电股份有限公司 一种静态nat业务支持动态识别入向流量的方法
CN110383796A (zh) * 2016-12-20 2019-10-25 华为技术有限公司 在会话初始化期间传送伪隧道信息的系统和方法
CN110995766A (zh) * 2019-12-31 2020-04-10 联想(北京)有限公司 一种网络通信方法及采用网络通信方法的客户端与中心站点
CN112751946A (zh) * 2019-10-31 2021-05-04 中国移动通信有限公司研究院 一种隧道建立方法、装置、设备及计算机可读存储介质
CN115150266A (zh) * 2022-06-29 2022-10-04 北京天融信网络安全技术有限公司 局域网互联配置及数据传输方法

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102064999B (zh) * 2009-11-18 2013-04-03 杭州华三通信技术有限公司 实现组播报文转发的方法和组播报文转发设备
CN101848171B (zh) * 2010-07-01 2013-04-03 杭州华三通信技术有限公司 一种基于gre隧道的数据传输方法、设备和系统
CN101848171A (zh) * 2010-07-01 2010-09-29 杭州华三通信技术有限公司 一种基于gre隧道的数据传输方法、设备和系统
WO2011144154A1 (zh) * 2010-10-15 2011-11-24 华为技术有限公司 在nat穿越中分配外网互联网协议ip地址的方法及设备、系统
CN102316042B (zh) * 2011-09-30 2016-12-14 杭州华三通信技术有限公司 一种报文的传输方法、设备和系统
CN102316042A (zh) * 2011-09-30 2012-01-11 杭州华三通信技术有限公司 一种报文的传输方法、设备和系统
CN102694738A (zh) * 2012-06-15 2012-09-26 北京傲天动联技术有限公司 在虚拟专用网网关转发报文的方法以及虚拟专用网网关
CN102694738B (zh) * 2012-06-15 2015-05-13 北京傲天动联技术股份有限公司 在虚拟专用网网关转发报文的方法以及虚拟专用网网关
CN102811174A (zh) * 2012-07-30 2012-12-05 浙江宇视科技有限公司 一种监控业务处理方法和nvr
CN102811174B (zh) * 2012-07-30 2015-07-15 浙江宇视科技有限公司 一种监控业务处理方法和nvr
WO2014079335A1 (zh) * 2012-11-26 2014-05-30 华为技术有限公司 Ip报文处理方法、装置及网络系统
US10454880B2 (en) 2012-11-26 2019-10-22 Huawei Technologies Co., Ltd. IP packet processing method and apparatus, and network system
CN104023091A (zh) * 2013-02-28 2014-09-03 华为终端有限公司 一种多链路融合方法及设备
US10050880B2 (en) 2013-02-28 2018-08-14 Huawei Device Co., Ltd. Multi-link aggregation method and device
CN104023091B (zh) * 2013-02-28 2018-10-30 华为终端有限公司 一种多链路融合方法及设备
CN104780107A (zh) * 2014-01-13 2015-07-15 清华大学 一种IDC过渡网络的4over6隧道建立方法
CN104780107B (zh) * 2014-01-13 2018-08-28 清华大学 一种IDC过渡网络的4over6隧道建立方法
CN106331187A (zh) * 2015-06-18 2017-01-11 中兴通讯股份有限公司 一种nat穿透方法、装置及系统
WO2016201966A1 (zh) * 2015-06-18 2016-12-22 中兴通讯股份有限公司 一种nat穿透方法、装置及系统
CN104993995A (zh) * 2015-07-15 2015-10-21 上海地面通信息网络有限公司 基于gre路由封装的城市之间虚拟专线控制装置
CN105591873B (zh) * 2015-10-27 2019-03-15 新华三技术有限公司 一种虚拟机隔离方法和装置
CN105591873A (zh) * 2015-10-27 2016-05-18 杭州华三通信技术有限公司 一种虚拟机隔离方法和装置
CN106713099A (zh) * 2015-11-16 2017-05-24 任子行网络技术股份有限公司 一种gre隧道的维护方法及装置
CN105703999B (zh) * 2016-03-29 2019-06-11 华为技术有限公司 建立gre隧道的方法和设备
CN105703999A (zh) * 2016-03-29 2016-06-22 华为技术有限公司 建立gre隧道的方法和设备
CN110383796A (zh) * 2016-12-20 2019-10-25 华为技术有限公司 在会话初始化期间传送伪隧道信息的系统和方法
CN110383796B (zh) * 2016-12-20 2021-08-03 华为技术有限公司 在会话初始化期间传送伪隧道信息的系统和方法
CN107770027B (zh) * 2017-09-19 2021-01-05 大唐网络有限公司 一种基于OpenStack架构提供GRE隧道服务的实现方法
CN107770027A (zh) * 2017-09-19 2018-03-06 大唐网络有限公司 一种基于OpenStack架构提供GRE隧道服务的实现方法
CN107979656A (zh) * 2017-11-22 2018-05-01 安徽皖通邮电股份有限公司 一种静态nat业务支持动态识别入向流量的方法
CN112751946A (zh) * 2019-10-31 2021-05-04 中国移动通信有限公司研究院 一种隧道建立方法、装置、设备及计算机可读存储介质
CN112751946B (zh) * 2019-10-31 2023-11-24 中国移动通信有限公司研究院 一种隧道建立方法、装置、设备及计算机可读存储介质
CN110995766A (zh) * 2019-12-31 2020-04-10 联想(北京)有限公司 一种网络通信方法及采用网络通信方法的客户端与中心站点
CN110995766B (zh) * 2019-12-31 2021-09-14 联想(北京)有限公司 一种网络通信方法及采用网络通信方法的客户端与中心站点
CN115150266A (zh) * 2022-06-29 2022-10-04 北京天融信网络安全技术有限公司 局域网互联配置及数据传输方法
CN115150266B (zh) * 2022-06-29 2024-03-15 北京天融信网络安全技术有限公司 局域网互联配置及数据传输方法

Also Published As

Publication number Publication date
CN100588171C (zh) 2010-02-03

Similar Documents

Publication Publication Date Title
CN100588171C (zh) 实现通用路由封装隧道穿越的方法及设备
CN107819677B (zh) 一种报文转发方法及装置
CN100472487C (zh) 用于域间通信的虚拟广播网络
US10044608B2 (en) Virtual machine migration
US9036508B2 (en) Layer two extensions
CN101848171B (zh) 一种基于gre隧道的数据传输方法、设备和系统
CN103259726B (zh) 存储和发送mac地址表项的方法、设备及系统
CN106936939A (zh) 一种报文处理方法、相关装置及nvo3网络系统
US20230090829A1 (en) Virtualized network functions through address space aggregation
CN101778045A (zh) 报文传输方法、装置及网络系统
CN106992917A (zh) 报文转发方法和装置
EP3528441A1 (en) Message forwarding
CN102347889B (zh) 一种分层虚拟专用局域网中的报文转发方法、系统和装置
CN106559302A (zh) 单播隧道建立方法、装置和系统
CN102546349B (zh) 一种报文转发方法和设备
CN107317768A (zh) 流量调度方法及装置
CN105939240A (zh) 负载均衡方法及装置
CN103166864A (zh) 一种私网vlan信息管理方法和设备
CN107147580A (zh) 一种隧道建立的方法及通信系统
GB2578415A (en) Methods and systems for transmitting information packets through tunnel groups at a network node
CN104734986B (zh) 一种报文转发方法和装置
CN105939267A (zh) 带外管理方法及装置
CN104253698A (zh) 报文组播的处理方法和设备
EP1719310B1 (en) Method and apparatus for providing data over a dynamic wireless network
EP3503484B1 (en) Message transmission methods and devices

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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.