Debian 下 Dumpcap 使用指南
一 安装与准备
sudo apt update && sudo apt install wireshark(或 sudo apt install dumpcap)。安装后可用 dumpcap --version 验证版本。为便于非 root 抓包,建议创建 wireshark 用户组并将当前用户加入:sudo groupadd -f wireshark && sudo usermod -aG wireshark $USER,随后重新登录使组权限生效。必要时赋予 Dumpcap 能力:sudo setcap 'cap_net_raw,cap_net_admin=eip' /usr/bin/dumpcap(路径可能为 /usr/sbin/dumpcap,可用 which dumpcap 确认)。以上步骤完成后即可在普通用户下抓包。二 快速上手与常用命令
dumpcap -D(识别要监听的网卡名称,如 eth0、wlan0、any)。sudo dumpcap -i eth0 -w capture.pcap(在 eth0 上捕获并写入文件)。sudo dumpcap -i eth0 -c 100 -w capture.pcap(仅捕获 100 个包)。sudo dumpcap -i eth0 -G 60 -W bysec -w capture_%Y-%m-%d_%H-%M-%S.pcap(每 60 秒一个文件,自动滚动)。sudo dumpcap -i any -Y "tcp port 80";读取文件 dumpcap -r capture.pcap。提示:显示过滤器以 -Y 指定(如 http、dns、tcp.port==443),与捕获过滤器 -f(BPF)不同。三 捕获过滤器语法要点
sudo dumpcap -i eth0 -f "tcp port 80" -w http.pcapsudo dumpcap -i eth0 -f "tcp port 80 and host example.com" -w example_http.pcapsudo dumpcap -i eth0 -f "icmp" -w icmp.pcapsudo dumpcap -i eth0 -f "src 192.168.1.100" -w from100.pcap 或 dst 192.168.1.100sudo dumpcap -i eth0 -f "tcp and host 192.168.1.100 and port 443" -w https_100.pcap四 性能与存储优化
sudo dumpcap -i eth0 -B 1048576 -w cap.pcap(单位字节,示例为 1 MiB)。-s 0 保留完整帧(会显著增加磁盘与 CPU 压力,谨慎使用)。五 与 Wireshark 和 Tshark 的协同分析
.pcap 文件(如 wireshark capture.pcap),借助显示过滤器(如 http、dns、tcp.port==443)深入分析。tshark -r capture.pcap -Y "http" -T fields -e frame.number -e ip.src -e ip.dst -e http.host -e http.request.method -e http.request.uritshark -i eth0 -Y "http" -T fields -e frame.number -e ip.src -e ip.dst -e http.host -e http.request.method -e http.request.urisudo dumpcap -i eth0 -w - | tcpdump -r -。