在 CentOS 上用 sniffer(抓包)排查故障,通常指使用 tcpdump / wireshark / tshark 等工具分析网络问题。下面按「场景 → 命令 → 分析思路」给你一套实用方法。
yum install -y tcpdump
yum install -y wireshark
tcpdump -i eth0
tcpdump -i eth0 host 192.168.1.100
tcpdump -i eth0 port 80
tcpdump -i eth0 tcp flags syn
tcpdump -i eth0 -w debug.pcap
tcpdump -i eth0 port 8080
现象判断:
检查:
ss -lntp | grep 8080
iptables -L -n
tcpdump -i eth0 host 10.0.0.5
看:
tcpdump -i eth0 udp port 53
看:
tcpdump -i eth0 port 80 -A
或:
tshark -i eth0 -Y http
tcpdump -i eth0 port 22
配合看:
# 看连接状态
ss -antp
# 看网卡丢包
ip -s link
# 看路由
ip route
# 看防火墙
iptables -L -n -v
| 现象 | 可能原因 |
|---|---|
| 只有 SYN | 服务未监听 / 防火墙 |
| 大量重传 | 网络拥塞 / 链路问题 |
| RST 包 | 服务拒绝 / 端口关闭 |
| DNS 无响应 | DNS 配置错误 |
| 延迟突然增大 | 网卡 / 交换机问题 |
如果你能告诉我:
我可以直接给你针对性抓包命令和分析步骤。