尝试在客户端/服务器之间 Build tcp连接 . 两台机器都是Mac,并且位于同一个LAN上 . 服务器的应用程序侦听端口12345.从服务器收到“SYN,ACK”后,我发送“ACK”,然后我的客户端自动发送“FIN,ACK”,然后是“RST,ACK” . 所以TCP Flow最终成为:

客户端发送SYN . SVR发送SYN,ACK . 客户端发送ACK . 客户端发送FIN,ACK . 客户端发送RST,ACK . SVR发送ACK . SVR发送ACK . 客户端发送RST . 客户端发送RST .

从阅读其他类似问题的帖子看起来可能会发生这种情况,因为我试图在用户级别手动创建握手,并且Unix内核(在系统级别运行)在用户级别上的任何内容之前都可以看到"SYN, ACK"响应并移动以关闭连接,无缘无故地将其视为开放状态 . 与此Linux用户遇到的类似问题:Unwanted RST TCP packet with Scapy

虽然iptables适用于Linux用户,我应该在Mac OS X中使用像pf这样的东西来阻止/丢弃FIN和RST消息吗?我的客户端运行10.9.5和我的服务器10.10.3 .

这是tcp通信服务器的流程图,10.0.100.5,客户端是10.0.100.4: