
두 개의 Windows 서버가 있습니다. 서버 A와 서버 B. 서버 A에 포트 P를 수신하도록 구성된 서비스가 있습니다. 서비스 실행 여부에 관계없이 Windows Server B에서 포트가 열려 있는지 확인하는 방법이 있습니까? 한 가지 방법은 텔넷입니다. 그러나 이는 서비스가 실행 중이고 포트에서 수신 대기하는 경우에만 작동합니다. 그런데 서비스 상태와 상관없이 포트가 열려 있는지 확인할 수 있는 방법이 있을까요? 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