温馨提示×

怎么分析ubuntu sniffer结果

小樊
46
2026-10-12 08:32:24
栏目: 智能运维

在 Ubuntu 下,“sniffer 结果”通常指用抓包工具(如 tcpdump、Wireshark、tshark)捕获到的网络数据包。下面从工具、结果形式、分析思路、常见场景几个方面说明如何分析。


一、常见 sniffer 工具及结果形式

1. tcpdump(命令行)

sudo tcpdump -i eth0 -nn port 80

结果示例:

12:01:02.123 IP 192.168.1.10.45678 > 10.0.0.1.80: Flags [S], seq 12345

特点:

  • 文本形式
  • 适合快速排查
  • 信息较精简

2. Wireshark(图形界面)

sudo wireshark

特点:

  • 结构化显示
  • 可展开协议层(Ethernet / IP / TCP / HTTP)
  • 支持过滤、统计、流追踪

3. tshark(命令行 Wireshark)

sudo tshark -i eth0 -Y "http"

适合:

  • 服务器无界面环境
  • 脚本化分析

二、分析 sniffer 结果的基本思路

1. 确认抓包是否正确

  • 接口是否正确(eth0 / ens33 / wlan0)
  • 是否有权限(需要 sudo)
  • 是否过滤了错误端口/协议

2. 看“五元组”

每次连接关注:

  • 源 IP
  • 源端口
  • 目标 IP
  • 目标端口
  • 协议(TCP/UDP)

示例:

192.168.1.10:45678 → 10.0.0.1:80 (TCP)

3. 分析 TCP 三次握手

正常连接应有:

[S]   →
[S.]  ←
[.]   →

异常可能:

  • 只有 [S],无回应 → 防火墙 / 服务未监听
  • 大量 [R] → 连接被拒绝

4. 看 Flags(TCP 标志位)

常见:

  • [S] SYN
  • [.] ACK
  • [P] 有数据
  • [F] 结束
  • [R] 重置(异常)

5. 分析延迟与丢包

  • 请求和响应时间差大 → 网络或服务器慢
  • 重复 ACK、重传 → 丢包

三、常见分析场景

场景 1:服务无法访问

sudo tcpdump -i any host 10.0.0.1

看:

  • 是否有 SYN
  • 是否有 SYN-ACK
  • 是否被 RST

场景 2:HTTP 请求异常

用 Wireshark:

  • 过滤 http
  • 右键 → Follow → HTTP Stream 看请求和响应内容

场景 3:DNS 解析慢

sudo tcpdump -i any udp port 53

看:

  • 请求是否发出
  • 响应是否回来
  • 响应时间

场景 4:网络攻击或异常流量

关注:

  • 同一 IP 大量连接
  • 非正常端口扫描
  • 大量 RST/SYN

四、实用过滤示例

tcpdump 过滤

# 只看某 IP
sudo tcpdump host 192.168.1.10

# 只看 TCP 80
sudo tcpdump tcp port 80

# 写入文件
sudo tcpdump -w capture.pcap

Wireshark 过滤

ip.addr == 192.168.1.10
tcp.port == 443
http.request
tcp.flags.reset == 1

五、总结一句话

分析 sniffer 结果 = 确认抓包正确 → 看连接建立 → 看数据交互 → 看异常标志 → 结合业务判断问题

如果你愿意,可以把具体 sniffer 输出内容或报错场景贴出来,我可以帮你逐行分析。

0 踩