윈도우에서 특정 프로그램의 네트워크 상태를 확인하기 위해 사용할 수 있는 몇 가지 명령어가 있습니다.
대표적으로 netstat 명령어가 많이 사용되며, tasklist와 findstr을 조합하여 특정 프로그램에 대한 정보를 확인할 수 있습니다.
netstat:
네트워크 연결 상태를 확인할 수 있는 기본 명령어입니다.
특정 프로그램의 네트워크 연결을 확인하려면 -b 옵션을 사용하여 실행 중인 각 연결의 실행 파일을 표시할 수 있습니다. 이 명령은 관리자 권한으로 실행해야 합니다.
netstat -anob
tasklist:
현재 실행 중인 프로세스 목록을 확인할 수 있습니다.
특정 프로그램의 PID(Process ID)를 찾을 때 유용합니다.
tasklist | findstr [프로그램 이름]
netstat과 findstr 조합:
특정 프로그램의 네트워크 연결 상태를 PID를 통해 필터링할 수 있습니다.
먼저 프로그램의 PID를 찾습니다:
tasklist | findstr [프로그램 이름]
그런 다음 해당 PID로 네트워크 상태를 필터링합니다:
netstat -ano | findstr [PID]
예를 들어, 특정 프로그램(예: redis-server.exe)의 네트워크 상태를 확인하려면 다음과 같은 단계를 따릅니다:
redis-server.exe의 PID를 찾습니다:
tasklist | findstr redis-server.exe
찾은 PID를 사용하여 네트워크 상태를 확인합니다(예를 들어, PID가 1234라면):
netstat -ano | findstr 1234
이 명령어들을 통해 특정 프로그램의 네트워크 연결 상태를 쉽게 확인할 수 있습니다.
ex)
예로써 개발되어진 프로그램은 다음의 네트웍 통신을 할수 있다.
mdiwebrowser.exe
1. 21111 포트로 정보분배 데이타를 수신한다.
2. 6379 포트로 REDIS서버에 송수신을 한다.
3. 8080 포트로 HTTP Request & Response를 한다.
B210145_BK@DESKTOP-QNNUCER MINGW64 ~ $ tasklist | findstr mdiweb mdiwebrowser.exe 42720 Console 3 52,844 K B210145_BK@DESKTOP-QNNUCER MINGW64 ~ $ netstat -ano | findstr 42720 TCP 127.0.0.1:21111 0.0.0.0:0 LISTENING 42720 TCP 127.0.0.1:64279 127.0.0.1:6379 ESTABLISHED 42720 TCP 127.0.0.1:64285 127.0.0.1:6379 ESTABLISHED 42720 B210145_BK@DESKTOP-QNNUCER MINGW64 ~ $ |
8080포트가 나오지 않는 이유는?