Server/Linux

[Linux] tcpdump 명령어

후드리챱챱 2024. 12. 7. 10:34
반응형

 

tcpdump 명령어

tcpdump -nni <인터페이스> port <포트번호> -w <파일경로>

 

[설명]

-n: 호스트 이름이나 포트 이름을 해석하지 않도록 하는 옵션입니다. 이 옵션을 사용하면 IP 주소와 포트 번호가 출력됩니다.
-i <인터페이스>: 캡처할 네트워크 인터페이스를 지정합니다. <인터페이스> 부분에 네트워크 카드 이름(예: eth0, wlan0, en0 등)을 넣어야 합니다.
port <포트번호>: 특정 포트 번호에 대한 패킷만 캡처하도록 필터링합니다.
-w <파일경로>: 캡처된 패킷을 지정한 <파일경로>에 저장합니다. 일반적으로 파일은 .pcap 확장자를 사용합니다.

 

예시 명령어

 

네트워크 인터페이스 eth0에서 포트 번호 80 (HTTP)으로 흐르는 패킷을 캡처하고, 캡처된 패킷을 capture.pcap이라는 파일에 저장하려면 아래와 같은 명령어를 사용합니다:

tcpdump -nni eth0 port 80 -w capture.pcap

 

tcpdump 명령어 실행시 파일의 사이즈가 빠르게 증가할 수 있기 때문에 watch 명령어를 통해서 파일 사이즈를 확인하는게 좋습니다. 

watch -n 1 "du -sh capture.pcap"

 

watch: 주어진 명령어를 주기적으로 실행하여 그 결과를 화면에 표시하는 명령어입니다.

 

-n 1: watch 명령어가 주어진 명령어를 1초 간격으로 실행하도록 지정하는 옵션입니다.

 

"du -sh capture.pcap": du는 디스크 사용량을 확인하는 명령어입니다.
-s: 요약 모드. 디렉토리 내의 파일이 아닌 총합만을 표시합니다.
-h: 사람이 읽기 좋은 형식(human-readable)으로 출력합니다. 예: KB, MB, GB 단위로 표시됩니다.
capture.pcap: 디스크 사용량을 확인할 파일입니다. 이 예에서는 capture.pcap 파일을 지정합니다.

 

참고사항

 

1. 일부 인터페이스에서 네트워크 트래픽을 캡처하려면 관리자 권한(root 또는 sudo)이 필요할 수 있습니다.

2. 인터페이스 이름(예: eth0 또는 wlan0)이 정확한지 확인해야 합니다. 사용 가능한 인터페이스 목록은 tcpdump -D 명령어로 확인할 수 있습니다.
3. -w 옵션을 사용하면 캡처된 패킷이 파일로 저장되며, 나중에 tcpdump -r 또는 Wireshark와 같은 도구를 사용하여 분석할 수 있습니다.

반응형