dumpcap 是 Wireshark 套件中用于捕获网络数据包的命令行工具,通常在 Debian 上通过安装 wireshark-common 或 tshark 获得。以下是 常用 dumpcap 命令参数 的整理(基于较新版本,不同版本可能略有差异)。
-i <interface>
指定捕获接口,如 -i eth0
可用 dumpcap -D 查看接口列表
-D
列出可用捕获接口
-f <capture filter>
设置捕获过滤器(BPF 语法),如:
dumpcap -i eth0 -f "tcp port 80"
-s <snaplen>
设置抓取包的最大长度(字节),0 表示不截断
-p
关闭混杂模式(promiscuous mode)
-B <buffer size>
设置内核缓冲区大小(MB)
-w <file>
将捕获结果写入文件(如 pcap)
dumpcap -i eth0 -w capture.pcap
-b <ringbuffer option>
使用环形缓冲区(防止文件无限增大),常见形式:
-b files:N:最多保留 N 个文件-b filesize:N:每个文件最大 N KB-b duration:N:每隔 N 秒切换文件示例:
dumpcap -i eth0 -w cap.pcap -b files:10 -b filesize:100000
-a <autostop condition>
自动停止捕获条件:
-a duration:N:捕获 N 秒后停止-a files:N:写 N 个文件后停止-a filesize:N:文件达到 N KB 后停止-u <user>
以指定用户身份运行(常用于权限隔离)
-g <group>
指定组
-q
安静模式(减少输出)
-P
使用线程化捕获(某些版本支持)
-M
在每次写文件后打印文件信息
-h
显示帮助信息
-v
显示版本信息
# 列出接口
dumpcap -D
# 抓取 eth0 并保存
dumpcap -i eth0 -w test.pcap
# 只抓 80 端口,限制 100MB
dumpcap -i eth0 -f "tcp port 80" -w web.pcap -b filesize:100000
# 捕获 60 秒
dumpcap -i eth0 -a duration:60 -w cap.pcap
如果你需要:
可以继续问我。