netstat
전송제어 프로토콜 라우팅 테이블, 수많은 네트워크 인터페이스, 네트워크 프로토콜 통계를 위한 네트워크 연결을 보여주는 명령 줄 도구 이다. -h 옵션으로 명령어 옵션 을 볼수 있다.
네트워크의 문제를 찾아내고 성능 측정으로서 네트워크상의 트래픽양을 결정하기 위해 사용한다.
netstat -nltp
- 옵션 (자주 사용하는)
- -l(listen): 연결 가능한 상태
- -n(number port) : 포트 넘버
- -t(tcp): tcp
- -u(udp) : udp
- -p(pid) :프로그램 이름 /PID
- -a : 모두
- -i : 이더넷 카드별 정상/에러/드랍 송수신 패킷 수 확인
- -r : 라우팅 테이블
- -s : 네트워크 동계
자주 사용 하는 옵션
- netstat -nap : 연결을 기다리는 목록과 프로그램을 보여준다
- netstat -an | grep 포트번호 : 특정 포트가 사용 중에 있는지 확인
- netstat -nlpt : TCP listening 상태의 포트와 프로그램을 보여준다
netstat 상태 값
State |
description |
CLOSED |
완전히 연결이 종료된 상태 |
CLOSING |
흔하지 않으나 주로 확인 메시지가 전송 도중 유실된 상태 |
CLOSE_WAIT |
TCP 연결이 상위 응용프로그램 레벨로부터 연결 종료를 기다리는 상태 |
ESTABLISHED |
서버와 클라이언트 간에 세션 연결이 성립되어 통신이 이루어지고 있는 상태 |
FIN_WAIT1 |
클라이언트가 서버에게 연결을 끊고자 요청하는 상태(FIN을 보낸 상태) |
FIN_WAIT2 |
서버가 클라이언트로부터 연결 종료 응답을 기다리는 상태 |
LAST_ACK |
호스트가 원격지 호스트의 연결 종료 요구 승인을 기다리는 상태 |
LISTEN |
서버의 데몬이 떠 있어서 클라이언트의 접속 요청을 기다리고 있는 상태 |
SYN_SENT |
클라이언트가 서버에게 연결을 요청한 상태 |
SYN_RECEIVED |
서버가 클라이언트로부터 접속 요구(SYN)을 받아 클라이언트에게 응답(SYN/ACK)하였지만, |
TIME_WAIT |
연결은 종결되었지만 당분간 소켓을 열어 놓은 상태, 약 1분 정도이며 시간이 지나면 사라짐 |
UNKNOWN |
소켓의 상태를 알 수 없음 |