Today Keys : windows, powershell, test-netconnection, tcp, port, connectivity, firewall, troubleshooting
이번 포스팅은 Windows 환경에서 특정 TCP 포트가 실제로 열려 있는지(연결 가능한지) 빠르게 확인할 수 있는 PowerShell 명령인 Test-NetConnection 사용법을 간단히 정리합니다.
현업에서는 tracert로 경로를 확인해도, 정작 서비스 포트(예: 443, 1022, 3389)가 열려 있는지 여부는 별도로 확인해야 하는 경우가 많습니다.
이럴 때 Test-NetConnection는 “목적지 IP:PORT까지 TCP 연결이 되는지” 를 가장 빠르게 확인할 수 있는 방법 중 하나입니다.
Test-NetConnection란?
Windows PowerShell에서 제공하는 네트워크 진단 명령
지정한 대상(host/IP)과 포트로 TCP 연결 시도를 수행
방화벽 정책, 라우팅, 서비스 리스닝 여부 등을 실무 관점에서 빠르게 점검 가능
사용 법
1) 특정 목적지의 웹 연결(HTTPS) 확인 : Ex) google.com
Test-NetConnection www.google.com -Port 443
명령어를 실행하면, 아래와 같이, TCP Connect를 시도합니다.

그리고, 바로 아래와 같은 결과 값을 확인 할 수 있습니다.
여기서 확인 할 내용은 'TcpTestSucceeded'가 'True'인지, 'False' 인지를 확인하는 것입니다.
True인 경우, 해당 목적지까지 정상적으로 서비스 포트가 오픈되었다는 것이고,
False인 경우, 해당 목적지까지의 서비스 포트가 어딘가에서 차단되어 있거나 목적지에서 포트가 Listen 상태가 아니라는 것입니다.

2) 결과 값만 간단히 확인하려는 경우
아래와 같이 명령 시에, TcpTestSucceeded만 지정하여 간단하게 포트가 오픈되었는지만 확인할 수도 있습니다.
(Test-NetConnection zigispace.net -Port 443).TcpTestSucceeded
