首页 文章

TCP:服务器在从客户端接收[SYN]后立即发送[RST,ACK]

提问于
浏览
20

Host_A尝试通过TCP向Host_B发送一些数据 . Host_B正在侦听端口8181. Host_A和Host_B都是Linux机箱(Red Hat Enterprise) . TCP层使用Java NIO API实现 .

无论Host_A发送什么,Host_B都无法接收 . 使用WireShark在线上嗅探数据导致以下日志:

1)Host_A(33253)> Host_B(8181):[SYN] Seq = 0 Win = 5840 Len = 0 MSS = 1460 TSV = 513413781 TSER = 0 WS = 7 2)Host_B(8181)> Host_A(33253):[ RST,ACK] Seq = 1 Ack = 1 Win = 0 Len = 0

日志显示Host_A向Host_B发送[SYN]标志以 Build 连接 . 但是,不是[SYN,ACK],Host_B以[RST,ACK]响应,它重置/关闭连接 . 始终会观察到此行为 .

我想知道TCP侦听器在什么情况下发送[RST,ACK]以响应[SYN]?

1 回答

  • 31

    RST, ACK 表示端口已关闭 . 您确定Host_B正在侦听正确的IP /接口吗?

    还要检查防火墙是否有-j REJECT --reject-with tcp-reset

相关问题