网关在转内网ip包时,会将ip包的src addr改成自己的外网ip addr.
比如
网关内网ip段为192.168.16.x,内网下有192.168.16.100;192.168.16.101 2台主机,分别简称N100,N101。
网关外网地址是192.168.1.2,外网有主机192.168.1.22,简称W22
比如 N100 ping W22, 发送端iphdr的src addr为192.168.16.100,dst addr为192.168.1.22
W22接收端收到的iphdr的src addr为192.168.1.2,被网关更改过了。W22的icmp reply也是发给192.168.1.2的,由网关再转去对应的内网。
那如果有2台内网主机同时ping呢?对W22接收端的src都是192.168.1.2,网关设备如何判断转给哪个内网呢?是依靠icmp的id吗?
如果是依靠ip的payload内容来判断的话,是不是自定义的ip protocol的packet就无法做到穿透网关了?
比较罗嗦,希望大家能看完,但我感觉写的很清楚了额。谢谢各位
比如
网关内网ip段为192.168.16.x,内网下有192.168.16.100;192.168.16.101 2台主机,分别简称N100,N101。
网关外网地址是192.168.1.2,外网有主机192.168.1.22,简称W22
比如 N100 ping W22, 发送端iphdr的src addr为192.168.16.100,dst addr为192.168.1.22
W22接收端收到的iphdr的src addr为192.168.1.2,被网关更改过了。W22的icmp reply也是发给192.168.1.2的,由网关再转去对应的内网。
那如果有2台内网主机同时ping呢?对W22接收端的src都是192.168.1.2,网关设备如何判断转给哪个内网呢?是依靠icmp的id吗?
如果是依靠ip的payload内容来判断的话,是不是自定义的ip protocol的packet就无法做到穿透网关了?
比较罗嗦,希望大家能看完,但我感觉写的很清楚了额。谢谢各位