Как проверить открытые порты в Windows: диагностика сети
Чтобы понять, как проверить открытые порты в Windows, используйте netstat -ano для просмотра активных соединений и PowerShell Test-NetConnection для проверки доступности удалённых TCP-портов.
Оглавление
Использование встроенной утилиты netstat
Это самый распространенный способ просмотра списка всех активных соединений и слушающих портов на локальном компьютере. Утилита входит в стандартный набор средств Windows и не требует установки дополнительного программного обеспечения.
- Откройте командную строку (cmd) и выполните команду
netstat -a, чтобы отобразить все подключения и порты в режиме прослушивания. - Для более детальной диагностики, включая отображение идентификаторов процессов (PID), использующих порты, рекомендуется команда
netstat -ano. - Утилита позволяет быстро определить, какие процессы используют конкретные порты и каков текущий статус соединений.
Проверка портов через PowerShell
Современный метод проверки доступности портов, который заменяет устаревший telnet и предоставляет подробную диагностическую информацию. Данный cmdlet поддерживает не только тестирование портов, но и ping-тесты, трассировку маршрута и диагностику выбора пути.
- Введите команду
Test-NetConnection -ComputerName [адрес] -Port [номер_порта]для проверки конкретного TCP-порта. - Также можно использовать сокращенный алиас
tnc <Server> -port <PortNumber>для быстрой проверки. - Результат проверки содержится в параметре
TcpTestSucceeded: значениеTrueозначает, что порт открыт и доступен.
Классический метод: утилита Telnet
Позволяет проверить возможность установления TCP-соединения с удаленным хостом по определенному порту.
- Запустите командную строку через Win+R, введите
telnet имя_сервера порти нажмите Enter. - Если экран очищается или появляется мигающий курсор, соединение установлено и порт открыт; при ошибке соединение не удалось.
Компонент Telnet может быть отключен в Windows по умолчанию, и его потребуется активировать через «Компоненты Windows».
Специализированные сканеры: PortQry, Advanced Port Scanner и Nmap
Для углубленной диагностики или массового сканирования сети используются дополнительные инструменты.
| Утилита | Назначение и особенности |
|---|---|
| PortQry | Официальная утилита командной строки от Microsoft для устранения неполадок TCP/IP. Проверяет состояние портов и отображает статусы: LISTENING, NOT LISTENING, FILTERED. |
| Advanced Port Scanner | Бесплатный инструмент для быстрого поиска всех открытых портов на компьютерах в локальной сети и определения работающих программ. |
| Nmap | Мощный кроссплатформенный сканер, позволяющий проводить детальное исследование сети и обнаруживать открытые порты из-под Windows. |
Частые ошибки
Запуск Telnet без предварительной активации
При попытке использовать классический метод диагностики пользователи часто сталкиваются с тем, что система не распознает команду telnet. Компонент Telnet может быть отключен в Windows по умолчанию, поэтому его необходимо предварительно активировать через панель «Компоненты Windows».
Игнорирование параметра TcpTestSucceeded в PowerShell
При проверке через Test-NetConnection пользователи иногда смотрят только на общий вывод команды. Однако точный результат проверки содержится именно в параметре TcpTestSucceeded: значение True означает, что порт открыт и доступен.
FAQ
Как узнать, какое приложение слушает конкретный порт?
Используйте команду netstat -ano в командной строке. Она отображает идентификаторы процессов (PID), что позволяет быстро определить, какие процессы используют конкретные порты.
Как быстро проверить один TCP-порт без установки сторонних программ?
В PowerShell введите команду Test-NetConnection -ComputerName [адрес] -Port [номер_порта] или её сокращенный алиас tnc <адрес> -port <номер_порта>. Это современный метод, который заменяет устаревший telnet.
Какие статусы портов показывает утилита PortQry? Официальная утилита командной строки от Microsoft PortQry позволяет проверять состояние портов и отображает статусы: LISTENING (слушает), NOT LISTENING (не слушает) и FILTERED (фильтруется).