핵심 요약
- 가장 쉬운 방법: 시작 메뉴에서 'command' 입력 → 명령 프롬프트 앱 우클릭 → 관리자 권한으로 실행.
- netstat -ab 입력 후 Enter 키 누르기 → 목록에서 'LISTENING' 상태의 항목 확인.
- 명령 프롬프트 대신 서드파티 도구도 좋은 선택입니다. TCPView, Nirsoft CurrPorts, PortQry Command Line Port Scanner를 추천합니다.
이 글에서는 Windows 10에서 열린 포트를 확인하는 방법을 소개합니다. 특정 애플리케이션이 인터넷에 접속하지 못하거나, 반대로 어떤 앱의 통신을 차단하고 싶을 때 포트 상태를 확인하는 것이 필요합니다.
Netstat 명령어로 열린 포트 확인하기
Windows 10에서 포트가 열려 있는지 가장 간단하게 확인하는 방법은 Netstat 명령어를 사용하는 것입니다. 'Netstat'는 네트워크 통계(network statistics)의 줄임말로, 각 인터넷 프로토콜(TCP, FTP 등)이 현재 어떤 포트를 사용 중인지 보여줍니다.
이 명령어에는 다양한 매개변수가 있지만, 포트 개방 여부를 확인할 때 필요한 것은 두 가지입니다. (a)는 현재 활성화된 포트를 보여주고, (b)는 해당 포트를 사용 중인 프로세스의 이름을 알려줍니다.
시작 메뉴를 열고 'command'를 입력합니다. 명령 프롬프트(Command Prompt) 앱을 마우스 오른쪽 버튼으로 클릭한 뒤 관리자 권한으로 실행을 선택합니다.

netstat -ab를 입력하고 Enter 키를 누릅니다. 현재 네트워크 연결 상태에 따라 긴 결과 목록이 표시되며, 실행 중인 프로세스 목록도 함께 나타납니다. 열린 포트 번호는 왼쪽에 있는 로컬 IP 주소의 마지막 콜론(:) 뒤에 위치합니다.

목록에서 상태가 'LISTENING'으로 표시된 항목을 찾습니다. 이것들이 현재 열려 있는 포트를 통해 통신 중인 프로세스들입니다.

특정 포트를 사용 중인 프로그램의 이름을 알고 싶다면 netstat -aon을 입력하고 Enter 키를 누릅니다. 이 명령은 앱이 사용하는 프로토콜, 로컬 및 원격 IP 주소, 그리고 가장 중요한 해당 포트를 사용 중인 애플리케이션의 PID(맨 오른쪽 숫자)까지 보여줍니다. 이때도 LISTENING 상태를 확인해야 합니다.

해당 PID와 연결된 애플리케이션을 찾으려면 작업 표시줄을 마우스 오른쪽 버튼으로 클릭하고 작업 관리자를 선택합니다. 세부 정보 탭으로 이동한 후, 명령 프롬프트 화면에서 기록해 둔 PID를 PID 필드에서 찾으면 됩니다.

서드파티 앱으로 포트 확인하기
명령 프롬프트를 사용하지 않고 열린 포트를 확인하고 싶다면, 사용이 매우 쉬운 서드파티 앱을 활용할 수 있습니다.
TCPView
TCPView는 Microsoft Sysinternals에 포함된 유틸리티로, 실행 중인 모든 프로세스와 해당 프로세스가 연 포트 목록을 보여줍니다. 포트가 열리고 닫히는 과정과 패킷 전송 현황까지 실시간으로 확인할 수 있습니다.

Nirsoft CurrPorts
Nirsoft CurrPorts는 시스템에서 애플리케이션과 서비스가 현재 사용 중인 모든 포트를 볼 수 있는 또 다른 유틸리티입니다. 로컬 포트(Local Ports) 열만 확인하면 컴퓨터에서 활성화된 포트를 바로 알 수 있습니다.

이 목록에는 원격 측(인터넷상의 서버)에 연결된 포트 정보도 함께 표시됩니다.
PortQry Command Line Port Scanner
PortQry Command Line Port Scanner를 설치하면 컴퓨터의 열린 포트를 스캔하는 데 특화된 또 다른 명령줄 유틸리티를 사용할 수 있습니다. 설치 후에는 관리자 권한으로 명령 프롬프트를 엽니다. PortQry는 자동으로 C:\PortQryV2 디렉터리에 설치되므로, 명령 프롬프트에서 해당 디렉터리로 경로를 변경해야 합니다.

portqry.exe -local 명령을 입력하면 컴퓨터에서 열려 있는 모든 TCP 및 UDP 포트를 확인할 수 있습니다. NetStat 명령으로 볼 수 있는 모든 정보에 더해, 포트 매핑과 각 상태별 포트 개수까지 표시됩니다.
포트란 무엇일까?
컴퓨터에서 실행 중인 애플리케이션은 인터넷상 다른 곳에 있는 서버에 접속해 정보와 데이터를 주고받습니다. 이러한 애플리케이션과 서버는 IP 주소와 포트 번호를 기준으로 서로 통신하는 방식을 결정합니다.
IP 주소를 '거리 주소'라고 생각하고, 포트 번호를 '아파트 호수'라고 생각하면 이해하기 쉽습니다. 서버나 애플리케이션이 지정된 포트 번호가 아닌 다른 번호로 통신을 시도하면 연결되지 않습니다. 다른 포트는 모두 닫혀 있기 때문에 다른 문은 모두 '잠겨 있는' 셈입니다.