服务器在端口192.168.0.192:51110
上运行,并监听传入的连接。客户端192.168.0.73:5001
大约每3秒尝试连接到服务器。如您所见,连接已建立。一段时间后,服务器关闭了连接,客户端也是如此。但是随后开始发生奇怪的事情。客户端试图与[SYN]连接,但是服务器关闭了一段时间,在此期间服务器以[ACK]响应。在某个时候它发生了变化-服务器再次在监听,但结果是相同的-客户端正在发送[SYN],从服务器收到[ACK],客户端再次响应[RST,ACK]。我的问题是:谁的错?在客户端无法连接服务器的时候,我能够通过netcat毫无问题地连接到服务器。
No. Time Source Destination Protocol Length Info
61209 418.027590 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61244 421.081906 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61259 421.538621 192.168.0.73 192.168.0.192 TCP 58 [TCP Port numbers reused] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61351 424.652490 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61368 424.653304 192.168.0.192 192.168.0.73 TCP 58 51110 → 5001 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0 MSS=1460
61372 424.790294 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [ACK] Seq=1 Ack=1 Win=5840 Len=0
61377 425.096394 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=1 Ack=1 Win=5840 Len=36
61378 425.096592 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=37 Win=65535 Len=0
61383 425.880701 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=37 Ack=1 Win=5840 Len=36
61384 425.880880 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=73 Win=65535 Len=0
61389 426.495133 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=73 Ack=1 Win=5840 Len=36
61390 426.495307 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=109 Win=65535 Len=0
61395 426.967946 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=109 Ack=1 Win=5840 Len=36
61396 426.968117 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=145 Win=65535 Len=0
61418 427.491273 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=145 Ack=1 Win=5840 Len=36
61419 427.491456 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=181 Win=65535 Len=0
61422 428.235976 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=181 Ack=1 Win=5840 Len=36
61423 428.236161 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=217 Win=65535 Len=0
61428 428.773906 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=217 Ack=1 Win=5840 Len=36
61429 428.774082 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=253 Win=65535 Len=0
61431 429.464978 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=253 Ack=1 Win=5840 Len=36
61433 429.465225 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=289 Win=65535 Len=0
61434 430.079135 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=289 Ack=1 Win=5840 Len=36
61435 430.079314 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=325 Win=65535 Len=0
61436 430.569109 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [FIN, ACK] Seq=1 Ack=325 Win=65535 Len=0
61437 430.581167 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=325 Ack=1 Win=5840 Len=36
61438 430.581284 192.168.0.192 192.168.0.73 TCP 54 [TCP Out-Of-Order] 51110 → 5001 [FIN, ACK] Seq=1 Ack=361 Win=65499 Len=0
61439 430.586241 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [ACK] Seq=361 Ack=2 Win=5839 Len=0
61440 430.591451 192.168.0.73 192.168.0.192 TCP 56 [TCP Dup ACK 61439#1] 5001 → 51110 [ACK] Seq=361 Ack=2 Win=5839 Len=0
61441 430.598894 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [FIN, ACK] Seq=361 Ack=2 Win=5839 Len=0
61442 430.598963 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=2 Ack=362 Win=65498 Len=0
61443 430.628086 192.168.0.73 192.168.0.192 TCP 58 [TCP Port numbers reused] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61444 430.628144 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=4294955058 Win=65498 Len=0
61445 430.644078 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=1 Win=5840 Len=0
61446 431.115920 192.168.0.192 192.168.0.73 TCP 54 [TCP ZeroWindow] [TCP Keep-Alive] 51110 → 5001 [ACK] Seq=0 Ack=4294955058 Win=0 Len=0
61447 431.132461 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=0 Win=5840 Len=0
61700 433.542616 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61701 433.542677 192.168.0.192 192.168.0.73 TCP 54 [TCP Window Update] 51110 → 5001 [ACK] Seq=1 Ack=4294955058 Win=65498 Len=0
61702 433.550008 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=1 Win=5840 Len=0
61713 436.735938 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61714 436.736047 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61444#1] 51110 → 5001 [ACK] Seq=1 Ack=4294955058 Win=65498 Len=0
61715 437.145340 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=1 Win=5840 Len=0
61736 439.544792 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61737 439.544910 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61444#2] 51110 → 5001 [ACK] Seq=1 Ack=4294955058 Win=65498 Len=0
61738 439.553303 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=1 Win=5840 Len=0
61747 442.545265 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61748 442.545381 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61444#3] 51110 → 5001 [ACK] Seq=1 Ack=4294955058 Win=65498 Len=0
61749 442.556383 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=1 Win=5840 Len=0
61756 445.543206 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61757 445.543319 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61444#4] 51110 → 5001 [ACK] Seq=1 Ack=4294955058 Win=65498 Len=0
61758 445.552223 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=1 Win=5840 Len=0
61760 448.716440 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61761 448.716554 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61444#5] 51110 → 5001 [ACK] Seq=1 Ack=4294955058 Win=65498 Len=0
61762 448.842308 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294955058 Ack=1 Win=5840 Len=0
61763 449.228447 192.168.0.73 192.168.0.192 TCP 58 [TCP Port numbers reused] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61765 449.228593 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1 Ack=4294946584 Win=65498 Len=0
61769 449.456396 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294946584 Ack=1 Win=5840 Len=0
61776 452.085388 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61777 452.085452 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61765#1] 51110 → 5001 [ACK] Seq=1 Ack=4294946584 Win=65498 Len=0
61778 452.219830 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294946584 Ack=1 Win=5840 Len=0
61788 455.067160 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61792 455.067403 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61765#2] 51110 → 5001 [ACK] Seq=1 Ack=4294946584 Win=65498 Len=0
61793 455.074064 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294946584 Ack=1 Win=5840 Len=0
61796 458.242349 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61797 458.242462 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61765#3] 51110 → 5001 [ACK] Seq=1 Ack=4294946584 Win=65498 Len=0
61798 458.361278 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294946584 Ack=1 Win=5840 Len=0
61811 461.107556 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61812 461.107726 192.168.0.192 192.168.0.73 TCP 54 [TCP Dup ACK 61765#4] 51110 → 5001 [ACK] Seq=1 Ack=4294946584 Win=65498 Len=0
61815 461.230727 192.168.0.73 192.168.0.192 TCP 56 5001 → 51110 [RST, ACK] Seq=4294946584 Ack=1 Win=5840 Len=0
61822 464.175495 192.168.0.73 192.168.0.192 TCP 58 [TCP Retransmission] 5001 → 51110 [SYN] Seq=0 Win=5840 Len=0 MSS=1460
61823 464.175755 192.168.0.192 192.168.0.73 TCP 58 [TCP Previous segment not captured] [TCP Port numbers reused] 51110 → 5001 [SYN, ACK] Seq=1987352337 Ack=1 Win=65535 Len=0 MSS=1460
61824 464.355208 192.168.0.73 192.168.0.192 TCP 56 [TCP ACKed unseen segment] 5001 → 51110 [ACK] Seq=1 Ack=1987352338 Win=5840 Len=0
61825 464.502648 192.168.0.73 192.168.0.192 TCP 56 [TCP Dup ACK 61824#1] 5001 → 51110 [ACK] Seq=1 Ack=1987352338 Win=5840 Len=0
61826 464.682030 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=1 Ack=1987352338 Win=5840 Len=36
61827 464.682033 192.168.0.73 192.168.0.192 TCP 56 [TCP Dup ACK 61824#2] 5001 → 51110 [ACK] Seq=37 Ack=1987352338 Win=5840 Len=0
61828 464.682132 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1987352338 Ack=37 Win=65535 Len=0
61829 465.221480 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=37 Ack=1987352338 Win=5840 Len=36
61830 465.221560 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1987352338 Ack=73 Win=65535 Len=0
61837 465.920001 192.168.0.73 192.168.0.192 TCP 90 5001 → 51110 [PSH, ACK] Seq=73 Ack=1987352338 Win=5840 Len=36
61838 465.920176 192.168.0.192 192.168.0.73 TCP 54 51110 → 5001 [ACK] Seq=1987352338 Ack=109 Win=65535 Len=0
这对我来说很奇怪。关闭连接后,客户端将直接使用相同的源端口和目标端口。这不是客户端应该如何工作的方式,所以我猜测这是一些损坏的客户端。
尽管服务器对这个奇怪的客户端的反应也很奇怪:它不仅应该对SYN进行ACK,而且应该对SYN + ACK进行握手以继续握手,或者在这种情况下,快速重用同一端口可以更好地发送RST客户端放弃连接尝试。一个简单的ACK并没有什么意义。