Как проверить открыт порт или нет в Windows 10 — вопрос, который возникает у пользователей при настройке серверов, сетевых приложений или устранении проблем с подключением. Открытые порты позволяют программам обмениваться данными с сетью, но их неправильная конфигурация может стать причиной уязвимостей или сбоев. В этой статье разберём проверенные способы диагностики: от встроенных инструментов системы до специализированных утилит.

В Windows 10 проверить статус порта можно несколькими методами: через командную строку CMD, утилиту netstat, PowerShell или сторонние программы вроде Nmap. Каждый способ имеет свои плюсы. Например, netstat покажет активные подключения, а Telnet — доступность удалённого порта. Начнём с самого простого.

Способ 1: Проверка через командную строку (CMD)

Самый быстрый способ — использовать netstat в командной строке. Эта утилита входит в состав и отображает все активные подключения, порты и связанные с ними процессы.

Откройте CMD от имени администратора: нажмите Win + X и выберите «Командная строка (администратор)» или «Windows PowerShell (администратор)». Введите команду:

netstat -ano | findstr :ПОРТ, где вместо ПОРТ укажите номер интересующего порта (например, 80 или 443). Параметр -ano показывает номер процесса (PID), который использует порт.

Если порт открыт и используется, вы увидите строку с его номером, состоянием (LISTENING — ожидает подключения, ESTABLISHED — установлено соединение) и PID. Если результатов нет — порт закрыт или не задействован.

💡

Чтобы увидеть все открытые порты, введите netstat -ano | findstr LISTENING. Это отфильтрует только порты в режиме ожидания подключений.

КомандаОписаниеПример результата
telnet 192.168.1.1 80Проверка порта 80 на устройстве с IP 192.168.1.1Пустой экран или сообщение «Подключение к…» — порт открыт. «Не удалось подключиться» — закрыт.
telnet google.com 443Проверка порта 443 на сервере google.comЕсли соединение установлено — порт доступен.
telnet localhost 3306Проверка локального порта 3306 (MySQL)Ответ зависит от работы сервиса на ПК.

Способ 2: Проверка доступности удалённого порта

Если нужно проверить, открыт ли порт на удалённом сервере или устройстве в сети, используйте Telnet. Этот протокол помогает установить соединение с указанным портом и определить его доступность.

Сначала активируйте Telnet в Windows (по умолчанию он отключён). Зайдите в «Панель управления» → «Программы и компоненты» → «Включение или отключение компонентов Windows» и поставьте галочку напротив «Клиент Telnet». После этого откройте CMD и введите:

telnet IP_АДРЕС ПОРТ, где IP_АДРЕС — адрес устройства (например, 192.168.1.1), а ПОРТ — номер порта (например, 3389 для RDP).

Если Telnet не подходит (например, на некоторых версиях он работает нестабильно), используйте Test-NetConnection в PowerShell. Запустите PowerShell и введите:

Test-NetConnection IP_АДРЕС -Port ПОРТ. Например: Test-NetConnection 192.168.1.1 -Port 22.

Способ 3: Использование для локальной диагностики

PowerShell предлагает больше возможностей для анализа портов, чем CMD. С его помощью можно получить детальную информацию о сетевых подключениях и состояниях портов.

Чтобы увидеть все открытые порты на локальном компьютере, выполните:

  • Get-NetTCPConnection -State Listen — покажет все порты в режиме прослушивания.
  • Get-NetTCPConnection -LocalPort ПОРТ — проверит конкретный порт (например, Get-NetTCPConnection -LocalPort 3389).
  • Get-Process -Id (Get-NetTCPConnection -LocalPort ПОРТ).OwningProcess — определит, какая программа использует порт.

Эти команды полезны, если нужно не только проверить статус порта, но ияснить, какое приложение его блокирует.

Способ 4: Проверка через сторонние утилиты

Если встроенные инструменты кажутся ограниченными, воспользуйтесь специализированными программами. Они часто предлагают более удобный интерфейс и расширенные функции.

  1. Nmap — мощный сканер портов для анализа сети. Скачайте и установите утилиту, затем выполните команду в CMD: nmap -p ПОРТ IP_АДРЕС. Например: nmap -p 80 192.168.1.1.
  2. PortQry — утилита от Microsoft, которая проверяет доступность портов на удалённых устройствах. Скачайте её с официального сайта и запустите: portqry -n IP_АДРЕС -e ПОРТ.
  3. TCPView — графическая утилита от Sysinternals, которая показывает все активные и подключения в реальном времени. Не требует командной строки.
