一种NAT网关主备切换时避免TCP连接中断的方法技术

技术编号:24103783 阅读:87 留言:0更新日期:2020-05-09 14:40
本发明专利技术特别涉及一种NAT网关主备切换时避免TCP连接中断的方法。该NAT网关主备切换时避免TCP连接中断的方法,将连接主、备两台NAT网关的下行交换机的接口都配置成trunk mode,并确保这两个下行交换机接口允许的VLAN list设置完全相同;将连接主、备两台NAT网关的上行交换机的接口也置成trunk mode,并确保这两个上行交换机接口允许的VLAN list设置完全相同;从而在没有添加任何额外的设备的情况下实现主、备两台NAT网关数据包的状态同步。该NAT网关主备切换时避免TCP连接中断的方法,无须增加硬件投入和支出,使用廉价的方式实现了TCP连接不间断的NAT网关切换,能够保证主NAT网关宕机时正在使用的TCP服务不受任何影响,既改善了NAT网关的用户体验,又降低了网关维护的运维成本。

A method to avoid the interruption of TCP connection when NAT gateway is switched between primary and secondary

【技术实现步骤摘要】
一种NAT网关主备切换时避免TCP连接中断的方法
本专利技术涉及NAT网关高可用部署
,特别涉及一种NAT网关主备切换时避免TCP连接中断的方法。
技术介绍
NAT(NetworkAddressTranslation,网络地址转换),即通过把私网IP地址转换成公网IP地址来实现内网/私网物理机或虚拟机对外网/公网的访问。一对一NAT即每个私网IP对应一个公网IP,这样IP包只做IP地址转换,不做端口转换。Conntrack(ConnectionTrack),即连接状态跟踪机制,它是Linux实现防火墙,SNAT,NAT的基础。它为所有的网络连接维护了一个连接状态表,每一个表项跟踪一个特定的连接的状态。它不仅仅用于TCP,UDP,ICMP等都可以用它来跟踪。在目前的NAT网关高可用部署中,如果主NAT网关坏了,备NAT网关将激活扮演做主NAT网关,但是原来的TCP连接将全部被中断,客户端必须重新建立TCP连接才能正常工作。一些现存的实现TCP连接不间断的方案极其复杂,它要求各NAT网关之间需要专门的网络接口来做包的状态同步。但是,这无疑会增加部署成本,同时严重影响NAT网关自身的性能,而且实现的复杂性极其高。因此,当一个NAT网关出现问题后,TCP连接的稳定性和可靠性都无法得到保证。基于上述情况,本专利技术提出了一种NAT网关主备切换时避免TCP连接中断的方法。
技术实现思路
本专利技术为了弥补现有技术的缺陷,提供了一种简单高效的NAT网关主备切换时避免TCP连接中断的方法。本专利技术是通过如下技术方案实现的:一种NAT网关主备切换时避免TCP连接中断的方法,其特征在于:包括以下步骤:第一步,将连接主、备两台NAT网关的下行交换机的接口都配置成trunkmode(中继模式),并确保这两个下行交换机接口允许的VLANlist设置完全相同;下行来的流量都将进入主、备两台NAT网关,从而在没有添加任何额外的设备的情况下实现主、备两台NAT网关数据包的状态同步;第二步,将连接主、备两台NAT网关的上行交换机的接口也置成trunkmode(中继模式),并确保这两个上行交换机接口允许的VLANlist设置完全相同;上行来的流量同时进入主、备两台NAT网关,从而实现了主、备两台NAT网关数据包的状态同步。所述主、备两个NAT网关使用Conntrack(连接状态跟踪机制)来建立连接状态表,不需要借助任何额外的网络或硬件设备,仅利用交换机现有的trunkmode(中继模式),主、备两个NAT网关即可接收所有TCP连接上收发的数据包,从而实现精确的连接状态同步。所述主、备两台NAT网关中,备用NAT网关在状态同步完后就将数据包丢弃,从而保证主、备两台NAT网关的TCP连接实现状态同步;当主NAT网关宕机时,备用NAT网关能立刻切换为主NAT网关,处理原来的TCP连接,完全不影响客户端业务,TCP连接不会中断,也无须重新建立TCP连接。所述主NAT网关用于处理TCP连接上收发的数据包,实现NAT网关功能;而所述备用NAT网关仅用于实现同步连接状态,然后就把数据包扔掉。当主NAT网关宕机时,备用NAT网关将立刻反备为主;变成主NAT网关后,NAT网关不再扔掉数据包,而是处理TCP连接上收发的数据包,实现真正的NAT功能。所述主、备两台NAT网关使用软件keepalived实现主NAT网关与备用NAT网关的切换。所述主、备两台NAT网关的openflow流表项中,主NAT网关为outputaction,备用NAT网关为dropaction,除此以外其他项设定完全相同。所述NAT网关功能使用虚拟交换机OpenvSwitch实现;当主、备NAT网关发生切换时,原备用NAT网关利用软件keepalived调用脚本来修改OpenvSwitch的openflow流表,将原来的dropaction修改为outputaction,从而切换为主NAT网关,开始行使真正的NAT网关功能。当宕机的主NAT网关修复后又能重新实现在线服务时,宕机的主NAT网关利用软件keepalived调用脚本修改OpenvSwitch的openflow流表,将原来的outputaction修改为dropaction,从而切换为备用NAT网关,并与正在实现NAT功能的主NAT网关实现TCP连接状态同步。本专利技术的有益效果是:该NAT网关主备切换时避免TCP连接中断的方法,无须增加硬件投入和支出,使用廉价的方式实现了TCP连接不间断的NAT网关切换,能够保证主NAT网关宕机时正在使用的TCP服务不受任何影响,既改善了NAT网关的用户体验,又降低了网关维护的运维成本。附图说明附图1为本专利技术NAT网关主备切换时避免TCP连接中断的方法示意图。具体实施方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本专利技术进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。该NAT网关主备切换时避免TCP连接中断的方法,包括以下步骤:第一步,将连接主、备两台NAT网关的下行交换机的接口都配置成trunkmode(中继模式),并确保这两个下行交换机接口允许的VLANlist设置完全相同;下行来的流量都将进入主、备两台NAT网关,从而在没有添加任何额外的设备的情况下实现主、备两台NAT网关数据包的状态同步;第二步,将连接主、备两台NAT网关的上行交换机的接口也置成trunkmode(中继模式),并确保这两个上行交换机接口允许的VLANlist设置完全相同;上行来的流量同时进入主、备两台NAT网关,从而实现了主、备两台NAT网关数据包的状态同步。所述主、备两个NAT网关使用Conntrack(连接状态跟踪机制)来建立连接状态表,不需要借助任何额外的网络或硬件设备,仅利用交换机现有的trunkmode(中继模式),主、备两个NAT网关即可接收所有TCP连接上收发的数据包,从而实现精确的连接状态同步。所述主、备两台NAT网关中,备用NAT网关在状态同步完后就将数据包丢弃,从而保证主、备两台NAT网关的TCP连接实现状态同步;当主NAT网关宕机时,备用NAT网关能立刻切换为主NAT网关,处理原来的TCP连接,完全不影响客户端业务,TCP连接不会中断,也无须重新建立TCP连接。所述主NAT网关用于处理TCP连接上收发的数据包,实现NAT网关功能;而所述备用NAT网关仅用于实现同步连接状态,然后就把数据包扔掉。当主NAT网关宕机时,备用NAT网关将立刻反备为主;变成主NAT网关后,NAT网关不再扔掉数据包,而是处理TCP连接上收发的数据包,实现真正的NAT功能。所述主、备两台NAT网关使用软件keepalived实现主NAT网关与备用NAT网关的切换。所述主、备两台NAT网关的openflo本文档来自技高网...

