Как проверить открыт ли порт на компьютере.
Иногда возникает необходимость проверить открыт ли порт на компьютере(слушает ли его какая-то служба). В этой статье я опишу как это можно сделать с компьютера с ОС Windows.
Как проверить порт на компьютере с помощью telnet.
Для проверки доступности порта используется утилита telnet. О том, как установить ее в Windows, написано в статье «Как установить telnet.».
Если же она уже установлена, можно приступать к проверке доступности порта(порт должна слушать какая-либо программа или служба).
Запускаем командную строку и вводим команду:
1 |
telnet <IP или FQDN> <port> |
где IP-address — адрес, FQDN — имя компьютера(сервера), на котором нужно проверить порт, port — проверяемый порт(если не указывать, проверяется порт 23(telnet по умолчанию)).
Если порт открыт и «слушается» в окне командной строки останется только мигающий курсор:
А если подключение будет неудачным, вылезет сообщение об ошибке:
Для получения краткой справки по команде, введите telnet /?
Для выхода из сессии(при удачном подключении) введите quit.
Как проверить порт на компьютере с помощью Powershell.
Для проверки порта на удаленном компьютере используется командлет Test-NetConnection. У него есть более короткий алиас tnc.
Для того, чтобы проверить доступность порта введите команду:
1 |
Test-NetConnection -ComputerName <IP/FQDN> -Port <Port> |
Наименование параметра -ComputerName можно не указывать, а сразу писать имя или IP-адрес компьютера, например:
1 |
Test-NetConnection 8.8.8.8 -Port 53 |
В случае успеха вывод команды будет примерно такой:
1 2 3 4 5 6 |
ComputerName : 8.8.8.8 RemoteAddress : 8.8.8.8 RemotePort : 53 InterfaceAlias : vEthernet (Switch1) SourceAddress : 192.168.1.100 TcpTestSucceeded : True |
а в случае неудачи — такой:
1 2 3 4 5 6 7 8 9 10 11 |
ПРЕДУПРЕЖДЕНИЕ: TCP connect to (8.8.8.8 : 44) failed ComputerName : 8.8.8.8 RemoteAddress : 8.8.8.8 RemotePort : 44 InterfaceAlias : vEthernet (Switch1) SourceAddress : 192.168.1.100 PingSucceeded : True PingReplyDetails (RTT) : 28 ms TcpTestSucceeded : False |
Для того, чтобы посмотреть открытые порты на локальном компьютере используйте командлет Get-NetTCPConnection.
Получить помощь по использованию команды можно так:
1 |
Get-Help Get-NetTCPConnection |