netstat: 네트워크 상태 모니터링

현재 시스템에 연결된 네트워크 상태, 라우팅 테이블, 인터페이스 상태 등을 볼 수 있습니다.

2개의 영역으로 나누어져 보여집니다.

  • [Active Internet connections] : TCP, UDP, raw로 연결된 목록만 보여집니다.
  • [Active UNIX domain sockets] : 도메인 소켓으로 연결된 목록만 보여집니다.

 

옵션은 아래와 같습니다.

  • [-n] : 호스트명, 포트명을 lookup하지 않고(도메인으로 보이지 않고) IP, Port번호를 보여줍니다.
  • [-a] : 모든 네트워크상태를 보여줍니다.
  • [-t] : TCP 프로토콜만 보여줍니다.
  • [-u] : UDP 프로토콜만 보여줍니다.
  • [-p] : 해당 포트를 사용하는 프로그램과 프로세스ID(PID)를 보여줍니다.
  • [-r] : 라우팅 테이블 출력
  • [-s] : 프로토콜 별(IP, ICMP, TCP, UDP 등)로 통계를 보여줍니다.
  • [-c] : 연속적으로 상태를 보여줍니다.
  • [-l] : 대기중인 소켓 목록을 보여줍니다.

 

State는 아래와 같이 표현됩니다.

  • [공백] : 연결되어 있지 않음
  • [FREE] : socket은 존재하지만 할당되어 있지 않다.
  • [LISTENING] : 연결요청에 대한 응답준비가 되어 있는 상태
  • [CONNECTING] : 연결이 막 이루어진 상태
  • [DISCONNECTING] : 연결해제 되고 있는 상태
  • [UNKNOWN] : 알 수 없는 연결, 알려지지 않은 연결 상태
  • [LISTEN] : 연결 가능하도록 daemon이 떠있으며 연결이 가능한 상태
  • [SYS-SENT] : 연결을 요청한 상태
  • [SYN_RECEIVED] : 연결요구에 응답 후 확인 메시지 대기중인 상태
  • [ESTABLISHED] : 연결이 완료된 상태
  • [FIN-WAIT1] : 소켓이 닫히고 연결이 종료되고 있는 상태
  • [FIN-WAIT2] : 로컬이 원격으로부터 연결 종료 요구를 기다리는 상태
  • [CLOSE-WAIT] : 종료 대기 중
  • [CLOSING] : 전송된 메세지가 유실되었음
  • [TIME-WAIT] : 연결종료 후 한동안 유지되어 있음
  • [CLOSED] : 연결이 완전히 종료

 

옵션에 따라 다른 정보를 확인 할 수 있습니다. 유용하게 쓰이는 옵션들은 알아 두어야 합니다.

  • [$ netstat -r] : 서버의 라우팅 테이블 출력
  • [$ netstat -na --ip] : tcp/udp의 세션 목록 표시
  • [$ netstat -na | grep ESTABLISHED | wc -l] : 활성화된 세션 수 확인
  • [$ netstat -nap | grep :80 | grep ESTABLISHED | wc -l] : 80포트 동시 접속자수
  • [$ netstat -nltp] : LISTEN 중인 포트 정보 표시

출처 : https://www.whatap.io/ko/blog/10/

+ Recent posts