【技术保护点】
1.一种NAT网关主备切换时避免TCP连接中断的方法,其特征在于,包括以下步骤:/n第一步,将连接主、备两台NAT网关的下行交换机的接口都配置成trunk mode,并确保这两个下行交换机接口允许的VLAN list设置完全相同;/n下行来的流量都将进入主、备两台NAT网关,从而在没有添加任何额外的设备的情况下实现主、备两台NAT网关数据包的状态同步;/n第二步,将连接主、备两台NAT网关的上行交换机的接口也置成trunk mode,并确保这两个上行交换机接口允许的VLAN list设置完全相同;/n上行来的流量同时进入主、备两台NAT网关,从而实现了主、备两台NAT网关数据包的状态同步。/n

【技术特征摘要】
1.一种NAT网关主备切换时避免TCP连接中断的方法,其特征在于,包括以下步骤:
第一步,将连接主、备两台NAT网关的下行交换机的接口都配置成trunkmode,并确保这两个下行交换机接口允许的VLANlist设置完全相同;
下行来的流量都将进入主、备两台NAT网关,从而在没有添加任何额外的设备的情况下实现主、备两台NAT网关数据包的状态同步;
第二步,将连接主、备两台NAT网关的上行交换机的接口也置成trunkmode,并确保这两个上行交换机接口允许的VLANlist设置完全相同;
上行来的流量同时进入主、备两台NAT网关,从而实现了主、备两台NAT网关数据包的状态同步。


2.根据权利要求1所述的NAT网关主备切换时避免TCP连接中断的方法,其特征在于:所述主、备两个NAT网关使用Conntrack来建立连接状态表,不需要借助任何额外的网络或硬件设备,仅利用交换机现有的trunkmode,主、备两个NAT网关即可接收所有TCP连接上收发的数据包,从而实现精确的连接状态同步。


3.根据权利要求1或2所述的NAT网关主备切换时避免TCP连接中断的方法,其特征在于:所述主、备两台NAT网关中,备用NAT网关在状态同步完后就将数据包丢弃,从而保证主、备两台NAT网关的TCP连接实现状态同步;当主NAT网关宕机时,备用NAT网关能立刻切换为主NAT网关,处理原来的TCP连接,完全不影响客户端业务,TCP连接不会中断,也无须重新建立TCP连接。


4.根据权利要求3所述的NAT网关主备切换时避免TCP连接中断的方法,其特征在于:所述主NAT网关用于处理TCP连接上收发的数据包,实现NAT网关功能;而所述备用NAT网关仅用于实现同步连接状态,然后就把数据...

【专利技术属性】
技术研发人员:杨燚张晖孙思清李彦君
申请(专利权)人:浪潮云信息技术有限公司
类型:发明
国别省市:山东;37

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

1