tcpdump 指令抓包举例
时间: 2023-10-06 07:08:30 浏览: 74
假设我们要抓取 eth0 网卡上的 HTTP 请求和响应,可以使用以下 tcpdump 命令:
```
sudo tcpdump -i eth0 -nnvvS -s 0 tcp port 80
```
解释一下各个参数的含义:
- `-i eth0`:指定要抓取的网卡为 eth0。
- `-nnvvS`:打印详细的抓包信息,包括源/目的地址和端口、协议头部等。
- `-s 0`:设置抓取数据包的最大长度为 0,表示抓取完整的数据包。
- `tcp port 80`:只抓取 TCP 协议的端口为 80(即 HTTP 协议)的数据包。
执行完命令后,tcpdump 就开始抓取 eth0 上的 HTTP 数据包,可以看到类似如下的输出:
```
10:47:06.802666 IP 192.168.1.100.58102 > 216.58.194.174.80: Flags [P.], seq 258:350, ack 1, win 229, options [nop,nop,TS val 18472450 ecr 87875290], length 92
10:47:06.812318 IP 216.58.194.174.80 > 192.168.1.100.58102: Flags [P.], seq 1:142, ack 350, win 502, options [nop,nop,TS val 87875300 ecr 18472450], length 141
10:47:06.812338 IP 192.168.1.100.58102 > 216.58.194.174.80: Flags [.], ack 142, win 229, options [nop,nop,TS val 18472451 ecr 87875300], length 0
10:47:06.812977 IP 192.168.1.100.58102 > 216.58.194.174.80: Flags [F.], seq 350, ack 142, win 229, options [nop,nop,TS val 18472451 ecr 87875300], length 0
10:47:06.822090 IP 216.58.194.174.80 > 192.168.1.100.58102: Flags [.], ack 351, win 502, options [nop,nop,TS val 87875310 ecr 18472451], length 0
```
每一行都代表一个数据包,其中包括源/目的地址和端口、协议头部信息等。通过分析这些数据包,我们可以了解 HTTP 请求和响应的具体细节。
阅读全文