一种适用于多出口网络的地址转换方法及设备技术

技术编号:9492483 阅读:157 留言:0更新日期:2013-12-26 02:09
本发明专利技术公开了一种适用于多出口网络的地址转换方法和设备,网关设备从公网接口收到公网用户发送来的连接首报文,根据连接首报文的目的地址,判断连接首报文匹配地址转换配置,查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;网关设备从私网接口收到私网设备发送来的回应报文,查询会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将回应报文源地址转换为公网地址,并根据转换后的回应报文目的地址,查询转发表进行报文转发。

【技术实现步骤摘要】
一种适用于多出口网络的地址转换方法及设备
本专利技术涉及网络通信技术,特别是一种适用于多出口网络的地址转换方法和设备。
技术介绍
网络地址转换(NAT,NetworkAddressTranslation),是一种通过转换报文源/目的地址实现私网与公网互通的技术。由于NAT技术会破坏网络互联协议(IP,InternetProtocol)通信的端到端模型,给用户在实际组网中带来许多限制,由此,产生了多种类型的NAT,以满足实际通信中各种各样的用户需求。比如NATserver就是一种能满足公网用户主动访问私网设备的NAT技术。NATserver的用法:NATserver为私网设备分配固定公网地址。企业向公网的域名解析服务器(DNS,DomainNameService)注册域名时,域名对应的IP地址为公网地址,当公网某主机通过DNS解析到地址后,会发起目的地址为公网地址的报文,NAT设备收到该报文后,发现报文目的地址为NATserver配置的公网地址,于是将报文目的地址转换为对应的私网地址,使公网主机访问到真实的私网设备。然而,企业在使用NATserver时,常会遇到多出口的难题,如图1所示:该企业有两个网关设备,分别接入了运营商网络A和运营商网络B。在A网关设备上,NATserver的公网地址属于运营商网络A;在B网关设备上,NATserver的公网地址属于运营商网络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地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;所述网关设备根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;所述网关设备从私网接口收到私网设备发送来的回应报文时,查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发...

【技术特征摘要】
1.一种适用于多出口网络的地址转换方法,其特征在于,该方法应用于网关设备,所述网关设备为私网设备连接的多个网关设备中的一个,不同网关设备分别接入不同运营商网络,各网关设备之间在私网建立路由邻居,并通过该路由邻居关系刷新各自的转发表,该方法包括以下步骤:网关设备从公网接口收到公网用户发送来的连接首报文,所述连接首报文的源地址为所述公网用户的IP地址,所述连接首报文的目的地址为公网用户主动访问私网设备时通过域名解析服务器DNS解析到的公网地址;所述网关设备根据所述连接首报文的目的地址,判断所述连接首报文匹配地址转换配置时,根据所述源地址查询转发表,并在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口时,将所述连接首报文目的地址转换为配置中的私网地址,将所述连接首报文源地址转换为私网接口的接口地址,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去;所述网关设备从私网接口收到私网设备发送来的回应报文时,查询得到所述会话表项,将所述回应报文目的地址转换为所述公网用户的IP地址,将所述回应报文源地址转换为所述公网地址,并根据转换后的所述回应报文的目的地址,查询转发表进行报文转发。2.根据权利要求1所述的方法,其特征在于,在判断查询到的转发表项中的转发出接口是地址转换配置中的私网接口之前,还包括:判断所述连接首报文的源地址是否与所述网关设备上的公网地址属于同一网段,是则不再判断查询的转发表项中的转发出接口是否是地址转换配置中的私网接口,直接将所述连接首报文目的地址转换为配置中的私网地址,连接首报文的源地址不变,建立会话表项,将网络地址转换后的连接首报文从私网接口转发出去。3.根据权利要求1所述的方法,其特征在于,网关设备查询到的转发表项中的转发出接口不是地址转换配置中的私网接口时,该方法进一步包括:网关设备将所述连接首报文目的地址转换为配置中的私网地址,不转换所述连接首报文的源地址,建立会话表项。4.根据权利要求1所述的方法,其特征在于,网关设备从私网接口收到的回应报文携带的目的地址不是本私网接口地址时,该方法进一步包括:网关设备根据该回应报文的目的地址查询转发表,根据查询到的转发表项转发所述回应报文。5.根据权利要求1所述的方法,其特征在于,网关设备从私网接口收到的回应报文携带的目的地址是本私网接口地址,且找不到会话表项时,该方法进一步包括:结束地址转换处理,发送所述回应报文给网关设备本机。6...

【专利技术属性】
技术研发人员:郗二军
申请(专利权)人:杭州华三通信技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1