Network
[Network] netstat란? netstat 명령어/옵션 정리
yeit
2024. 1. 25. 20:08
728x90
netstat란?
- 네트워크 상태에 대한 정보 보여주는 명령어
- 현재 네트워크 상태, 연결, 라우팅 테이블 등 다양한 네트워크 관련 정보를 표시해준다.
옵션
- a 또는 --all : 모든 소켓(연결)을 표시
- -t 또는 --tcp : TCP 프로토콜 관련 정보만 표시
- -u 또는 --udp : UDP 프로토콜 관련 정보만 표시
- -n 또는 --numeric : 호스트명 대신 IP로 표시
- -p 또는 --program : 소켓과 연결된 프로세스의 정보를 표시
- -r 또는 --route : 라우팅 테이블 표시
- -l 또는 --listening : 대기 중인 연결만 표시
- -s 또는 --statistics : 프로토콜별 통계 정보를 표시
- -c 또는 --continuous : 지속적으로 업데이트되는 실시간 정보를 보여줌
netstat -a
- Proto : 프로토콜 (TCP, UDP 등)
- Recv-Q : TCP 소켓에서 수신 대기 중인 데이터의 큐
0이 아닌 경우, 소켓이 데이터를 수신하고 처리하지 못한 데이터가 큐에 대기 중이라는 것을 의미 - Send-Q : TCP 소켓에서 송신 대기 중인 데이터의 큐
0이 아닌 경우, 소켓이 보내야 할 데이터가 큐에 대기 중이라는 것을 의미 - Local Address : 로컬 주소 및 포트 번호
- Foreign Address : 원격(상대방) 주소 및 포트 번호
- State : 연결 상태
- LISTEN : 연결을 기다리고 있는 상태, 포트가 열려있음
- SYN_SENT (SYN 전송 중): 클라이언트가 서버에게 연결을 요청한 상태로, SYN 패킷을 보낸 상태
- SYN_RECEIVED (SYN 수신 중): 서버가 클라이언트의 연결 요청(SYN)을 받은 상태로, SYN-ACK 패킷을 보낸 상태
- ESTABLISHED : 연결 완료, 데이터를 주고받을 수 있는 상태
- FIN_WAIT_1 : 송신자가 연결을 종료했고, 상대편에게 확인을 기다리는 상태
- FIN_WAIT_2 : 수신자가 연결 종료를 확인한 상태
- CLOSE_WAIT : 상대방(원격 피어)이 연결 종료를 요청, 로컬 소켓은 해당 종료 확인을 위해 대기하고 있는 상태
- LAST_ACK : 로컬 소켓이 연결 종료를 요청하고 확인을 기다리는 상태
- TIME_WAIT : 연결은 종료되었으나 마지막 패킷이 소멸하기 전까지 대기 중인 상태
- CLOSED : 소켓이 완전히 종료되어 더 이상 데이터를 주고받을 수 없는 상태
- 참고) [Network] 3-way handshake, 4-way handshake 정리 (tistory.com)
netstat -na
netstat -a와는 다르게 -n옵션을 추가하면 호스트명을 IP로 표시해준다.
netstat -nltp
현재 시스템에서 수신 대기 중인 TCP 소켓에 대한 정보를 보여준다.
728x90