dumpcap 是 Wireshark 套件中的命令行抓包工具,通常随 Wireshark / tshark 一起安装。下面从安装、基本用法、常见场景、权限与常见问题几个方面说明。
sudo apt update
sudo apt install wireshark-common
安装后 dumpcap 一般在:
/usr/bin/dumpcap
sudo yum install wireshark
或
sudo dnf install wireshark
dumpcap -v
dumpcap -D
或
ip link
示例输出:
1. eth0
2. lo
sudo dumpcap -i eth0 -w capture.pcap
-i eth0:指定网卡-w capture.pcap:保存到文件sudo dumpcap -i eth0 -c 100 -w test.pcap
抓 100 个包后自动停止。
sudo dumpcap -i eth0 -a duration:60 -w test.pcap
抓 60 秒后停止。
| 参数 | 作用 |
|---|---|
-i |
指定网卡 |
-w |
保存文件 |
-c |
抓包数量 |
-a |
自动停止条件 |
-b |
文件轮转 |
-f |
抓包过滤(BPF) |
-s |
截断包长度 |
-B |
缓冲大小(MB) |
sudo dumpcap -i eth0 -f "tcp port 80" -w http.pcap
sudo dumpcap -i eth0 -f "host 192.168.1.100" -w ip.pcap
sudo dumpcap -i eth0 -w log.pcap \
-b filesize:100000 \
-b files:10
nohup sudo dumpcap -i eth0 -w long.pcap -b duration:3600 &
sudo dumpcap ...
sudo groupadd wireshark
sudo usermod -aG wireshark $USER
sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 750 /usr/bin/dumpcap
sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap
然后重新登录即可非 root 使用。
tshark -r capture.pcap
或
wireshark capture.pcap
Couldn't open interface eth0
→ 用 sudo 或配置 capabilities
如果你愿意,可以告诉我:
我可以给你更精确的命令。