⚠️ Внимание: Сканеры портов вроде Nmap могут быть заблокированы файрволом или антивирусом. Используйте их только для легитимных целей и на устройствах, к которым у вас есть разрешение на проверку.
Какой способ проверки портов вы испальзуете чаще всего?
Командная строка (netstat)
PowerShell
Telnet
Сторонние утилиты (Nmap, PortQry)

Способ 5: Проверка через файрвол Windows

Если порт открыт в системе, но подключение не работает, проблема может быть в файрволе. Windows Defender Firewall блокирует несанкционированный доступ к портам по умолчанию.

Чтобы проверить, разрешен ли порт в файрволе:

  1. Откройте «Панель управления» → «Брандмауэр Windows Defender».
  2. Перейдите в раздел «Дополнительные параметры» (справа в меню).
  3. В левой части выберите «Правила для входящих подключений» или «Правила для исходящих подключений».
  4. Просмотрите список правил или отфильтруйте его по номеру порта.
Тип правилаОписаниеПример
Входящее правилоРазрешает или блокирует входящие подключения к портуПорт 22 (SSH) — разрешить для локальной сети
Исходящее правилоКонтролирует исходящие подключения с компьютераПорт 80 (HTTP) — разрешить для всех программ
Пользовательское правилоСозданное вручную правило для конкретного порта или программыПорт 3389 (RDP) — разрешить для IP 192.168.1.100

Если нужный порт отсутствует в списке правил, его нужно добавить вручную. Для этого в «Дополнительных параметрах» файрвола выберите «Создать правило» и следуйте инструкциям мастера.

Способ 6: Проверка порта через маршрутизатор

Если вы проверяете порт для доступа из интернета (например, для веб-сервера или игрового сервера), убедитесь, что он открыт не только на компьютере, но и на маршрутизаторе.

Для этого:

  1. Войдите в панель управления роутером (обычно через 192.168.1.1 или 192.168.0.1 в браузере).
  2. Найдите раздел «Переадресация портов» (Port Forwarding) или «Виртуальный сервер».
  3. Убедитесь, что нужный порт привязан к локальному IP-адресу вашего компьютера.

Даже если порт открыт на ПК, без настроек на роутере он не будет доступен из внешней сети. Не забывайте проверять настройки маршрутизатора!

Способ 7: Практические советы по устранению проблем

Если порт не отвечает, проверьте следующие моменты:

Чек-лист по диагностике портов

Выполнено: 0 / 5

Также убедитесь, что.service или программа, которая должна использовать порт, действительно запущена. Например, если вы проверяете порт 80 для веб-сервера, убедитесь, что Apache или Nginx работают.

Для диагностики можно использовать команду net start в CMD, чтобы проверить запущенные службы.

Часто задаваемые вопросы

Почему порт открыт, но подключение не работает?

Причин несколько: файрвол блокирует соединение, порт не настроен на роутере для внешнего доступа, или служба, использующая порт, не запущена. Проверьте настройки файрвола, переадресацию портов на маршрутизаторе и статус службы.

Можно ли проверить порт на удалённом сервере без Telnet?

Да, используйте Test-NetConnection в PowerShell или сторонние утилиты вроде Nmap, PortQry. Также можно воспользоваться онлайн-сервисами для проверки портов, но они менее надёжны.

Как узнать, какая программа использует порт?

В CMD выполните netstat -ano | findstr :ПОРТ, чтобы узнать процесса. Затем в «Диспетчере задач» на вкладке «Подробности» найдите процесс с этим PID. В PowerShell используйте команду Get-Process -Id (Get-NetTCPConnection -LocalPort ПОРТ).OwningProcess.

Что такое «порт в состоянии LISTENING»?

Состояние LISTENING означает, что порт открыт и ожидает входящих подключений. Это нормальное состояние для серверных приложений (например, веб-серверов, или баз данных).