마니의 공부방/Os_Linux

[linux] tcpdump 패킷 캡처 및 분석

tcpdump란?

주어진 옵션에 만족하는 네트워크 io를 거치는 패킷들의 헤더들을 출력해주는 프로그램입니다.

 

■ tcpdump 를 이용한 패킷캡처

> tcpdump -i em4 tcp port 4206 -w capture_4206.cap

 

** 옵션

-i : 이더넷 지정

-w : 덤프한 패킷헤드 를 지정할 파일이름을 지정

-c : 캡쳐할 개수

-s 1500 : 패킷의 전체길의 의미 모든 패킷 캡쳐

tcp port : 캡쳐할 포트 지정

** combine : and ( && ) , or ( || ) , not ( ! ) 으로 여러가지를 조합해서 사용 가능

 

> tcpdump udp and src port 53 => UDP 이고 src 포트가 53 인 것

> tcpdump -i eth0 : eth0 이더넷의 패킷을 뜬다.

> tcpdump -i eth0 -w test.log : eth0 이더넷의 패킷을 test.log의 파일로 지정

> tcpdump -i eth0 -w test.log -c 5 : eth0 이더텟 패킷을 5개만 캡쳐하여 test.log의 파일로 지정

> tcpdump -i eth0 -w test.log tcp port 22 and host 192.168.0.21 : eth0의 192.168.0.21의 호스트의 22번 포트만 캡쳐하여 test.log 파일로 지정한다.

 

지정한 파일을 확인 할 경우tcpdump -r test.log로 확인한다.

> tcpdump -i eth0 > testout.log

cat testout.log

 

 

■ 랜카드 목록 확인

> ip link