tcpdump
는 패킷을 캡쳐하여 분석할 때 사용한다.$ tcpdump [option]
옵션 | 설명 |
---|---|
-c <패킷 수> | 지정한 패킷 수 만큼 덤프 받고 종료한다. |
-i <인터페이스> | 특정 인터페이스를 지정한다. |
-n | IP 주소를 호스트명으로 바꾸지 않는다. |
-q | 정보를 간단한 형태로 보여준다. |
-X | 패킷의 내용을 16진수와 ASCII로 출력한다. |
-w <파일 명> | 덤프한 내용을 지정한 파일 명에 저장한다. |
-r <파일 명> | 덤프를 저장한 파일에서 읽어온다. |
host <호스트명 | 주소> | 지정한 호스트가 받거나 보낸 패킷만 덤프한다. |
tcp port <PORT 번호> | 지정한 포트번호 패킷만 덤프한다. |
ip | ip 패킷만 덤프한다. |
-G | 초 단위로 파일이 순환생성 |
-W | 최대 파일 갯수 |
-z <권한을 줄 유저> | 덤프 파일에 지정한 유저 권한으로 생성(default: tcpdump ) |
-C <파일 사이즈> | 지정한 파일 사이즈 만큼 덤프 write |
사용 예 | 설명 |
---|---|
$ sudo tcpdump | - |
$ sudo tcpdump -i eth0 | - |
$ sudo tcpdump -i eth0 -w ./dump.out | - |
$ sudo tcpdump tcp port 22 and host 192.168.07 | - |
$ sudo tcpdump -c 3 -w tcpdump.out -Z $USER
$ sudo tcpdump
: tcpdump 수행-c 3
: 패킷 주고 받는 것 3번만 수행-w tcpdump.out
: ./tcpdump.out
이름으로 덤프 내용을 작성-Z $USER
: 쉘 환경변수로 지정된 $USER 이름으로 dump file의 권한 부여$ sudo tcpdump -c 3 -w dump.out tcp port 22 -Z $USER
$ sudo tcpdump
: tcpdump 수행-c 3
: 패킷 주고 받는 것 3번만 수행-w dump.out
: 덤프 내용을 ./dump.out
에 작성tcp port 22
: tcp port 22번만 캡쳐한다.-Z $USER
: 쉘 환경변수의 $USER 이름으로 dump file의 권한을 부여한다.$ sudo tcpdump -c 3 -w dump.out tcp port 22 and host 192.168.0.13 -Z $USER
$ sudo tcpdump
: tcpdump 수행-c 3
: 패킷 주고 받는 것 3번만 수행-w dump.out
: 덤프 내용을 ./dump.out
에 작성tcp port 22
: tcp port 22번만 캡쳐한다.and
조건host 192.168.0.13
: host 192.168.0.13만 캡쳐한다.-Z $USER
: 쉘 환경변수의 $USER 이름으로 dump file의 권한을 부여한다.$ sudo tcpdump -i eth1
$ sudo tcpdump
: tcpdump 수행-i eth1
: -i
옵션으로 eth1
인터페이스에 대해서만, dump 수행$ tcpdump -r ./tcpdump.out
$ tcpdump -r <파일>
: 지정한 '파일'을 human-readable 하게 읽어올 수 있다.$ tcpdump -Xr tcpdump.out
$ tcpdump
: tcpdump 명령 수행-X
: 16진수, ASCII로-r tcpdump.out
: 읽는다. tcpdump.out
파일을traceroute
$ traceroute
명령은 지정한 Host에 어떤 경로를 거치는지 확인$ traceroute [option] <Host | IP>
사용 예:
$ traceroute www.google.com
option | description |
---|---|
-F | ip패킷을 분할하지 않는다. |
-g | 게이트웨이. 경유하는 게이트웨이를 지정한다. (최대 8 서버 지정가능) |
-I | icmp echo 이용 |
-T | TCP SYN을 이용 |
-m <최대값> | 경유하는 최대 host 수를 지정 |
-n | host명을 해결하지 않고 IP주소로 표시 |
-p <PORT> | 이용하는 port 지정 |
-r | routing table 무시 |
-s <IP 주소> | 지정한 IP주소에서 경로를 조사 |
-w <시간> | time out 시간 지정 |
-x | icmp를 checksum으로 평가 |
-z <시간> | 경로를 체크하는 시간 간격 지정 |