不藏了!Wireshark 命令、捕获、过滤器大全分享给你

科技   2024-12-30 17:29   江苏  

公众号:网络技术联盟站 

Wireshark,这款广受欢迎的开源网络协议分析工具,堪称网络管理员、网络安全专家和网络爱好者的“显微镜”!它可以帮助我们捕获网络中的数据包,并提供详细的解码和分析能力。本文将为您全面剖析 Wireshark 的强大功能,从基础到高级,让你快速掌握这个神器!💡

Wireshark 是一款功能强大的网络协议分析器,最早由 Gerald Combs 于 1998 年开发,经过多年发展,已成为网络诊断和分析的首选工具。它支持实时捕获数据包并提供详尽的解码信息,适用于多种操作系统,包括 Windows、macOS 和 Linux。

为什么选择 Wireshark?

  1. 全面的协议支持:Wireshark 能够解析数百种协议(HTTP、DNS、SSL/TLS 等)。
  2. 实时数据捕获:支持实时数据包捕获和离线分析。
  3. 图形化界面:界面直观,易于使用。
  4. 强大的过滤功能:提供多种过滤器,帮助用户快速找到目标数据。
  5. 跨平台支持:可运行在多种操作系统上。

Wireshark 捕获模式

在 Wireshark 中,数据包捕获是最核心的功能之一。根据需求,可以选择以下捕获模式:

Wireshark 捕获模式分类

Wireshark 启动后会列出可用的网络接口。选择一个接口并点击“Start”,Wireshark 即开始捕获该接口上的数据包。

💡小提示:

  • 如果不确定选择哪个接口,可以先观察接口旁边的流量图。
  • 无线网络捕获需要支持“监控模式”的网卡。

在捕获数据包之前,可以设置一些参数来优化捕获过程:

  • 文件输出:将捕获的数据保存到文件。
  • 捕获过滤器:在捕获阶段过滤不需要的数据包。
  • 环形缓冲区:限制捕获文件的大小,避免占用过多存储空间。

Wireshark 过滤器解析大全

Wireshark 提供了强大的过滤功能,包括捕获过滤器和显示过滤器。合理使用过滤器可以极大地提高分析效率。

1. 捕获过滤器(Capture Filter)

捕获过滤器在数据包捕获时生效,用于减少捕获的数据量。

Wireshark 捕获过滤器语法

示例

  • 捕获所有 TCP 数据包:tcp
  • 捕获来自 192.168.1.1 的数据包:src 192.168.1.1
  • 捕获发往特定端口的数据包:port 80

2. 显示过滤器(Display Filter)

显示过滤器用于分析阶段,仅影响数据包的显示,不会改变捕获的数据。

Wireshark 显示过滤器语法
Wireshark 显示过滤器常用操作符

示例

  • 过滤 IP 地址为 10.10.50.1 的数据包:ip.addr == 10.10.50.1
  • 过滤特定端口的数据包:tcp.port == 25
  • 过滤多个条件:ip.addr == 10.0.0.1 and tcp.port == 80

3. 捕获与显示过滤器的对比

属性捕获过滤器显示过滤器
作用阶段捕获阶段显示阶段
过滤范围减少捕获的数据量不影响捕获的数据量
语法复杂度相对简单相对复杂
典型使用场景捕获特定协议或地址的数据分析捕获数据中特定字段的值
捕获与显示过滤器的对比表格图

Wireshark 快捷键与常用功能

为了提高操作效率,Wireshark 提供了丰富的快捷键和功能模块。

1. 常用快捷键

Wireshark 常用快捷键

2. 数据包信息列

默认情况下,Wireshark 会显示以下列信息:

  • No.:数据包编号
  • Time:时间戳
  • Source:源地址
  • Destination:目的地址
  • Protocol:协议类型
  • Length:数据包长度

3. 数据包内容查看

点击任意数据包,可以在下方的“Packet Details”窗口查看详细内容,包括:

  • 帧信息:以太网帧的基本信息。
  • 协议信息:如 IP、TCP 的详细字段。
  • 原始数据:数据包的十六进制和 ASCII 表示。

Wireshark 高级功能

Wireshark 不仅仅是一个简单的网络协议分析工具,它还拥有许多高级功能,能够帮助用户在复杂的网络环境中快速定位问题。

Wireshark 高级显示过滤器

Wireshark 的显示过滤器支持复杂的逻辑条件,可以帮助用户快速定位感兴趣的流量。

