[Network] tcpdump를 이용해 패킷들을 덤프(dump)하고 와이어샤크로 열어보기

tcpdump 명령어를 이용해서 패킷들을 덤프(dump)하고 와이어샤크로 열어보자


환경

  • Linux 기반 시스템
  • Bash shell(/bin/bash)
  • tcpdump 명령어
  • Wireshark


tcpdump 명령어

tcpdump 명령어란?

tcpdump [ -AdDefIKlLnNOpqRStuUvxX ] [ -B buffer_size ] [ -c count ]

[ -C file_size ] [ -G rotate_seconds ] [ -F file ]
[ -i interface ] [ -m module ] [ -M secret ]
[ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]
[ -W filecount ]
[ -E spi@ipaddr algo:secret,... ]
[ -y datalinktype ] [ -z postrotate-command ] [ -Z user ] [ expression ]
  • tcpdump: 네트워크 인터페이스를 통해 지나가는 패킷들의 내용을 출력해주는 명령어로 여러 옵션을 이용해 패킷들의 오고가는 내용을 볼 수 있다.
  • 네트워크 패킷들을 다 조사하는것이기 때문에 root권한이 필요합니다.


특정 인터페이스 패킷들을 파일로 저장하기

기본 사용법

  • -i [inferface name]: 패킷들의 내용을 출력하고 싶은 인터페이스의 이름을 옵션으로 줍니다.
  • -w [file name]: 패킷들의 내용을 파일로 저장하고 싶을 때 사용하는 옵셥입니다.
tcpdump -i [interface name] -w [file name]

예제

  • eth0 인터페이스에 오고가는 패킷들을 test.pcap으로 저장하기
  • pcap: 와이어샤크에서 사용하는 파일 형식으로 캡처된 패킷들이 저장되는 파일 형식이다.
  • Ctrl + C를 통해서 종료가 가능하다.
$ sudo tcpdump -i eth0 -w test.pcap
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
860 packets captured
862 packets received by filter
0 packets dropped by kernel


와이어샤크

와이어샤크란?

  • 가장 널리쓰이는 네트워크 프로토콜 분석 도구로 아주 작은 레벨까지 네트워크 분석이 가능하며 사실상 표준(de facto)이 된 소프트웨어이다. 상업적 또는 비영리 목적으로 상당히 많이 사용한다.


pcap 형식의 파일을 와이어샤크로 열기

  • (방법1) 파일을 드래그 앤드 드롭(Drag-and-drop)을 이용해 열 수 있다.
  • (방법2) File-Open에서 파일 선택


주소 값으로 필터링하기

  • 특정 IP주소에 해당하는 패킷만 필터링하려면 메뉴에 있는 “Apply a display filter”에 필터를 추가하면 된다.

ip address filter

ip.addr==X.X.X.X
ip.src==X.X.X.X
ip.dst==X.X.X.X

AND condition

(ip.src==X.X.X.X) || (ip.dst==X.X.X.X)

OR condition

(ip.src==X.X.X.X) && (ip.dst==X.X.X.X)


참고자료