我的本地计算机上运行一个程序,该程序将数据打印到端口 50000。在本地计算机的终端中,我运行 nc 来连接到端口并打印该端口上的数据。但是,当在终端中使用 nc 建立连接时,我没有得到任何响应。我使用了wireshark、netstat、nmap 和tcpdump 试图找出无法建立此连接的原因。据我所知:
- 终端发送SYN包
- 终端不断重传SYN包
- SYN/ACK 数据包永远不会发送
- 任何接口上都没有丢包
- iptables 被告知接受所有数据包
我似乎无法弄清楚为什么 SYN/ACK 数据包永远不会发回。有任何想法吗?
答案1
我修好了它。看来是代码问题。我们将listen()积压大小设置为0,导致任何尝试的连接失败。数据包从未丢失,套接字只是无法接受任何尝试的连接。