OS RedHat Enterprise Linux 8.4
==
1. tcpdump -i eno1 src 10.0.0.100
네트워크 인터페이스 eno1에서 출발지IP가 10.1.1.100인 패킷만 출력
2.tcpdump -i eno1
네트워크 인터페이스 eno1를 지나는 패킷 덤프
3. 특정 호스트 중에서 출발지가 192.168.10.161인 패킷 덤프
4. 특정 호스트 중에서 목적지가 192.168.10.161인 패킷 덤프
5. UDP이면서 출발지 포트가 123번인 패킷 덤프
6. 출발지가 10.0.0.107이면서 목적지 포트가 22번이 아닌 패킷 덤프
Example
# tcpdump -i eth0 => 인터페이스 eth0 을 보여줌
# tcpdump -w tcpdump.log => 결과를 파일로 저장, txt 가 아닌 bin 형식으로 저장됨
# tcpdump -r tcpdump.log => 저장한 파일을 읽음
# tcpdump -i eth0 -c 10 => 카운터 10개만 보여줌
# tcpdump -i eth0 tcp port 80 => tcp 80 포트로 통신하는 패킷 보여줌
# tcpdump -i eth0 src 192.168.0.1 => source ip 가 192.168.0.1인 패킷 보여줌
# tcpdump -i eth0 dst 192.168.0.1 => destination ip 가 192.168.0.1인 패킷 보여줌
* and 옵션으로 여러가지 조건의 조합 가능
# tcpdump -i eth0 src 192.168.0.1 and tcp port 80 => source ip 가 192.168.0.1이면서 tcp port 80 인 패킷 보여줌
# tcpdump -i eth0 dst 192.168.0.1 => dest ip 가 192.168.0.1인 패킷 보여줌
# tcpdump host 192.168.0.1 => host 를 지정하면, 이 ip 로 들어오거가 나가는 양방향 패킷 모두 보여줌
# tcpdump src 192.168.0.1 => host 중에서 src 가 192.168.0.1인것 만 지정
# tcpdump dst 192.168.0.1 => host 중에서 dst 가 192.168.0.1인것 만 지정
# tcpdump net 192.168.0.1/24 => CIDR 포맷으로 지정할 수 있다.
# tcpdump tcp => TCP 인것만
# tcpdump udp => UDP 인것만
# tcpdump port 3389 => 포트 양뱡항으로 3389인 것.
# tcpdump src port 3389 => src 포트가 3389인 것.
# tcpdump dst port 3389 => dst 포트가 3389인 것.
* combine : and ( && ) , or ( || ) , not ( ! ) 으로 여러가지를 조합해서 사용 가능
# tcpdump udp and src port 53 => UDP 이고 src 포트가 53 인 것
# tcpdump src x.x.x.x and not dst port 22 => src ip 가 x.x.x.x 이고 dst 포트가 22 가 아닌 것
* grouping : ( )
# tcpdump ‘src x.x.x.x and ( dst port 3389 or 22 )’ => src ip 가 x.x.x.x 이고 ( dst 포트가 3389 또는 22 ) 인 것 ==> 여기서는 ‘ ‘ 가 반드시 있어야 한다.
packet flags
S : SYN – 연결요청
F : FIN – 연결종료요청
R : RST – 즉시연결종료
P : PSH – 프로세스로 데이터전송
U : URG – 긴급한 데이터에 데이터전송 우선순위를 할당.
. : flag가 설정되지 않았음.
option
-i device : 어느 인터페이스를 경유하는 패킷들을 잡을지 지정한다.
지정되지 않으면 시스템의 인터페이스 리스트를 뒤져서 가장 낮은 번호를 가진 인터페이스를 선택한다(이 때 loopback은 제외된다).
-w : 캡춰한 패킷들을 분석해서 출력하는 대신에 그대로 파일에 저장한다.
-c number : 제시된 수의 패킷을 받은 후 종료한다.(캡쳐할 개수)
-s length: 패킷들로부터 추출하는 샘플을 default값인 68 byte외의 값으로 설정할 때 사용한다
[출처] tcpdump 사용법|작성자 하나자바
'OS > Linux&Unix' 카테고리의 다른 글
[Linux] /, /bin, /lib, /boot, /dev, /etc, /proc (0) | 2024.03.21 |
---|---|
[Linux] 하드웨어 정보 확인 (lspci, lshw, ldd) (0) | 2024.03.21 |
[Linux] tracepath 커맨드 (0) | 2024.03.20 |
[Linux] ethtool 커맨드 (0) | 2024.03.20 |
[Linux] crontab 옵션 및 설정 (RHEL8.4) (0) | 2024.03.20 |