
У меня есть два сервера Windows.. Сервер A и сервер B. На сервере A настроена служба для прослушивания порта P. Есть ли способ проверить, открыт ли порт на сервере Windows B независимо от того, запущена служба или нет. Один из способов — telnet... но это сработает только в том случае, если служба запущена и прослушивает порт. Но есть ли способ узнать, открыт ли порт независимо от состояния службы? В Linux есть команда "nc" для достижения того же самого. Есть ли что-то подобное в Windows?
Спасибо.!
решение1
Для запроса открытых портов можно использовать netstat.exe.
netstat.exe:
C:\Users\user>netstat.exe /?
Displays protocol statistics and current TCP/IP network connections.
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-x] [-t] [interval]
-a Displays all connections and listening ports.
пример netstat -a:
C:\Users\user>netstat -a
Active Connections
Proto Local Address Foreign Address State
TCP 0.0.0.0:135 10.10.11.20:0 LISTENING
TCP 0.0.0.0:445 10.10.11.20:0 LISTENING
TCP 0.0.0.0:1433 10.10.11.20:0 LISTENING
TCP 0.0.0.0:1801 10.10.11.20:0 LISTENING
TCP 0.0.0.0:2103 10.10.11.20:0 LISTENING
Для удаленного выполнения netstat.exe можно использовать инструмент psexec (доступный бесплатно с сайтаздесь)
пример:
C:\Users\user>psexec \\10.10.21.145 netstat -a
PsExec v2.11 - Execute processes remotely
Copyright (C) 2001-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
Active Connections
Proto Local Address Foreign Address State
TCP 0.0.0.0:135 10.10.21.145:0 LISTENING
TCP 0.0.0.0:445 10.10.21.145:0 LISTENING
TCP 0.0.0.0:2701 10.10.21.145:0 LISTENING
TCP 0.0.0.0:3389 10.10.21.145:0 LISTENING