CN103475750B - 一种适用于多出口网络的地址转换方法及设备 - Google Patents
一种适用于多出口网络的地址转换方法及设备 Download PDFInfo
- Publication number
- CN103475750B CN103475750B CN201310420978.9A CN201310420978A CN103475750B CN 103475750 B CN103475750 B CN 103475750B CN 201310420978 A CN201310420978 A CN 201310420978A CN 103475750 B CN103475750 B CN 103475750B
- Authority
- CN
- China
- Prior art keywords
- address
- message
- private network
- connection
- gateway device
- 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)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种适用于多出口网络的地址转换方法和设备,网关设备从公网接口收到公网用户发送来的连接首报文,根据连接首报文的目的地址,判断连接首报文匹配地址转换配置,查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;网关设备从私网接口收到私网设备发送来的回应报文,查询会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将回应报文源地址转换为公网地址,并根据转换后的回应报文目的地址,查询转发表进行报文转发。
Description
技术领域
本发明涉及网络通信技术,特别是一种适用于多出口网络的地址转换方法和设备。
背景技术
网络地址转换(NAT,Network Address Translation),是一种通过转换报文源/目的地址实现私网与公网互通的技术。由于NAT技术会破坏网络互联协议(IP,InternetProtocol)通信的端到端模型,给用户在实际组网中带来许多限制,由此,产生了多种类型的NAT,以满足实际通信中各种各样的用户需求。比如NAT server就是一种能满足公网用户主动访问私网设备的NAT技术。
NAT server的用法:NAT server为私网设备分配固定公网地址。企业向公网的域名解析服务器(DNS,Domain Name Service)注册域名时,域名对应的IP地址为公网地址,当公网某主机通过DNS解析到地址后,会发起目的地址为公网地址的报文,NAT设备收到该报文后,发现报文目的地址为NAT server配置的公网地址,于是将报文目的地址转换为对应的私网地址,使公网主机访问到真实的私网设备。
然而,企业在使用NAT server时,常会遇到多出口的难题,如图1所示:该企业有两个网关设备,分别接入了运营商网络A和运营商网络B。在A网关设备上,NAT server的公网地址属于运营商网络A;在B网关设备上,NAT server的公网地址属于运营商网络B。由于用户往往使用的DNS服务器属于第三方(既不位于运营商网络A的网络也不位于运营商网络B的网络),位于运营商网络A网络的用户在解析服务器的域名时,可能会解析到B网关设备上的公网地址,具体通信过程为:
用户C通过DNS解析到的服务器地址为B网关设备上的公网地址,遂以B网关设备上的公网地址为目的地址,发起连接请求(如图中标号1的虚线箭头);
B网关设备收到报文后,进行目的地址转换,然后将报文转发给私网设备(如图中标号2的虚线箭头);
私网设备发出回应报文(如图中标号3的虚线箭头),值得注意的是,由于私网设备回应报文目的地址为用户C的地址,而用户C位于运营商网络A的网络内,私网设备的回应报文会被内部网络内的中间设备转发到A网关设备,而不是B网关设备(因为路由上,A网关设备更靠近用户C)。这时A网关设备可能会对收到的报文有两种处理:
一是检查到这个报文并不属于某个连接的首包,认定它属于非正常连接的报文,丢弃;二是不检查报文是否属正常连接,将报文的源地址转换为运营商网络A网络的公网地址,将报文转发给用户C。然而,用户C收到此报文后,由于报文源地址并不是用户C之前访问的目的地址(B网关设备上的公网地址),该报文会被用户C丢弃。
因此,网关设备A对报文的两种处理都会导致用户C访问私网设备失败。
现有的一种最优实现方法为双机热备份,这种方法的基本原理为:在A网关设备和B网关设备之间,连接一根“心跳线”,当A网关设备或B网关设备对报文进行过NAT转换时,立即在本网关设备记录一条会话表项,会话表项里记录着地址转换对应关系,两个网关设备利用心跳线通过特殊的“心跳协议”实时同步各自生成的会话表项,使两个网关设备维护相同的会话表,这样,如果某条连接的首报文由B网关设备转换过目的地址,而该报文的回应报文被转发到了A网关设备,A网关设备可根据设备上的会话表项里记录的地址转换对应关系,将报文源地址转换为B网关设备上的公网地址,即能顺利完成通信。
双机热备份的方法存在明显的缺点:双机热备技术属于高级高可靠性(HA,HighAvailability)技术,支持双机热备的产品比较昂贵,且对两台设备的CPU、软件版本的兼容性有较高要求(实际上,同一家设备供应商的不同系列产品之间常常都无法满足其要求)。因此,对于已经使用了两台不同产品的企业来说,升级时需要购买新设备替换掉旧设备,网络升级成本太高。
此外,如果企业的网络有三个或更多的出口,则网关设备之间必须一对多备份,企业可能不得不购买更高端的产品作为网关设备,网络升级成本更加昂贵。
发明内容
有鉴于此,本发明提出了一种适用于多出口网络的地址转换方法及设备,在公网接口和私网接口都能进行NAT处理,NAT处理流程中,在转换首报文目的地址的同时,还转换首报文的源地址,使经过NAT转换的连接的回应报文还能被引流到原始的NAT设备进行相反的地址转换,从而解决多出口的难题,对于企业来说,网络升级代价很小。
本发明提出的技术方案为:
一种适用于多出口网络的地址转换方法,该方法应用于网关设备,所述网关设备为私网设备连接的多个网关设备中的一个,不同网关设备分别接入不同运营商网络,各网关设备之间在私网建立路由邻居,并通过该路由邻居关系刷新各自的转发表,该方法包括以下步骤:
网关设备从公网接口收到公网用户发送来的连接首报文,所述连接首报文的源地址为所述公网用户的IP地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;
所述网关设备根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;
所述网关设备从私网接口收到私网设备发送来的回应报文时,查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发。
上述方案中,在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口之前,还包括:
判断所述连接首报文的源地址是否与所述网关设备上的公网地址属于同一网段,是则不再判断查询的转发表项中的转发出接口是否是地址转换配置中的私网接口,直接将所述连接首报文目的地址转换为配置中的私网地址,连接首报文的源地址不变,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去。
上述方案中,网关设备查询到的转发表项中的转发出接口不是地址转换配置中的私网接口时,该方法进一步包括:
网关设备将所述连接首报文目的地址转换为配置中的私网地址,不转换所述连接首报文的源地址,建立会话表项。
上述方案中,网关设备从私网接口收到的回应报文携带的目的地址不是本私网接口地址时,该方法进一步包括:
网关设备根据该回应报文的目的地址查询转发表,根据查询到的转发表项转发所述回应报文。
上述方案中,网关设备从私网接口收到的回应报文携带的目的地址是本私网接口地址,且找不到会话表项时,该方法进一步包括:
结束地址转换处理,发送所述回应报文给网关设备本机。
一种网关设备,所述网关设备为私网设备连接的多个网关设备中的一个,所述网关设备与其它网关设备分别接入不同运营商网络,各网关设备之间在私网建立路由邻居,并通过该路由邻居关系刷新各自的转发表,该设备包括:
收发模块,用于接收公网用户发送来的连接首报文,所述连接首报文的源地址为所述公网用户的IP地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;还用于将网络地址转换后的连接首报文从私网接口转发出去;还用于接收私网设备发送来的回应报文;
处理模块,用于根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项;还用于查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发。
上述方案中,在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口之前,
所述处理模块还用于,判断所述连接首报文的源地址是否与所述网关设备上的公网地址属于同一网段,是则不再判断查询的转发表项中的转发出接口是否是地址转换配置中的私网接口,直接将所述连接首报文目的地址转换为配置中的私网地址,连接首报文的源地址不变,建立会话表项;
所述收发模块还用于,将网络地址转换后的连接首报文从私网接口转发出去。
上述方案中,网关设备查询到的转发表项中的转发出接口不是地址转换配置中的私网接口时,
所述处理模块还用于,将所述连接首报文目的地址转换为配置中的私网地址,不转换所述连接首报文的源地址,建立会话表项。
上述方案中,网关设备从私网接口收到的回应报文携带的目的地址不是本私网接口地址时,
所述处理单元还用于,根据该回应报文的目的地址查询转发表,根据查询到的转发表项转发所述回应报文。
上述方案中,网关设备从私网接口收到的回应报文携带的目的地址是本私网接口地址,且找不到会话表项时,
所述处理单元进一步用于,结束地址转换处理;
所述收发模块进一步用于,发送所述回应报文给网关设备本机。
综上所述,本发明公开的技术方案不需要在两个网关设备之间建立热备份关系即能解决多出口的难题,不限制两台网关设备的产品类型,对于企业来说,网络升级代价很小。
附图说明
图1为现有技术双出口组网示意图。
图2为实施例一的双出口组网示意图。
图3为实施例一的流程图。
图4为实施例一报文交互流程图。
图5为本发明设备结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步的详细描述。
本发明的技术方案是:网关设备从公网接口收到公网用户发送来的连接首报文,所述连接首报文的源地址为所述公网用户的IP地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;
所述网关设备根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;
所述网关设备从私网接口收到私网设备发送来的回应报文时,查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发。
一般地,路由器的报文处理流程都是“入接口业务处理—IP转发—出接口业务处理”,当向网关设备接口下发NAT配置时,网关设备在该接口的业务处理队列里注册NAT业务,该接口收到报文时会进入NAT处理流程。
普通的NAT server必须在配置中指定公网接口、公网地址、私网地址,本发明中的地址转换方法除需在配置中指定这三个参数外,还必须指定私网接口,且配置同时向公网接口和私网接口注册NAT业务,使两个接口收到报文时均会进入NAT处理流程。这里NAT处理流程包括两方面内容:对接收报文进行地址转换和不对接收报文进行地址转换,其中,网关设备接收到的报文匹配地址转换配置时则对其进行地址转换,如果网关设备接收到的报文不匹配地址转换配置,则直接转发报文,不进行地址转换,这两种处理方式均属于NAT处理。下面详述公网接口和私网接口对NAT的处理。
公网接口NAT处理流程:
入方向处理:
网关设备从公网接口收到公网用户发送来的连接首报文,所述公网用户位于非所述公网接口连接的运营商网络;所述连接首报文携带的源地址为所述公网用户的IP地址,所述连接首报文携带的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;网关设备判断所述连接首报文匹配地址转换配置。
网关设备根据所述源地址查询转发表,判断查询到的转发表项中的转发出接口是否是地址转换配置中的私网接口,若是则将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;否则将报文目的地址转换为配置中的私网地址,不转换报文源地址,建立会话表项,网关设备根据地址转换后的连接首报文携带的目的地址查询转发表,根据查询到的转发表项转发地址转换后的连接首报文。
出方向处理:网关设备从私网接口收到回应报文,若回应报文已进行过地址转换,不再能匹配上配置或会话,网关设备直接从接口转发报文,无特殊处理。
私网接口NAT处理流程:
入方向处理:
网关设备从私网接口收到回应报文,判断回应报文携带的目的地址是否为本私网接口地址,如果是则查询会话表项,若能找到会话表项,则将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,网关设备根据回应报文携带的目的地址查询转发表,根据查询到的转发表项转发所述网络地址转换后的回应报文;如果找不到会话表项,结束地址转换处理,上送所述回应报文给网关设备本机。
出方向处理:
网关设备无论从公网接口收到连接首报文还是从私网接口收到回应报文,均已进行过地址转换,报文已不会再匹配上配置或会话,网关设备直接从接口发出报文,无特殊处理。
方法实施例一
本实施例以双出口组网、私网设备以私网服务器为例,如图2所示,某企业有一台放置在私网的服务器对外提供服务,其私网地址是192.168.2.2,该企业有两个网关设备A和B,分别接入运营商网络A和B,两个网关设备之间在私网接口建立开放式最短路径优先OSPF(Open Shortest Path First)邻居(实际应用中不限于使用何种路由协议),并通过该路由邻居关系刷新转发表,使得:B网关设备的转发表中,目的地址为运营商网络A网络内地址的转发下一跳地址为A网关设备的私网接口地址;相反地,A网关设备的转发表中,目的地址为运营商网络B网络内地址的转发下一跳地址为B网关设备的私网接口地址。网关设备B上去往目的网段167.2.3.0/24的优选路由的下一跳地址为192.168.1.2。私网服务器在网关设备A上配置公网地址167.1.1.2,在网关设备B上配置公网地址221.1.1.2。运营商网络A网络内用户C使用的DNS服务器为第三方DNS server。
本实施例中网关设备A和网关设备B的私网接口配置OSPF对等体,并且根据公网的配置引入外部路由(比如:网关设备A和网关设备B在公网使用边界网关协议(BGP,BorderGateway Protocol)学习路由,则需配置OSPF引入BGP路由),则网关设备A和网关设备B能互相学习到路由。一般来说,由于网关设备A是直接接入了运营商网络A,网关设备A上去往运营商网络A网络内的用户C目的网段的路由会具有更小的cost值(相比网关设备B上)。网关设备B通过OSPF邻居从网关设备A学习到去往用户C目的网段的路由将成为网关设备B上的优选路由,该路由目的网段为用户C所在网段,下一跳为网关设备A的私网接口地址,出接口为网关设备B的私网接口。网关设备B会根据此路由下发转发信息库(FIB,ForwardInformation Base)表项。
一般地,NAT设备(本发明为网关设备)都会维护一个NAT会话表,NAT会话表记录着地址转换关系,用于指导NAT设备对一条连接的后续报文进行地址转换。NAT会话表至少包含原始报文的源、目的地址和发生地址转换后的源、目的地址。
转发表用于指导三层转发,所有三层网络设备均实现转发表,一般地,转发表至少包含目的网段、转发出接口、下一跳地址等信息。一种最简形式的转发表如表1所示:
表1
目的网段 | 转发出接口 | 下一跳地址 |
21.0.0.0/8 | GE0/0 | 202.116.102.7 |
22.25.152.0/24 | GE0/1 | 211.58.46.95 |
在本发明中,网关设备B从网关设备A学习到去往用户C目的网段路由时,下发的FIB表项,目的网段为用户C所在网段,转发出接口为网关设备B的私网接口,下一跳地址为网关设备A的私网接口的接口地址。
图3为本实施例流程图,图4为本实施例的报文交互流程图,以双出口组网公网用户C访问私网服务器为例对本发明进行说明,包括以下步骤:
步骤301:用户C向DNS服务器发起DNS查询。
本步骤中,用户C为公网用户,IP地址为167.2.3.4,其要访问私网服务器,首先向DNS服务器发起DNS查询,DNS服务器向用户C返回的地址为所述私网服务器在运营商网络B的公网地址221.1.1.2。
步骤302:用户C发出连接首报文。
本步骤中,用户C发出连接首报文,该报文携带的源地址为用户C的IP地址167.2.3.4,该报文携带的目地地址为运营商网络B的公网地址221.1.1.2。
步骤303:网关设备B从公网接口接收到连接首报文,判断该报文匹配地址转换配置,提取报文源地址并查询转发表项。
本步骤中,企业的网关设备B从公网接口收到连接首报文,提取该报文携带的目的地址,判断该目的地址是否为网关设备B配置的公网地址,由步骤302中可知,该报文携带的目地地址为运营商网络B的公网地址221.1.1.2,因此该报文匹配地址转换配置。网关设备提取出报文源地址167.2.3.4,并以此地址查找匹配转发表,从而得到167.2.3.4对应的转发出接口为网关设备B的私网接口(即地址为192.168.1.1的接口)。
步骤304:网关设备B将报文源地址转换为私网接口IP地址,目的地址转换为配置的私网地址,并建立会话表。
步骤303中查询到的转发表的转发出接口为网关设备B的私网接口(即地址为192.168.1.1的接口),于是将报文源地址转换为私网接口IP地址192.168.1.1,目的地址转换为配置的私网地址192.168.2.2,并建立会话,记录这一转换关系,会话表如表2所示:
表2
步骤305:网关设备B根据报文目的地址查询转发表,根据查到的转发表转发报文。
本步骤中,地址转换完成后,企业的网关设备B根据报文目的地址查找转发表转发报文,找到的转发出接口为网关设备B的私网接口,因此从私网接口将地址转换后的报文转发给私网服务器,报文源地址为192.168.1.1,目的地址为192.168.2.2。
步骤306:私网服务器返回回应报文。
本步骤中,私网服务器返回回应报文,该报文携带的源地址为192.168.2.2,目的地址为192.168.1.1。
步骤307:网关设备B私网接口收到回应报文,根据报文目的地址判断是接收该报文的接口地址,查找会话表。
本步骤中,网关设备B的私网接口收到该回应报文,回应报文目的地址与接收该报文的接口地址相同,则查找匹配的会话表。
步骤308:根据会话表对报文进行地址转换,报文目的地址转换为原用户本身的IP地址,报文源地址转换为公网地址。
本步骤中,企业的网关设备B从私网接口收到回应报文,发现报文目的地址为本接口的地址,根据报文源、目的地址去查找匹配的会话表项,由于步骤304中已建立会话表,所以能找到匹配的表项,根据会话记录的地址转换关系,将报文源地址转换为221.1.1.2,将报文目的地址转换为167.2.3.4。
步骤309:网关设备B根据报文目的地址查询转发表,根据查到的转发表转发报文。
本步骤中,企业的网关设备B根据报文目的地址查找转发表转发报文,找到的转发表如表2所示,出接口为网关设备B的私网接口,下一跳地址为网关设备A的私网接口地址,则从网关设备B的私网接口向网关设备A发出报文。企业的网关设备A收到报文后,从公网接口发出(由于此时报文源地址221.1.1.2已经是公网地址,网关设备A不会对该报文进行NAT处理),最终报文到达用户C。
图4为本实施例的报文交互流程图,如图4所示,用户C、网关设备B、私网服务器、网关设备A之间的报文交互如下:
用户C发送连接首报文给网关设备B,所述连接首报文的源地址为167.2.3.4,目的地址为221.1.1.2;
网关设备B对接收到的连接首报文进行两次地址转换后发送给私网服务器,地址转换后的报文源地址为192.168.1.1,目的地址为192.168.2.2;
私网服务器收到地址转换后的报文,向网关设备B返回一个回应报文,所述回应报文的源地址为192.168.2.2,目的地址为192.168.1.1;
网关设备B收到所述回应报文后对其进行两次地址转换后发送给网关设备A,经过地址转换后的回应报文源地址为221.1.1.2,目的地址为167.2.3.4;
网关设备A将所述地址转换后的回应报文转发给用户C,转发出去的报文源地址为221.1.1.2,目的地址为167.2.3.4。
本实施例以双出口网络为例,对本发明方案进行了详细说明,本发明在公网接口和私网接口均能进行NAT处理,并且在转换连接首报文目的地址的同时还转换连接首报文的源地址,使经过NAT转换的回应报文还能被引流到原始的NAT设备进行相反的地址转换,这样用户接收到私网服务器发送的第一个回应报文后完成了第一次对私网服务器的访问,后续用户继续访问私网服务器时仍然按照前述报文的NAT处理流程进行,只是在网关设备上直接根据已建立的会话表项进行相应的地址转换,不需要再对后续报文进行地址转换前的判断操作,成功实现了用户对私网服务器的访问,从而有效解决了多出口难题。
针对上述方法,本发明还公开一种网关设备。本发明公开的设备如图5所示,包括:
收发模块501,用于接收公网用户发送来的连接首报文,所述连接首报文的源地址为所述公网用户的IP地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;还用于将网络地址转换后的连接首报文从私网接口转发出去;还用于接收私网设备发送来的回应报文;进一步用于发送所述回应报文给网关设备本机。
处理模块502,用于根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项;
还用于查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发;
在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口之前,还用于判断所述连接首报文的源地址是否与所述网关设备上的公网地址属于同一网段,是则不再判断查询的转发表项中的转发出接口是否是地址转换配置中的私网接口,直接将所述连接首报文目的地址转换为配置中的私网地址,连接首报文的源地址不变,建立会话表项;
网关设备查询到的转发表项中的转发出接口不是地址转换配置中的私网接口时,还用于将所述连接首报文目的地址转换为配置中的私网地址,不转换所述连接首报文的源地址,建立会话表项;
网关设备从私网接口收到的回应报文携带的目的地址不是本私网接口地址时,还用于根据该回应报文的目的地址查询转发表,根据查询到的转发表项转发所述回应报文;
网关设备从私网接口收到的回应报文携带的目的地址是本私网接口地址,且找不到会话表项时,进一步用于结束地址转换处理。
本实施例网关设备可作为私网设备,例如私网服务器的双出口网关中的一个,可以实现对公网用户对私网设备的访问处理,其具体实现可参见上述本发明方法实施例的说明,在此不再赘述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种适用于多出口网络的地址转换方法,其特征在于,该方法应用于网关设备,所述网关设备为私网设备连接的多个网关设备中的一个,不同网关设备分别接入不同运营商网络,各网关设备之间在私网建立路由邻居,并通过该路由邻居关系刷新各自的转发表,该方法包括以下步骤:
网关设备从公网接口收到公网用户发送来的连接首报文,所述连接首报文的源地址为所述公网用户的IP地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;
所述网关设备根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;
所述网关设备从私网接口收到私网设备发送来的回应报文时,查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发。
2.根据权利要求1所述的方法,其特征在于,在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口之前,还包括:
判断所述连接首报文的源地址是否与所述网关设备上的公网地址属于同一网段,是则不再判断查询的转发表项中的转发出接口是否是地址转换配置中的私网接口,直接将所述连接首报文目的地址转换为配置中的私网地址,连接首报文的源地址不变,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去。
3.根据权利要求1所述的方法,其特征在于,网关设备查询到的转发表项中的转发出接口不是地址转换配置中的私网接口时,该方法进一步包括:
网关设备将所述连接首报文目的地址转换为配置中的私网地址,不转换所述连接首报文的源地址,建立会话表项。
4.根据权利要求1所述的方法,其特征在于,网关设备从私网接口收到的回应报文携带的目的地址不是本私网接口地址时,该方法进一步包括:
网关设备根据该回应报文的目的地址查询转发表,根据查询到的转发表项转发所述回应报文。
5.根据权利要求1所述的方法,其特征在于,网关设备从私网接口收到的回应报文携带的目的地址是本私网接口地址,且找不到会话表项时,该方法进一步包括:
结束地址转换处理,发送所述回应报文给网关设备本机。
6.一种网关设备,其特征在于,所述网关设备为私网设备连接的多个网关设备中的一个,所述网关设备与其它网关设备分别接入不同运营商网络,各网关设备之间在私网建立路由邻居,并通过该路由邻居关系刷新各自的转发表,该设备包括:
收发模块,用于接收公网用户发送来的连接首报文,所述连接首报文的源地址为所述公网用户的IP地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;还用于将网络地址转换后的连接首报文从私网接口转发出去;还用于接收私网设备发送来的回应报文;
处理模块,用于根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项;还用于查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发。
7.根据权利要求6所述的设备,其特征在于,在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口之前,
所述处理模块还用于,判断所述连接首报文的源地址是否与所述网关设备上的公网地址属于同一网段,是则不再判断查询的转发表项中的转发出接口是否是地址转换配置中的私网接口,直接将所述连接首报文目的地址转换为配置中的私网地址,连接首报文的源地址不变,建立会话表项;
所述收发模块还用于,将网络地址转换后的连接首报文从私网接口转发出去。
8.根据权利要求6所述的设备,其特征在于,网关设备查询到的转发表项中的转发出接口不是地址转换配置中的私网接口时,
所述处理模块还用于,将所述连接首报文目的地址转换为配置中的私网地址,不转换所述连接首报文的源地址,建立会话表项。
9.根据权利要求6所述的设备,其特征在于,网关设备从私网接口收到的回应报文携带的目的地址不是本私网接口地址时,
所述处理单元还用于,根据该回应报文的目的地址查询转发表,根据查询到的转发表项转发所述回应报文。
10.根据权利要求6所述的设备,其特征在于,网关设备从私网接口收到的回应报文携带的目的地址是本私网接口地址,且找不到会话表项时,
所述处理单元进一步用于,结束地址转换处理;
所述收发模块进一步用于,发送所述回应报文给网关设备本机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310420978.9A CN103475750B (zh) | 2013-09-16 | 2013-09-16 | 一种适用于多出口网络的地址转换方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310420978.9A CN103475750B (zh) | 2013-09-16 | 2013-09-16 | 一种适用于多出口网络的地址转换方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103475750A CN103475750A (zh) | 2013-12-25 |
CN103475750B true CN103475750B (zh) | 2017-05-10 |
Family
ID=49800443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310420978.9A Active CN103475750B (zh) | 2013-09-16 | 2013-09-16 | 一种适用于多出口网络的地址转换方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103475750B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103973573B (zh) * | 2014-05-16 | 2017-05-10 | 新华三技术有限公司 | 会话备份方法、报文转发方法及其装置 |
CN105743861B (zh) * | 2014-12-12 | 2019-02-19 | 华为数字技术(苏州)有限公司 | 一种发送报文的方法、装置及设备 |
CN104702713B (zh) * | 2015-03-26 | 2018-09-04 | 新华三技术有限公司 | 一种数据报文转发方法及装置 |
CN107026796B (zh) * | 2016-02-01 | 2021-01-05 | 华为技术有限公司 | 一种vpn路由通告方法、数据流转发方法及相关设备 |
CN105959129B (zh) * | 2016-02-15 | 2019-09-17 | 杭州迪普科技股份有限公司 | 监测网络故障的方法及装置 |
CN107528932A (zh) * | 2016-06-22 | 2017-12-29 | 中兴通讯股份有限公司 | 一种数据传输方法、网络地址转换设备 |
CN107135096B (zh) * | 2017-04-11 | 2020-06-30 | 北京奇艺世纪科技有限公司 | 堡垒机出口链路优化系统及方法 |
CN109922163B (zh) * | 2017-12-13 | 2022-05-03 | 中国电信股份有限公司 | 报文发送方法、物联网接入网关和物联网系统 |
CN109120746B (zh) * | 2018-09-30 | 2022-04-15 | 新华三技术有限公司 | 网络地址转换方法、装置及地址转换设备 |
CN113132218B (zh) * | 2019-12-31 | 2023-10-20 | 中兴通讯股份有限公司 | 一种家庭网关访问方法、装置、系统处理器及存储介质 |
CN112243048B (zh) * | 2020-09-01 | 2022-06-21 | 网络通信与安全紫金山实验室 | 数据传输方法、相关设备、系统以及计算机可读存储介质 |
CN112583949A (zh) * | 2020-11-26 | 2021-03-30 | 新华三云计算技术有限公司 | 一种vpc访问公网的方法和vpc设备 |
CN112910701A (zh) * | 2021-01-29 | 2021-06-04 | 浪潮软件科技有限公司 | 一种边缘计算网关自适应访问的nat的方法 |
CN113691645B (zh) * | 2021-08-17 | 2024-05-21 | 浪潮思科网络科技有限公司 | 一种基于m-lag环境实现nat的方法、设备、存储介质 |
CN114143251B (zh) * | 2021-12-08 | 2023-10-13 | 北京天融信网络安全技术有限公司 | 智能选路方法、装置、电子设备及计算机可读存储介质 |
CN114793221B (zh) * | 2022-03-21 | 2024-02-09 | 新华三信息安全技术有限公司 | Nat关联表的处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582904A (zh) * | 2009-06-17 | 2009-11-18 | 杭州华三通信技术有限公司 | 一种数据中心多线接入流量对称的实现方法、装置及系统 |
CN102148767A (zh) * | 2011-05-12 | 2011-08-10 | 杭州华三通信技术有限公司 | 一种基于nat的数据路由方法及其装置 |
CN102355479A (zh) * | 2011-07-19 | 2012-02-15 | 杭州华三通信技术有限公司 | 一种多nat网关流量转发的方法和设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101605105B (zh) * | 2009-07-14 | 2012-05-09 | 中兴通讯股份有限公司 | 一种对分片报文进行网络地址转换的方法及设备 |
CN102025608B (zh) * | 2009-09-17 | 2013-03-20 | 中兴通讯股份有限公司 | 通信方法、通信过程中的数据报文转发方法及通信节点 |
-
2013
- 2013-09-16 CN CN201310420978.9A patent/CN103475750B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582904A (zh) * | 2009-06-17 | 2009-11-18 | 杭州华三通信技术有限公司 | 一种数据中心多线接入流量对称的实现方法、装置及系统 |
CN102148767A (zh) * | 2011-05-12 | 2011-08-10 | 杭州华三通信技术有限公司 | 一种基于nat的数据路由方法及其装置 |
CN102355479A (zh) * | 2011-07-19 | 2012-02-15 | 杭州华三通信技术有限公司 | 一种多nat网关流量转发的方法和设备 |
Non-Patent Citations (2)
Title |
---|
校园网多ISP接入的设计与实现——以苏州科技学院为例;袁海峰;《苏州市职业大学学报》;20070815;第18卷(第3期);第64-66页 * |
校园网多出口服务体系设计分析;蒋华; 邱伟迪;《广西大学学报(自然科学版)》;20061230;第31卷(第6月期);第292-295页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103475750A (zh) | 2013-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103475750B (zh) | 一种适用于多出口网络的地址转换方法及设备 | |
US9596211B2 (en) | Cloud based customer premises equipment | |
CN102484639B (zh) | 用于多个nat64环境的方法和主机节点 | |
CN103546374B (zh) | 一种边缘二层网络中转发报文的方法和装置 | |
US9338093B2 (en) | Mobile phone docking station VPNs | |
US8767737B2 (en) | Data center network system and packet forwarding method thereof | |
CN102281180A (zh) | 应用于不同局域网的终端相互通讯的虚拟网卡通讯装置 | |
CN106161335A (zh) | 一种网络数据包的处理方法和装置 | |
US20150033321A1 (en) | Construct large-scale dvpn | |
CN102263774A (zh) | 一种处理源角色信息的方法和装置 | |
CN101043430B (zh) | 一种设备之间网络地址转换的方法 | |
US8238331B2 (en) | Communication system and telephone exchange apparatus | |
CN101052022B (zh) | 一种虚拟专用网用户访问公网的系统和方法 | |
JP2013507803A (ja) | 匿名通信の方法、登録方法、メッセージ受発信方法及びシステム | |
WO2013078884A1 (zh) | 报文转发方法、装置和系统 | |
US8149840B2 (en) | Method, system and processor for processing network address translation service | |
US9602602B2 (en) | Apparatus and method for identifying interoperability between object identifier-based heterogeneous identifier nodes for next generation network | |
JP2016111711A (ja) | アクセス制御方法およびシステム、ならびにアクセスポイント | |
CN104168338A (zh) | 一种网络地址转换装置和方法 | |
CN103747116A (zh) | 一种基于二层隧道协议的业务访问方法及装置 | |
CN108123912B (zh) | 一种支持p2p的微服务系统 | |
CN104836734B (zh) | 一种全新的即时通信路由方法和路由器 | |
JP6378121B2 (ja) | ゲートウェイ装置及び通信方法 | |
CN102263679A (zh) | 一种处理源角色信息的方法和转发芯片 | |
CN107332877A (zh) | 基于消息路由且缓存上下文的去状态行情网关系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for 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: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |