温馨提示×

Linux Sniffer如何排除故障

小樊
31
2025-12-27 01:34:19
栏目: 智能运维

Linux Sniffer 故障排查实战指南

一 快速定位流程

  • 明确现象与目标:是连通性(不通/高丢包/高时延)、端口访问(服务未响应)、还是异常流量(突发带宽、连接风暴)。
  • 选对工具与位置:服务器本机用tcpdump;需要深度解析用Wireshark;在交换机上优先用镜像端口抓取,避免影响业务。
  • 最小化抓包:先只抓必要流量(指定接口主机端口),必要时写入文件再离线分析,减少性能影响。
  • 复现与对照:在问题复现时抓包;同时保留一份“正常时段”的基线 pcap 便于对比。
  • 分析关键线索:TCP 三次握手是否完成、是否存在重传/超时、是否有RST/FIN异常、应用层状态码(如 HTTP 4xx/5xx)。
  • 闭环验证:根据抓包结论调整路由/防火墙/应用配置后,再次抓包确认问题消失。
    以上流程可快速缩小范围,提升定位效率。

二 常用命令与过滤表达式

  • 安装工具
    • Debian/Ubuntu:sudo apt-get update && sudo apt-get install tcpdump wireshark
    • CentOS/RHEL:sudo yum install tcpdump wireshark
  • 基本抓包
    • 指定接口:sudo tcpdump -i eth0
    • 保存到文件:sudo tcpdump -i eth0 -w capture.pcap
    • 读取文件:tcpdump -r capture.pcap -nn -i eth0
  • 常用过滤
    • 按主机:sudo tcpdump host 192.168.1.100
    • 按端口:sudo tcpdump port 80 或 port 443
    • 按协议:sudo tcpdump tcpudpicmp
  • 连通性与握手排查
    • 三次握手失败:仅有 SYNSYN-ACK,常见于对端未监听、ACL/防火墙拦截或路由问题
    • 重传与 RTT:用时间戳分析往返时间,观察是否存在大量重传(tcpdump -i any -n -vv -s 0 ‘tcp[tcpflags] & (tcp-syn|tcp-ack) != 0’)
  • 协议异常与流量异常
    • 异常断开:关注 RST
    • HTTP 状态:抓取应用层响应码(如 404/502
    • 大流量来源:tcpdump -i eth0 -nn -q | awk ‘{print $3}’ | sort -nr | head 以上命令覆盖日常排障的高频场景,便于快速落地。

三 典型场景与抓包要点

场景 抓包要点 判读关键 常见根因
无法访问某主机/端口 两端同时抓包;过滤目标 IP/端口 本端发 SYN 未见 SYN-ACK 对端未监听、ACL/防火墙拦截、路由/NAT 问题
高丢包或高时延 长时抓包并保存;关注 重传/超时 多次重传、RTT 抖动大 链路拥塞、无线干扰、服务器过载
应用报错(HTTP 5xx/连接被拒) 抓取应用端口与返回内容 RST 过早、返回 4xx/5xx 后端异常、反向代理/网关配置错误
突发大流量/疑似攻击 全量短时间抓包并离线分析 某 IP/端口流量异常集中 DoS/扫描、配置错误导致广播风暴
DNS 解析异常 抓取 UDP/TCP 53 无响应或响应被截断 DNS 服务器不可达、解析超时
以上场景覆盖了连通性、性能与异常三大类问题,抓包侧重点与判读要点可直接用于定位。

四 常见问题与排查

  • 抓不到包或“接口不存在”
    • 确认网卡名(ip link),必要时用 -i any;在虚拟化/容器环境需确认网卡直通/镜像配置。
  • 权限不足
    • 抓包通常需要 rootCAP_NET_RAW 能力;sudo 执行或配置能力集。
  • 抓到包但分析困难
    • 先写文件再分析:sudo tcpdump -i eth0 -w capture.pcap;用 Wireshark 打开做深度解析。
  • 性能或丢包影响
    • 限制抓包规模:使用精确过滤表达式、减少抓包时长;必要时在镜像端口抓包,避免影响业务。
  • 过滤器语法错误
    • 先用简单过滤(如 host/port),逐步叠加条件;注意 pcap 过滤语法与显示过滤的区别。 以上为实际排障中最常见的拦路虎与对应处理。

五 合规与最佳实践

  • 合法合规:抓包涉及网络数据与隐私,务必取得明确授权,避免在生产环境无限制抓取敏感信息。
  • 最小化原则:仅抓取与问题相关的主机/端口/协议,控制抓包文件大小与保存时长。
  • 脱敏与留痕:对外分享 pcap 前做敏感信息脱敏;保留抓包与处置记录,便于复盘与审计。
  • 风险控制:高峰期避免大规模抓包;必要时在维护窗口镜像端口进行,降低对业务的影响。 以上规范有助于在保障安全与合规的前提下高效排障。

0