(八)高可靠NAT
1. 双机冷备
2. 双机热备
双机热备可以极大地提升NAT服务的可靠性和承载能力,但是两台NAT设备上的NAT配置也需要完全相同。这样就会出现一个问题:如果两个NAT设备分别将两条不同的流映射到相同的公网地址,并且端口也相同的话,势必会造成表项的混乱,所以我们引入了优先级的概念。
在双机热备的环境中,如果某个设备被配置为高优先级,在进行端口映射的时候端口取值范围为102435000;如果地址池被配置为低优先级,其端口取值范围为3500165535。这样主备两台防火墙虽然使用相同的NAT地址池中的地址,但是由于地址池的优先级不同,所以就不会出现NAT转换后公网IP和公网端口完全相同的情况了。
正常情况下两个主机各自分配不同的端口段,一旦某个NAT主机故障后,将由另一台NAT主机承载全部的流量。此时面临两个问题:
- 单机的承载瓶颈,这个问题比较无解,妥协方案是通过控制单机设备平时负载不高于50%。两层架构下,分配会话的主机和转发主机配比较高,负责分配会话的主机数量相对较少,这种情况下浪费部分性能也是可以接受的。
- 在内网主机访问qps比较大的情况下,有可能出现端口不够用的情况,此时需要有管理手段可以通知到健康节点抢占故障节点的端口来分配。同时,为了保证端口分配和已有会话不冲突以及便于在故障节点恢复后能够将抢占端口段还回去,两个设备之间需要保持会话同步。