用 tcpdump 抓包定位问题
Linux系统
2026-11-01 17:47
5
抓包不带过滤条件,文件几分钟就上 G。同一件事有很多种做法,选哪种取决于你的系统版本和线上是否允许中断。
下面按“先判断范围、再处理、最后防复发”的顺序展开,涉及 tcpdump、抓包 的关键动作都给了具体做法,可以照着走。
基本用法
tcpdump -i eth0 port 80 -w a.pcap。
条件允许的话先在测试环境走一遍,再动生产。
过滤
host 与 port 组合,加 -c 限制包数。
容易踩的坑:很多“没生效”其实是缓存或时长问题,先排除这一层再改配置。
查看
tcpdump -r a.pcap -A 看内容。
拿不准的时候先做备份再做变更,成本最低。
注意
含敏感信息,抓完及时删除。
常见问题
Q:tcpdump这类问题,最快的判断办法是什么?
先确认现象的范围:只有单台还是全部、只在某个时段还是持续。范围一缩小,原因基本就浮出来了。
Q:按文中的步骤做完,还需要注意什么?
把处理过程和最终生效的参数记下来。同类问题再出现时直接对照记录,比重查一遍快得多。
小结
回到这篇的四个环节:基本用法、过滤、查看、注意。生产环境优先考虑稳定性,新参数先在小流量机器上验证。