以下是一些高级用法:

组合条件

  • 按 IP 和端口过滤:
ip.addr == 192.168.3.1 and tcp.port == 80
  • 排除特定流量
not (ip.addr == 10.0.0.1 and tcp.port == 22)

时间过滤

  • 过滤特定时间段的流量:
frame.time >= "2024-12-30 17:00:00" and frame.time <= "2024-12-30 17:10:00"

协议层字段

  • 过滤 HTTP 请求方法:
http.request.method == "GET"
  • 过滤 DNS 查询类型:
dns.qry.type == 1

位操作符

Wireshark 的位操作符非常适合用于过滤特定标志位。

例如:

  • 过滤 TCP SYN 数据包:
tcp.flags.syn == 1 and tcp.flags.ack == 0
  • 过滤 ICMP Echo 请求:
icmp.type == 8

网络性能分析

Wireshark 可以帮助分析网络性能瓶颈。

延迟分析

使用 Wireshark 可以测量两个数据包之间的时间差:

  • 通过 TCP 时间戳:查看 tcp.analysis.ack_rtt 字段。
  • 通过 ICMP 延迟:计算 frame.time_delta 的值。

丢包检测

  • 标记丢失的 TCP 数据包:
tcp.analysis.lost_segment
  • 检查重传数据包:
tcp.analysis.retransmission

带宽分析

通过统计功能(Statistics 菜单),可以生成网络带宽利用率的图表:

  • I/O 图表:用于分析网络流量变化趋势。
  • 流量统计:统计每个协议的流量占比。

安全性分析与威胁检测

Wireshark 是网络安全分析的利器,尤其在以下几个方面:

恶意流量检测

  • 检测端口扫描:
tcp.flags.syn == 1 and tcp.flags.ack == 0

观察源 IP 是否同时访问多个端口。

  • 检测 DNS 隧道:
dns.qry.name contains "example.com"

检测可疑通信

  • 未知协议:观察使用非标准端口的通信流量。
  • 长时间连接:过滤出持续时间异常长的 TCP 会话。

密码嗅探

  • HTTP 明文密码捕获:过滤 HTTP POST 数据包,查看其中的表单字段:
http.request.method == "POST"

加密协议分析

Wireshark 支持部分加密协议的解密功能,例如:

  • SSL/TLS 解密:需要获取服务器的私钥并配置 Wireshark 的解密选项。
  • WPA2 解密:需要输入无线网络的 PSK。

流量可视化与报告

Wireshark 提供了一些内置的可视化工具,帮助用户更直观地理解网络流量。

I/O 图表

  • 功能:展示网络流量随时间的变化趋势。
  • 用法:点击菜单 Statistics -> I/O Graph,可以自定义显示的字段和统计方法。

协议层分布

  • 功能:统计捕获流量中不同协议的分布情况。
  • 用法:点击菜单 Statistics -> Protocol Hierarchy

流量对话

  • 功能:分析源和目的地址之间的通信。
  • 用法:点击菜单 Statistics -> Conversations

本文完!🎉🎉🎉

别忘了收藏哦,防止找不到了!⭐⭐⭐


往期推荐

2024 年即将结束:哪款 Linux 发行版堪称年度最佳?

普通网工可能整个工作生涯都不会用到VXLAN,但了解这15个术语,你会走得更远!

重启大法解谜:为何网络设备遇到疑难杂症,重启总是神奇有效?

网工、运维必备神器——堡垒机,你竟然还不知道?

遇到Wi-Fi故障怎么办?信号问题、干扰问题要着重看!




END


给大家分享一款针对咱们网络工程师的【子网掩码计算器】,由瑞哥自研开发,速度快,体验感棒,永久针对粉丝免费!

网络专属技术群

构建高质量的技术交流社群,欢迎从事网络技术、网络安全、系统集成、网络开发、或者对网络技术感兴趣,也欢迎技术招聘HR进群,也欢迎大家分享自己公司的内推信息,相互帮助,一起进步!


7群已满!8群开放!!!

💡

文明发言,以交流技术、职位内推、行业探讨为主

广告人士勿入,切勿轻信私聊,防止被骗


加我好友,拉你进群,注明来意!
喜欢就分享
认同就点赞

支持就在看

一键四连,你的技术也四连


网络技术联盟站
计算机网络技术,行业干货知识传播,网络技术分享,总有你想要的!
 最新文章