我有这个客户端,它使用 SYN 数据包启动 3 次握手,但没有 SYN ACK 响应。我们发现这是因为客户端没有用 0 或 F 填充 TCP 标头的末尾,而是使用其他值(我们使用数据包生成器软件来确认这一点)。服务器是Windows XP 32bits version 2002 Service Pack 3。我在Windows 7上试过,没有出现问题。有没有人听说过这种类型的问题?可能是因为服务器在 Windows XP 上运行?我试过简化网络链接(本地链接),我试过让服务器在安全模式下运行,结果也一样。客户端的供应商表示,他们已经验证它可以在他们的终端上与 Windows XP 服务器一起使用。
用零填充是我所知道的唯一有效的 TCP 标头填充。(与 F 无关。参见 1981 年的 RFC 793!)这种方式已经存在很长时间了。Windows XP 也这样做了。您的 Windows XP 副本不会执行此操作(我能想到的)的唯一原因是您的 NIC 驱动程序。确保您使用的是最好的网卡驱动程序。