发布于2026-07-21 阅读(0)
扫一扫,手机访问
dumpcap 是 Wireshark 家族里一个非常实用的命令行抓包工具,轻量、高效,适合在服务器或没有图形界面的环境下使用。不过,如果一股脑把所有流量都抓下来,文件会大得吓人,分析起来也费劲。所以,学会设置抓包过滤器,只捕获你真正关心的那部分流量,才是高效工作的关键。下面直接上干货,分几步把这个事说清楚。

先想清楚要抓什么
这一步其实最重要——你得明确自己关注的是哪种类型的流量。比如,想看 HTTP 通信,那过滤条件就是 tcp.port == 80;如果是 HTTPS,就是 tcp.port == 443。当然,也可以组合更复杂的条件,比如只抓某个 IP 的特定端口。
直接在命令行里指定过滤器
这是最常用的方式。启动 dumpcap 时,把过滤器表达式作为最后一个参数传进去就行。举个例子:
dumpcap -i eth0 -w capture.pcap 'tcp port 80'
这条命令的意思是:监听 eth0 网卡,只捕获目标端口为 80 的 TCP 数据包,然后保存到 capture.pcap 文件里。注意,过滤器要用单引号或双引号包起来,避免 shell 解析错误。
通过过滤器文件批量设置
如果你的过滤条件比较复杂,或者想反复使用,可以提前写到一个文本文件里。比如创建一个 filter.txt,内容就一行:
tcp.port == 80
然后启动 dumpcap 时用 -F 参数指定这个文件:
dumpcap -i eth0 -w capture.pcap -F filter.txt
这种方式适合在 Wireshark GUI 环境下先写好过滤器,再导出给命令行用——当然,直接命令行里写也一样,看个人习惯。
运行时动态切换过滤器
有时候你可能需要中途改变抓包规则,比如先抓 TCP 流量,再切到 UDP。这时候可以用 -f 或 --filter 参数。例如:
dumpcap -i eth0 -w capture.pcap -f 'udp'
这会立即把过滤器改为只捕获 UDP 数据包。注意,-f 和直接在末尾加过滤器的效果是一样的,但 -f 更明确一些。
拿不准时,查帮助手册
dumpcap 的命令行选项其实不少,过滤器相关的参数也容易混淆。最简单的方法就是运行:
dumpcap --help
它会列出所有可用的选项,包括过滤器相关的 -f、-F 等,一看就明白。
最后提醒一点:dumpcap 的过滤器语法完全遵循 Wireshark 的显示过滤器语法。这意味着你可以用 and、or、not 等逻辑运算符组合各种条件,比如 tcp.port == 80 and ip.src == 192.168.1.1。灵活运用这些表达式,就能精准定位你想要的流量,既省空间又省时间。
下一篇:Apache2模块如何启用
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8