不藏着掖着了!Wireshark命令、捕获、过滤器大全,一篇文章都给你整理好了
前言
Wireshark 是一款功能强大的网络协议分析器,最早由 Gerald Combs 于 1998 年开发,经过多年发展,已成为网络诊断和分析的首选工具。它支持实时捕获数据包并提供详尽的解码信息,适用于多种操作系统,包括 Windows、macOS 和 Linux。
本文将为您全面剖析 Wireshark 的强大功能,从基础到高级,让你快速掌握这个神器!💡
为什么选择 Wireshark?
-
全面的协议支持:Wireshark 能够解析数百种协议(HTTP、DNS、SSL/TLS 等)。
-
实时数据捕获:支持实时数据包捕获和离线分析。
-
图形化界面:界面直观,易于使用。
-
强大的过滤功能:提供多种过滤器,帮助用户快速找到目标数据。
-
跨平台支持:可运行在多种操作系统上。
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。

如何系统学习网络安全?
网络安全作为数字时代的核心技术基石,已成为保障各行业安全稳定运行的坚实屏障。筑牢网络安全的防线,掌握先进的防护策略和技能正上升为国家与企业发展的战略优先级。
构建稳固的网络安全能力是一个体系的工程,需要从夯实基础理论出发,持续深化到攻防对抗与应急响应的实战层面。
如果你是准备学习网络安全(黑客)或者正在学习,我可以把我自用的360独家内部资料分享给你,包含以下内容你应该能用得上:
①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析
一、网络安全(黑客)学习路线
网络安全(黑客)学习路线,形成网络安全领域所有的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、网络安全教程视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

三、网络安全CTF实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这里带来的是CTF&SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~

四、网络安全面试题
最后,我们所有的作为都是为就业服务的,所以关键的临门一脚就是咱们的面试题内容,所以面试题板块是咱们不可或缺的部分,这里我给大家准备的就是我在面试期间准备的资料。

网安其实不难,难的是坚持和相信自己,我的经验是既然已经选定网安你就要相信它,相信它能成为你日后进阶的高效渠道,这样自己才会更有信念去学习,才能在碰到困难的时候坚持下去。
机会属于有准备的人,这是一个实力的时代。人和人之间的差距不在于智商,而在于如何利用业余时间,只要你想学习,什么时候开始都不晚,不要担心这担心那,你只需努力,剩下的交给时间!
这份完整版的网络安全学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)