Server

[Linux] tcpdump 명령어 정리

바둑이 아저씨 2025. 6. 13. 11:20

tcpdump logo - tcpdump.org

tcpdump는 리눅스/유닉스 시스템에서 네트워크 트래픽을 실시간으로 캡처하고 분석할 수 있는 강력한 도구입니다.

시스템 엔지니어, 보안 담당자, 네트워크 관리자라면 꼭 알아두어야 할 필수 명령어입니다.

이 글에서는 tcpdump의 자주 사용하는 명령어와 실전 예시를 정리합니다.


기본 사용법

tcpdump -i <인터페이스명>

#예시 
# eth0의 모든 트래픽을 캡처합니다.
tcpdump -i eth0

# eno1의 모든 트래픽을 캡처합니다.
tcpdump -i eno1

 

참고 명령어 : 인터페이스 목록 확인

tcpdump -D

 

자주 사용하는 옵션 정리

 

옵션 설명
-i <인터페이스> 캡처할 네트워크 인터페이스 지정 (lo, eth0, ens33 등)
-n 호스트명, 포트명을 숫자로 표시 (DNS 조회 방지)
-nn IP와 포트 모두 숫자로 표시
-v, -vv, -vvv 출력 상세도 증가
-c <패킷 수> 캡처할 패킷 개수 지정
-w <파일명> 캡처한 데이터를 파일로 저장
-r <파일명> 저장한 캡처 파일 읽기
-s 0 패킷 전체 캡처 (기본은 일부만 캡처)


실전 예제

1. 특정 포트 캡처

# 80번 포트를 사용하는 트래픽 (HTTP)만 캡처
tcpdump -i eth0 port 80

 

2. 특정 IP로 들어오는 패킷 캡처

# 192.168.0.10에서 오는 트래픽만 캡처
tcpdump -i eth0 src host 192.168.0.10

 

3. 특정 IP로 나가는 패킷 캡처

# 192.168.0.10으로 나가는 트래픽만 캡처
tcpdump -i eth0 dst host 192.168.0.10

 

4. 특정 IP와의 트래픽만 보기

# 송수신 포함
tcpdump -i eth0 host 192.168.0.10

 

5. TCP 패킷만 캡처

tcpdump -i eth0 tcp

 

6. UDP 패킷만 캡처

tcpdump -i eth0 udp

 

7. 특정 문자열 포함된 패킷 보기

# HTTP 요청(GET 등) 패킷 내용 출력
tcpdump -A -i eth0 | grep "GET"

 

8. 캡처한 내용을 파일로 저장
 - wireshark 등의 툴을 활용해서 확인 가능

tcpdump -i eth0 -w capture.pcap

 

9. 저장한 파일에서 분석

tcpdump -r capture.pcap

 

10. 로컬 루프백(lo) 인터페이스 보기 (예: localhost 통신)

tcpdump -i lo

 


tcpdump는 단순한 도구 같지만, 조합해서 사용하면 매우 강력한 네트워크 분석 도구가 됩니다. 

Wireshark와 함께 사용하면 더욱 강력한 분석이 가능합니다.

필요한 명령어를 북마크하거나 스크립트로 저장해 두면, 장애 대응이나 트래픽 분석 시 큰 도움이 됩니다.

감사합니다.