我在 Linux/Windows 机器之间的 UDP 通信有问题。我使用中继服务器在 UDP 上实现了一个简单的 P2P 通信协议。它使用UDP打孔来消除服务器在数据传输中的作用。对等点和服务器之间的数据传输通过 TCP 进行,而对等点之间通过 UDP 发送数据。
在双方都使用 Linux 机器时一切正常。但是使用 Windows,程序拒绝与服务器建立 TCP 连接。我关闭了防火墙和防病毒保护并再次尝试。然后对等点和服务器之间的连接成功建立,但对等点之间没有发送 UDP 数据包。
我正在使用 Cygwin 在 Windows 上编译程序。源代码是纯 C 语言(传统套接字。没什么特别的)
这与协议或防火墙有关吗?我该如何检查?