У меня здесь дилемма. У меня есть устройство, которое связывается с другим удаленным устройством, но между ними есть межсетевой экран. Это соединение UDP, поэтому утилиты TCP не работают, чтобы проверить, открыт ли определенный порт. Я знаю, что мы можем получить это от брандмауэра, но у меня нет доступа, поэтому я должен доказать, что порт не открыт.
Исходная система - это система Windows 7, а целевая система - это устройство под управлением Linux.
security
troubleshooting
udp
JoeliNNaBit
источник
источник
Ответы:
UDP, очевидно, является протоколом «посылай и забывай». Например, во время сканирования UDP NMap единственным способом окончательно доказать, что порт UDP открыт, является получение ответа от этого порта. Имейте в виду, что многие службы могут не отвечать на произвольные данные и требуют протокольных или специфичных для приложения запросов, чтобы гарантировать ответ. Однако некоторые коды ICMP могут гарантировать, что порт закрыт. RFC 792 и RFC 1122 дают нам хорошую информацию о том, что ожидать, когда порт закрыт.
Например, код 3 ICMP типа 3 «Порт назначения недоступен», практически гарантированно будет закрытым портом.
Полный список кодов можно найти здесь:
http://www.iana.org/assignments/icmp-parameters/icmp-parameters.xhtml
источник
Это быстрый рецепт:
1) Запустите анализатор пакетов:
2) Отправьте пакет UDP:
3) Если вы получили «ICMP-порт недоступен», этот UDP-порт закрыт:
4) В противном случае обычно либо порт открыт, либо что-то блокирует ICMP.
источник
"nc -uvz ip port"
не так точно, вы, вероятно, должны использовать"nmap -sU -p port ip"
, если результат показывает «open», то порт udp, вероятно, открыт, если он показывает «open | Filter», то, вероятно, он закрыт или фильтрован.источник