Debian下用 Dumpcap 提升抓包与网络诊断效率
目标与思路
一 安装与权限配置
sudo apt update && sudo apt install -y wireshark dumpcapdumpcap --versionsudo setcap 'cap_net_raw,cap_net_admin=eip' /usr/bin/dumpcapsudo groupadd packet_capturesudo usermod -aG packet_capture $USERsudo chown root:packet_capture /usr/bin/dumpcapsudo chmod 750 /usr/bin/dumpcap二 系统内核与网卡调优
sudo ethtool -g <iface> 与 sudo ethtool -G <iface> rx 2048 tx 1024echo "net.core.netdev_max_backlog=16384" | sudo tee -a /etc/sysctl.confsudo sysctl -psudo ethtool -l <iface> 与 sudo ethtool -L <iface> combined 4sudo ip link set dev <iface> mtu 9000三 Dumpcap 关键参数与用法
dumpcap -Dsudo dumpcap -i eth0 -w /var/captures/cap.pcap -f "tcp port 80 or udp port 53"-B 104857600(约100MB),降低磁盘 I/O 抖动-T 4(按 CPU 核数合理设置),提升并行处理-s 96(仅头部,更快)或 -s 0(全包,更全)-q,减少控制台输出开销-m 2G,避免 OOM-C 1000 -W 10(每文件1000MB,保留10个)-G 60(每60秒新建文件)sudo dumpcap -i eth0 -w - | tshark -r - -Y "http"(边抓边析)四 存储硬件与运行建议
sudo apt update && sudo apt install --only-upgrade wireshark dumpcap,获取性能修复与新特性。五 验证与排错
ip -s -s link show <iface>(关注dropped)ethtool -g <iface>-s 建立基线,再逐步放宽;对比不同 -B、-T 组合下的丢包与 CPU/磁盘占用。getcap /usr/bin/dumpcap 与用户是否在 packet_capture 组;接口名以 dumpcap -D 为准。