如果SYN发送,另一个SYN被收到没有ACK通常只是ACK过线(特别是在你的情况下)的损失:
您可以查看这个帖子/答案。无论何时从A(客户端)到B(服务器)的路由很短,并且从服务器到客户端的数据包路径特别长,并且遍历网络可能无法保证在远远更远的距离上可靠的数据包传输时,这种情况非常普遍。如果你在线路上丢失了ACK,你会倾向于从客户端发现一条RST消息,并要求服务器重新启动。
另一种可能性是某种请求。通常在客户端将推送PSH,ACK信号与len:xx,其中x是请求长度的数字。服务器通常会回应一个ACK,通知客户它已收到请求并且服务器正在处理(这个ACK通常是空的),然后它会将PSH,ACK-len:xx数据包推送给客户端,让客户端知道它已经接受了它的请求,并且这个数据包中会有信息。
使用wireshark监控此信息(非恶意)通常会帮助传达您的情况,请务必学习(如果您还不知道)如何过滤数据包,否则您将有很多(通常)挖掘信息。
我也会尝试发送一个数据包到有问题的服务器,您可以追踪它是否被引导离开旁路。如果你的数据包通过循环跳转到目的地,它很可能会在返回时做同样的事情。 如果你希望你可以尝试使用tcpdump(linux)或tracert(windows)。
希望这会有所帮助!