Linux/Windows マシン間の UDP 通信に問題があります。中継サーバーを使用して、UDP を介した単純な P2P 通信プロトコルを実装しました。UDPホールパンチングを使用して、データ転送におけるサーバーの役割を排除します. ピアとサーバー間のデータ転送は TCP で行われ、データはピア間で UDP で送信されます。
両側で Linux マシンを使用すると、すべて正常に動作します。しかし、Windows を使用すると、プログラムはサーバーとの TCP 接続の確立を拒否します。ファイアウォールとアンチウイルス保護の両方をオフにして、もう一度試しました。その後、ピアとサーバー間の接続は正常に確立されましたが、UDP パケットはピア間で送信されませんでした。
WindowsでプログラムをコンパイルするためにCygwinを使用しています。ソースコードはプレーンな C で、(従来のソケット。特別なものはありません)
これはプロトコルまたはファイアウォールに関連するものですか? どうすれば確認できますか?