Ubuntu下 dumpcap 性能优化
一 基础与权限配置
sudo apt update && sudo apt install wireshark;赋权:sudo setcap 'CAP_NET_RAW+ep CAP_NET_ADMIN+ep' /usr/bin/dumpcap。dumpcap -i eth0 -f "tcp port 80" -w http.pcap。sudo apt update && sudo apt install wireshark。二 关键参数与文件策略
-B 104857600(单位 KB,约 100 MB)。-s 64(仅首部,极致性能/低开销);需要完整负载时 -s 0。dumpcap -i eth0 -b files:5 -b filesize:100M -w traffic.pcap;按小时切分 dumpcap -i eth0 -w /path/%Y%m%d_%H%M.pcap -G 3600。三 系统层面优化
sudo ethtool -l eth0(查看队列),sudo ethtool -L eth0 combined 4(设置为 4 队列)。sudo sysctl -w net.core.rmem_max=26214400 与 sudo sysctl -w net.core.wmem_max=26214400。四 高带宽与长时间抓包示例命令
dumpcap -i eth0 -f "tcp port 80" -s 128 -B 104857600 -w traffic.pcapgzip traffic.pcap(节省存储、便于传输)。dumpcap -i eth0 -nn -s 0 -w file1.pcap & dumpcap -i eth1 -nn -s 0 -w file2.pcap &dumpcap -i eth0 -b files:10 -b filesize:500M -w /data/cap_%Y%m%d_%H%M.pcap -G 1800五 丢包排查与验证
cat /proc/net/softnet_stat,关注每 CPU 行的第二列(丢弃计数)是否增长;增长明显说明内核/驱动层缓冲或中断处理存在瓶颈。