[Linux] 특정 포트를 사용하고 있는 프로세스 확인
2022. 11. 25. 15:52ㆍLinux
sudo netstat -anp | grep LISTEN | grep :포트번호
netstat은 네트워크 상태를 모니터하기 위한 명령이다.
이 명령을 이용하면 현재 어떤 프로세스가 어떤 포트를 사용하고 있는지 알 수 있다.
예를들어 80번 포트를 쓰고 있는 프로세스가 누구인지 알아보려면 다음과 같이 명령을 실행하면 된다.
option :
-l (listen) : 연결 가능한 상태
-n (number port) : 포트 넘버
-t (tcp) : tcp
-u (udp) : udp
-p : 프로그램 이름 / PID
-a : 모두
-i : 이더넷 카드별 정상/에러/드랍 송수신 패킷 수 확인
-r : 라우팅 테이블
-s : 네트워크 통계
자주 사용 하는 옵션
netstat -nap : 연결을 기다리는 목록과 프로그램을 보여준다
netstat -an | grep 포트번호 : 특정 포트가 사용 중에 있는지 확인
netstat -nlpt : TCP listening 상태의 포트와 프로그램을 보여준다
State
|
description
|
CLOSED
|
완전히 연결이 종료된 상태
|
CLOSING
|
흔하지 않으나 주로 확인 메시지가 전송 도중 유실된 상태
|
CLOSE_WAIT
|
TCP 연결이 상위 응용프로그램 레벨로부터 연결 종료를 기다리는 상태
|
ESTABLISHED
|
서버와 클라이언트 간에 세션 연결이 성립되어 통신이 이루어지고 있는 상태
(클라이언트가 서버의 SYN을 받아서 세션이 연결된 상태) |
FIN_WAIT1
|
클라이언트가 서버에게 연결을 끊고자 요청하는 상태(FIN을 보낸 상태)
|
FIN_WAIT2
|
서버가 클라이언트로부터 연결 종료 응답을 기다리는 상태
(서버가 클라이언트로부터 최초로 FIN을 받은 후, 클라이언트에게 ACK를 주었을 때 |
LAST_ACK
|
호스트가 원격지 호스트의 연결 종료 요구 승인을 기다리는 상태
(서버가 클라이언트에게 FIN을 보냈을 때의 상태) |
LISTEN
|
서버의 데몬이 떠 있어서 클라이언트의 접속 요청을 기다리고 있는 상태
|
SYN_SENT
|
클라이언트가 서버에게 연결을 요청한 상태
|
SYN_RECEIVED
|
서버가 클라이언트로부터 접속 요구(SYN)을 받아 클라이언트에게 응답(SYN/ACK)하였지만,
아직 클라이언트에게 확인 메시지(ACK)는 받지 못한 상태 |
TIME_WAIT
|
연결은 종결되었지만 당분간 소켓을 열어 놓은 상태, 약 1분 정도이며 시간이 지나면 사라짐
|
UNKNOWN
|
소켓의 상태를 알 수 없음
|
'Linux' 카테고리의 다른 글
[Linux] symlink error (0) | 2022.12.13 |
---|---|
[Linux] 볼륨 크기 조정 후 파티션 확장 (0) | 2022.12.01 |
PHP 버전 변경하기 (0) | 2022.09.27 |
[Linux] 리눅스 일정 기간이 지난 로그 자동 삭제하기 (0) | 2022.09.13 |