这是发生了什么事:
客户端 – 发送同步
服务器 – 发送icmp(无法访问主机[我也尝试添加代码= 10])等待100毫秒发送syn-ack
客户端 – 发送确认以响应同步。
当发送不可达主机的icmp时,客户端应该重置tcp握手? 有什么办法让客户端通过发送某种ICMP来重置连接?
testing在直接连接的2 Ubunto机器上完成。 在wireshark中,我看到icmp在syn-ack之前被恢复,连接没有被重置。 客户端运行telnet(端口80)到服务器。 在服务器上运行apache。 我使用python scapy在synack之前模拟icmp。
谢谢
是的客户应该停止尝试连接…但是:
所有这一切,你描述的情况不仅比它应该是常见的,而且很常见。