出口设备:防火墙,负载均衡皆可
当前场景:现有两个公网IP,其分别处于两个网络环境或两个机房不在同一线路,互不干涉。
公网IP(例)
IP:11.1.21.1(位于机房1,映射内网10.0.0.1服务器)(以下称为11);
IP:25.13.41.4(位于机房2,暂无映射)(以下称为25)
要求效果:要求公网访问25.13.41.4 , 能够访问到机房1的10.0.0.1服务器
思路1:机房2内起一个服务器,windows可以用netsh做转发,linux可以用iptables,等插件做到流量转发至11.1.21.1,机房2的出口IP25.13.41.4 DNAT内网这台服务器。
思路2(本文重点):机房2出口设备DNAT映射公网25.13.41.4到11.1.21.1,后测试发现流量在出口发出成功,但是并没有回包。预测可能出现了以下问题。
出口设备流量图
其中怀疑在2.25>11的出口设备访问11过程中,并不是使用最初预想的25.13.41.4,这一指定IP进行访问的。而是使用地址池中其他IP进行访问,致使其在回包时候出口设备内部(3.至4.)客户端原本请求的25的流量,在回包的时候是由访问11的那个IP并不是由25来对客户进行答复,故在过程中回包IP和原客户访问IP对不上,使出口设备将这个包丢掉了。
解决方案