윈도우를 사용을 하면서 굉장히 다양한 프로그램을 설치 하고 사용을 하게 됩니다. 이런 여러가지 프로그램들중에서는 내가 사용을 하고 있지 않는 동안에도 외부 인터넷에 연결이 되어서 데이터 전송이 되는 프로그램들이 있을수도 있습니다. 그래서 이번 포스팅에서는 윈도우에서 열려 있는 TCP 포트와 어떤 프로그램이 열고 있는지 확인하는 방법에 대해서 알아 보도록 할께요.
CMD 명령프롬프트창을 이용해 확인 가능
별도의 프로그램을 설치 하지 않고도 명령프롬프트 (CMD) 에서 현재 열려 있는 TCP 포트및 프로그램을 확인을 할수가 있습니다. 일단, 이를 위해서는 CMD 창을 열어 주셔야 하는데요. 반듯이 꼭 관리자 권한으로 열어 주셔야지만 됩니다.
관리자 권한으로 실행을 눌러서 CMD 창을 열어 주셨다면 이제 “netstat” 라는 명령으로 어떤 TCP 포트가 열려 있는지 확인이 가능합니다. 몇가지 옵션이 있지만 필요한 옵션만 사용해서 확인을 해보도록 할께요.
netstat -ab
위 명령을 입력을 하시면 아래 캡쳐 이미지처럼 리스트 형태로 표시가 됩니다. 여기에서 몇가지 알고 있어야 하는것들이 있는데요.
대괄호에 어떤 프로그램이 사용하고 있는지 프로그램 이름이 표시가 됩니다. 그리고 상태에는 LISTENING 혹은 ESTABLISHED 가 표시가 됩니다. LISTENING 은 해당 프로그램이 외부에서 접속을 할수 있도록 현재 PORT 를 OPEN 해놓은 거라고 보시면 됩니다.
ESTABLISHED 의 경우에는 현재 외부와 해당 프로그램이 열어 놓은 PORT 로 연결이 되어 있어서 통신이 되고 있는 상태라고 보시면 됩니다. 이렇게 해서 어떤 프로그램이 TCP PORT 를 열어 놓았는지와, 통신을 하고 있는지 확인이 가능합니다.
간혹, 프로그램이름이 표시가 되지 않는 경우가 있는데요. 그럴때에는 아래와같이 PID (Process ID) 로 확인이 가능합니다.
netstat -aon
이렇게 명령어를 입력을 해주시면 아래에 보시는 것처럼 PID 를 확인이 가능하니다. PID 가 어떤 프로그램인지를 확인하기 위해서는 작업관리자를 여신후에 확인을 해주시면 됩니다.
작업관리자에서 PID 가 기본으로 표시가 되지 않을수도 있습니다. 아래 보시는것처럼 우클릭을 하셔서 컬럼에 PID 를 추가해서 보시면 됩니다.
이렇게 해서 현재 내 PC 에서 외부로 연동이 되어 통신이 되고 있는 프로그램이 어떤게 있는지 확인을 할수가 있습니다. 나도 모르는 프로그램이 연결이 되어 있다면 한번 확인을 하시고 삭제를 해보시는것도 좋을거 같습니다.
이 방법 이외에도 별도의 프로그램을 설치해서 GUI 로 조금더 편하게 보는 방법도 있지만 그렇게 어렵지 않기 때문에 이 방법으로 그냥 확인하셔도 괜찮을거 같습니다. 도움이 되셨길 바랄께요