用 Dumpcap 诊断网络问题的实操指南
一 准备与安装
sudo apt update && sudo apt install wireshark(安装过程中可选择是否允许非 root 抓包)。sudo yum install wireshark(或 sudo dnf install wireshark)。sudo adduser $USER wireshark,然后重新登录以生效。sudo setcap 'cap_net_raw,cap_net_admin=eip' /usr/bin/dumpcap(路径可能为 /usr/sbin/dumpcap,以本机为准)。dumpcap --version 确认可用;ip a 或 ifconfig 查看接口名(如 eth0、ens33、wlan0)。二 快速定位流程
三 常用命令模板
sudo dumpcap -i eth0 -w capture.pcapsudo dumpcap -i eth0 -f "tcp port 80 or tcp port 443" -w web.pcapsudo dumpcap -i eth0 -f "host 192.168.1.100" -w host.pcapsudo dumpcap -i eth0 -f "net 10.0.0.0/24" -w subnet.pcapsudo dumpcap -i eth0 -c 10000 -w cap.pcapsudo dumpcap -i eth0 -a duration:60 -w cap.pcap(抓 60 秒)sudo dumpcap -i eth0 -b files:10 -b filesize:100000 -w ring.pcapsudo dumpcap -i eth0 -B 16777216 -w bigbuf.pcap(单位 KiB)sudo dumpcap -i eth0 -w - | tcpdump -r - -nn -lsudo dumpcap -i eth0 -s 0 -w full.pcap(0 表示全帧)四 典型故障的抓包与判读要点
"tcp.port == 443 or tcp.port == 80""tcp.port == 80 or tcp.port == 443",配合显示过滤器 http 或 tls.handshake"ip.addr == 192.168.1.10 and ip.addr == 10.0.0.20""host 127.0.0.1 and (tcp port 80 or tcp port 443)" 或抓 lo 接口,确认是否为本机应用/回环路径问题。"arp or (udp port 5353)"(mDNS),或 "ether multicast";检查异常广播风暴、NDP/ARP 洪泛。五 分析技巧与排错建议
-b files/-b filesize)长期运行抓包,问题出现时保留最近数据。