请教一下,主机1和主机2的IP地址相同,主机1去ping服务器,当 ICMP 报文到达服务器后,服务器应该是根据主机1的IP地址寻找回复路径的,这个回复路径是怎么找的啊,不会找错从而回复到主机2去吗
ip地址相同按理说是不能ping通的,除非你这里有特殊的地址转译。
原则上路径是由路由协议决定的,各种路由协议有很多的选路原则,决定最终路线的变量非常多。
主机1 主机2, 路由器1,路由器3的IP都是局域网IP,它们的IP不会出现在公网上,路由2 和路由4应该是NAT型的路由,它们的内网的设备出去的数据的源IP都会被转换成这两个路由的IP,服务器收到的来自主机1的ping的IP是路由器2的,来自主机2的ping的IP是路由器4的,服务器不存在任何选择困难。路由器2和路由器4会把这个ping再转发各自内网的主机,转发规则可以参考NAT对ICMP包的处理方式。