Пробой UDP не работает в Windows, но Linux в порядке

У меня проблема с UDP-связью между компьютерами Linux/Windows. Я реализовал простой протокол связи P2P через UDP, используя сервер ретрансляции. Он использует дырочку UDP, чтобы исключить роль сервера в передаче данных. Передача данных между одноранговыми узлами и сервером осуществляется по TCP, в то время как данные передаются по UDP между одноранговыми узлами.

Все отлично работает при использовании машин Linux с обеих сторон. Но используя Windows, программа отказывается устанавливать TCP-соединение с сервером. Я отключил брандмауэр и антивирусную защиту и попытался снова. Затем соединение между узлом и сервером установилось успешно, но между узлами не было отправлено пакетов UDP.

Я использую Cygwin для компиляции программы на Windows. Исходный код простой C с (традиционные сокеты. Ничего особенного)

Это связано с протоколом или брандмауэром? Как я могу проверить?

0 ответов

Другие вопросы по тегам