Что значит «порт открыт»
Слово «открыт» описывает сразу несколько ситуаций, и путаница здесь приводит к долгому поиску несуществующих неисправностей. Порт может быть открыт на уровне программы: служба запущена и слушает соединения. Он может быть разрешён в брандмауэре устройства. Он может быть проброшен на роутере. И, наконец, он может быть доступен из интернета, если у провайдера белый адрес.
Чтобы выяснить, где именно обрыв, проверьте каждое звено цепочки по порядку, начиная с самого локального.
Проверка на самом устройстве
Сначала убедитесь, что служба действительно слушает порт. В Windows это показывает команда просмотра сетевых соединений, в Linux и macOS есть аналогичные утилиты для списка слушающих портов. Найдите в списке нужный порт и состояние «слушает». Если его нет, дело в самой службе: она не запущена или настроена на другой порт.
Затем проверьте подключение с того же компьютера к самому себе: соединитесь с локальным адресом и портом с помощью telnet-клиента или сетевой утилиты. Успешное соединение означает, что служба отвечает.
Проверка из локальной сети
Теперь попробуйте подключиться с другого устройства в той же сети, указав локальный адрес компьютера. Если соединения нет, вероятная причина в брандмауэре: правило для входящих соединений на этот порт не создано или ограничено профилем сети. Проверьте профиль подключения и правила защитника.
Если внутри сети всё работает, значит служба и брандмауэр в порядке, и нужно переходить к внешней части цепочки.
Пример: принтер не виден с ноутбука. Проверьте адрес принтера, потом порт печати по сети. Если порт отвечает с другого компьютера, но не с вашего, причина в вашем брандмауэре или в разных сетях, например у ноутбука включён профиль публичной сети с более строгими правилами. Смена профиля на частный часто решает вопрос, если вы доверяете сети.
Проверка из интернета
Внешнюю доступность проверяют из другой сети: удобнее всего с телефона через мобильный интернет или через внешний сервис проверки портов, который сам обращается к вашему адресу. Для этого нужно знать внешний адрес роутера и убедиться, что он публичный, а не общий адрес оператора.
Результат читайте так. Порт открыт — соединение принято. Порт закрыт — устройство ответило отказом, то есть до вас дошли, но служба не слушает. Порт фильтруется или нет ответа — пакеты отбрасываются по дороге: брандмауэр, отсутствие проброса или ограничения провайдера.
Разбор типичных ситуаций
Открыт локально, но закрыт снаружи: проверьте проброс на роутере, адрес устройства, двойной NAT и белый адрес. Открыт снаружи, но сервис не отвечает: смотрите на настройки самой службы и её журналы. Проверка из домашней сети по внешнему адресу выдаёт ошибку, хотя из мобильной сети всё работает: это особенность обработки запросов роутером, а не неисправность.
Помните и о безопасности: закройте проверенный порт, если он больше не нужен. Открытый порт с забытой службой — частая причина проблем.
Инструменты для проверки
Для проверки достаточно встроенных средств. В Windows есть команда просмотра соединений, показывающая слушающие порты и владельцев процессов, а также PowerShell-командлет проверки соединения с портом. В Linux и macOS доступны утилиты для списка сокетов и простые сетевые инструменты для попытки подключения к порту.
Если нужна проверка сразу нескольких портов, используйте сканер, но только для своих устройств и своей сети: сканирование чужих узлов недопустимо и может нарушать правила сети. Результаты записывайте: что проверялось, откуда и когда. Тогда при повторной проверке вы сможете сравнить состояние и понять, что изменилось после правок на роутере или в брандмауэре.