netstat는 네트워크 상태를 확인하는 데 사용되는 리눅스 명령어입니다. 주로 네트워크 연결, 라우팅 테이블, 인터페이스 상태, 네트워크 프로토콜 통계 등을 보여줍니다. 서버 관리나 네트워크 문제를 해결할 때 매우 유용한 도구로, 네트워크 연결 상태를 실시간으로 모니터링할 수 있습니다. 하지만 최신 리눅스 배포판에서는 ss 명령어가 netstat의 대체 명령어로 사용되기도 합니다.
netstat 명령어의 기본 사용법
netstat [옵션]
옵션에 따라 다양한 네트워크 정보를 확인할 수 있으며, 자주 사용되는 옵션은 다음과 같습니다:
- -a: 모든 연결을 표시합니다. (TCP, UDP 포함)
- -t: TCP 연결만 표시합니다.
- -u: UDP 연결만 표시합니다.
- -l: 현재 수신 대기 중인 포트만 표시합니다.
- -n: 호스트 주소나 포트를 숫자로 표시합니다.
- -p: 연결된 프로그램의 PID와 프로세스 이름을 표시합니다.
netstat 사용 예시
1. 모든 네트워크 연결 확인하기
user@linux:~$ netstat -a
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 192.168.1.10:22 192.168.1.5:55432 ESTABLISHED
udp 0 0 0.0.0.0:68 0.0.0.0:*
이 명령어는 현재 시스템의 모든 네트워크 연결을 표시합니다. TCP, UDP 연결 상태를 볼 수 있으며, LISTEN, ESTABLISHED 등 각 연결의 상태도 확인할 수 있습니다.
2. TCP 연결만 확인하기
user@linux:~$ netstat -t
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.1.10:22 192.168.1.5:55432 ESTABLISHED
-t 옵션을 사용하면 TCP 연결만을 필터링하여 출력합니다. 이로 인해 불필요한 정보 없이 TCP 상태만 확인할 수 있습니다.
3. 수신 대기 중인 포트 확인하기
user@linux:~$ netstat -l
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
udp 0 0 0.0.0.0:68 0.0.0.0:*
-l 옵션을 사용하면 현재 수신 대기 중인 포트들을 확인할 수 있습니다. 서버가 어떤 포트를 통해 외부에서 연결을 수신하는지 확인할 때 유용합니다.
4. 연결된 프로그램 정보 확인하기
user@linux:~$ netstat -p
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 192.168.1.10:22 192.168.1.5:55432 ESTABLISHED 1345/sshd
-p 옵션을 추가하면 각 연결에 대해 프로세스 ID(PID)와 프로그램 이름을 확인할 수 있습니다. 특정 포트를 사용하는 프로세스를 추적할 때 유용합니다.
5. 숫자로 IP와 포트 확인하기
user@linux:~$ netstat -n
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.1.10:22 192.168.1.5:55432 ESTABLISHED
-n 옵션을 사용하면 호스트 이름 대신 IP 주소와 포트 번호를 숫자로 표시합니다. 이는 네트워크 문제를 해결하거나, 외부 연결을 추적할 때 더 직관적으로 정보를 확인할 수 있게 합니다.
netstat의 유용성 netstat 명령어는 서버가 네트워크 연결을 어떻게 처리하고 있는지 실시간으로 모니터링할 수 있습니다. 서버의 네트워크 성능을 개선하거나, 비정상적인 연결을 차단하고, 특정 포트를 통해 어떤 서비스가 실행되고 있는지 확인하는 등 다양한 네트워크 관리에 필수적인 도구입니다.
'Linux' 카테고리의 다른 글
[리눅스] rsync 명령어 완벽 가이드 사용법(동기화) (0) | 2024.10.12 |
---|---|
[리눅스] scp 명령어 완벽 가이드 사용법(파일 전송) (0) | 2024.10.12 |
[리눅스] traceroute 명령어 완벽 가이드 사용법(IP 도메인 추적) (1) | 2024.10.11 |
[리눅스] nslookup 명령어 완벽 가이드 사용법(DNS 조회) (5) | 2024.10.08 |
[리눅스] curl 명령어 완벽 가이드 사용법(데이터 전송) (1) | 2024.10.08 |
[리눅스] wget 명령어 완벽 가이드 사용법(웹 파일 다운로드) (0) | 2024.10.08 |
[리눅스] su 명령어 완벽 가이드 사용법(사용자 전환) (0) | 2024.10.07 |
[리눅스] whoami 명령어 완벽 가이드 사용법(로그인 사용자 확인) (0) | 2024.10.07 |