tcpdump命令简要

flexible, powerful command-line tool helps ease the pain of troubleshooting network issues.

1、基础

yum install -y tcpdump

查看有哪些nic网络接口可以用

sudo tcpdump -D

测试capturing所有packets

sudo tcpdump -i any

Ctrl+C stop.

限制抓包数量:

sudo tcpdump -i any -c 5

tcpdump默认解析了ip和port的names,需要直接显示ip或者port的话使用 -n-nn

sudo tcpdump -i any -c5 -nn

2、输出

tcp、udp、icmp等格式在
tcpdump官方手册可以查到详细的格式。
下面是tcp:

08:41:13.729687 IP 192.168.64.28.22 > 192.168.64.1.41916: Flags [P.], seq 196:568, ack 1, win 309, options [nop,nop,TS val 117964079 ecr 816509256], length 372
  • 时间戳
  • 协议(ip ipv6)
  • 源ip端口
  • 目的ip端口
  • Flags:
    |值 | flag type|描述|
    |-|-|-|
    |S|SYN|开始同步连接|
    |F|FIN|完成连接|
    |P|PUSH|数据推送|
    |R|RST| 连接重置|
    |.|ACK|返回连接确认|

[P.]: PUSH-ACK

  • sequence:
    包数据的序列区间,seq 196:568表示这个package包含数据bytes 196到568.

3、过滤

  • Protocol协议
sudo tcpdump -i any -c5 icmp
  • Host地址过滤
sudo tcpdump -i any -c5 -nn host 54.204.39.132
  • port端口
sudo tcpdump -i any -c5 -nn port 80
  • 源地址/目的地址
sudo tcpdump -i any -c5 -nn src 192.168.122.98
sudo tcpdump -i any -c5 -nn dst 192.168.122.98

查看包内容

-X to print content in hex, and ASCII or -A to print the content in ASCII

  • -X 十六进制
  • -A ascii码
sudo tcpdump -i any -c10 -nn -A port 80

猜你喜欢

转载自blog.csdn.net/goddessblessme/article/details/108125165