Пробросил порты. TCP работает, UDP нет. В чём может быть причина?
Недавно столкнулся с ситуацией: пробросил порты на роутере, проверяю соединение - TCP работает без проблем, а UDP не проходит. При этом, если отправлять запросы по локальной сети (192.168.0.11), сервер корректно отвечает на UDP-запрос и фиксирует подключение. Но при обращении с внешнего статического IP UDP-пакеты не доходят до компьютера.
Что я пробовал:
1)С помощью nmap на другой машине проверил проброс TCP и UDP. TCP работает локально и глобально, UDP - только локально.
2)Через netstat убедился, что программа слушает TCP и UDP порты на всех сетевых интерфейсах.
3)Обратился в техническую поддержку Ростелекома. Инженер подтвердил, что блокировок с их стороны нет.
4)Проверил соединение с включённым DMZ - не помогло.
5)Проверил на втором компьютере с чистой Windows - ситуация та же.
6)Во время всего этого полностью выключал Фаерволл, чтоб не мешал.
Тестировал два порта: 25536 и 5800
Открывал их через TCP and UDP
Роутер ZTE ZXHK F670
По итогу после смены порта на 49180 ответы стали приходить, UDP приходит на сервер, но клиенту всё ещё не возвращается.
RFC 4787 при NAT не ваш случай ? По симптомам похоже.
Суть в смене (изменении при NAT) порта источника для UDP, и Ваш сервер не может ответить на UDP запрос. Wireshark в помощь, увидите за пару минут в чем проблема.
Если конечно я вас правильно понял:
Подключил Wireshark вот с такими условиями: udp.port == 25536 || tcp.port == 25536
TCP удалось получить/отправить.
UDP не отобразился совсем.
DMZ был включен.
AntyKan, ZTE ZXHK F670 поддерживает в отладке захват пакетов ? Скормите Wireshark сохраненный с роутера .cap файл, посмотрите, до роутера доходит пакет из вне.
Если Вы верно запустили Wireshark то видим, что UDP до сервера не долетает. Значит съел роутер или провайдер. Захват пакетов с роутера направит дальше разбор полетов (роутер или провайдер)
P.S. как вариант поднимите PPPoE (или что там у Вас) прямо на интересующем компе, и проверьте без всякого NAT/PORT FORWARDING
Daemon23RUS, Я посидел ещё один день за проблемой. По итогу после смены порта на 49180 ответы стали приходить, UDP приходит на сервер, но клиенту не возвращается.
а что собственно ТС пробовал запустить? если какое-нибудь IKE или OVPN то возможно эта [цензура] которое рассказывало про "деградирующие сервера ютуба" (пруф: https://www.company.rt.ru/press/news/d470885/) просто банит у себя это. (да, я знаю что IKE по моему с 500 порта вообще перевесить нельзя это просто как пример)