news 2026/9/17 8:45:00

用 Wireshark 嗅探 ESP32 通信数据,教你看懂“WiFi 的语言”

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用 Wireshark 嗅探 ESP32 通信数据,教你看懂“WiFi 的语言”

🕵️ 用 Wireshark 嗅探 ESP32 通信数据,教你看懂“WiFi 的语言”

很多做 ESP32 的工程师都会遇到一个瓶颈:

  • 代码看起来没问题
  • 日志也没有明显报错
  • WiFi 连接就是不稳定 / 偶尔失败 / 延迟巨大

这时候,继续“猜”已经没意义了。
真正工程级的调试手段只有一个:抓包,看数据在“空中”到底发生了什么。

今天这篇文章,手把手带你用Wireshark嗅探 ESP32 的通信数据,让你真正“听懂 WiFi 在说什么”。


一、为什么一定要学会抓 WiFi 包?

日志只能告诉你结果,而抓包能告诉你过程

通过 Wireshark,你可以直接看到:

  • ESP32 是否真的发出了 Probe / Auth / Assoc
  • WPA2 / WPA3 四次握手是否完整
  • DHCP 为什么失败
  • 是否存在大量重传(Retry)
  • ACK 丢失、信道拥塞、RTS/CTS 行为

一句话总结:

WiFi 调试,不看包就是盲人摸象。


二、抓 WiFi 包的前置条件(非常关键)

⚠️ 先说结论:
普通笔记本电脑,默认是抓不到 WiFi 空口数据的。

你需要满足以下条件之一:


✅ 方案一:支持 Monitor Mode 的无线网卡(最推荐)

  • USB WiFi 网卡

  • 芯片推荐:

    • RTL8812AU
    • RTL8821CU
    • Atheros AR9271

系统支持情况:

  • Linux:最好(原生支持监听模式)
  • Windows:需要特殊驱动
  • macOS:部分型号支持

✅ 方案二:ESP32 本身开启 Sniffer(进阶)

ESP32 可以工作在Promiscuous Mode,用于监听周围 WiFi 帧(适合分析环境,但抓不到加密数据内容)。


三、Wireshark 基础设置(一步到位)

1️⃣ 开启监听模式(Linux 示例)

iplinksetwlan0 down iw dev wlan0settypemonitoriplinksetwlan0 up

启动 Wireshark,选择wlan0接口。


2️⃣ 设置监听信道(否则什么都抓不到)

iw dev wlan0setchannel6

⚠️必须和 ESP32 所连 AP 的信道一致


四、先抓一个“完整的 ESP32 入网过程”

推荐测试流程:

  1. 关闭 ESP32
  2. 开始抓包
  3. 上电 ESP32
  4. 停止抓包

你会看到以下典型帧序列:


🔍 阶段 1:扫描(Discovery)

关键帧:

  • Beacon
  • Probe Request
  • Probe Response

Wireshark 过滤器:

wlan.fc.type_subtype == 0x08 # Beacon wlan.fc.type_subtype == 0x04 # Probe Request

你可以确认:

  • ESP32 是否在主动扫描
  • AP 是否正常回应

🔐 阶段 2:认证 & 关联

关键帧:

  • Authentication
  • Association Request / Response

过滤器:

wlan.fc.type_subtype == 0x0b # Auth wlan.fc.type_subtype == 0x00 # Assoc Req

如果卡在这里,通常是:

  • 加密模式不匹配
  • AP 不支持 ESP32 的能力集

🔑 阶段 3:WPA2/WPA3 四次握手

你会看到:

  • Message 1 / 2 / 3 / 4
  • Key Information 字段

过滤器:

eapol

重点观察:

  • 是否 4 条消息都齐全
  • 是否频繁重传
  • Message 3 丢失最常见

🌐 阶段 4:DHCP 获取 IP

典型序列:

DHCP Discover DHCP Offer DHCP Request DHCP ACK

过滤器:

bootp

如果你看到:

  • Discover 发出但没 Offer
    👉 路由器 DHCP 表满 / 忙

五、看懂 WiFi 帧的几个关键字段

1️⃣ RSSI(信号强度)

在 Radiotap Header 中:

  • -30 ~ -60 dBm:很好
  • -70 dBm:开始不稳定
  • < -80 dBm:必丢包

2️⃣ Retry 位(判断是否拥塞)

过滤重传帧:

wlan.fc.retry == 1

大量 Retry =
👉 信道拥塞 / 干扰严重 / ACK 丢失


3️⃣ Duration / NAV(虚拟占用)

Duration 值越大,说明信道被占用时间越长
在 IoT 密集场景中非常常见。


4️⃣ ACK 是否正常返回

ACK 帧过滤:

wlan.fc.type_subtype == 0x1d

无 ACK =
👉 数据可能白发了


六、抓包分析 ESP32 常见问题案例


❌ 案例 1:ESP32 偶尔连不上 WiFi

抓包现象:

  • Probe 正常
  • Auth 正常
  • Message 3 重发多次

结论:
👉 WPA2 四次握手中丢包
👉 信号弱 / 干扰


❌ 案例 2:已连 WiFi 但无 IP

抓包现象:

  • DHCP Discover 重复
  • 无 Offer

结论:
👉 DHCP 服务问题
👉 路由器连接数已满


❌ 案例 3:MQTT 延迟巨大

抓包现象:

  • TCP 重传多
  • Retry 位频繁
  • ACK 延迟

结论:
👉 CSMA/CA 退避严重
👉 2.4GHz 拥堵


七、ESP32 抓包调试黄金法则

✔ 先抓入网包
✔ 再抓业务包
✔ 用过滤器缩小范围
✔ 不要一上来就看 TCP
✔ 永远关注 Retry 和 RSSI


八、推荐 Wireshark 过滤器速查表

目的过滤器
Beaconwlan.fc.type_subtype == 0x08
Probewlan.fc.type_subtype == 0x04
Authwlan.fc.type_subtype == 0x0b
WPA 握手eapol
DHCPbootp
重传wlan.fc.retry == 1
ACKwlan.fc.type_subtype == 0x1d

九、总结:看懂 WiFi 的语言,你就赢了一半

一句工程真理送给你:

WiFi 问题的答案,不在代码里,而在数据包里。

当你真正学会用 Wireshark 看 ESP32 的通信行为:

  • 掉线不再是玄学
  • 连接失败有据可查
  • 网络优化有明确方向

这也是从“能写代码”到“能做产品”的分水岭。


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/17 8:45:00

大型C项目的头文件管理:3招解决“重复包含”与“依赖混乱”

大型C项目的头文件管理:3招解决“重复包含”与“依赖混乱” 做过大型C项目开发或维护的你,大概率踩过头文件的“连环坑”:编译时突然弹出一堆“重定义”错误,排查半天发现是同一个头文件被重复包含;项目迭代到中后期,头文件之间形成“闭环依赖”,改一个底层头文件的宏定…

作者头像 李华
网站建设 2026/9/15 20:16:18

15_嵌入式C与控制理论入门:控制算法的定点数优化与精度平衡

嵌入式C与控制理论入门:控制算法的定点数优化与精度平衡 做嵌入式控制开发的你,大概率遇到过这种窘境:精心设计的PID、模糊控制算法,在PC上用浮点数仿真时效果拉满,可移植到STM32、TI C2000等MCU后,要么运算速度慢到突破实时控制阈值,要么因MCU缺少浮点运算单元(FPU)导…

作者头像 李华
网站建设 2026/9/17 1:44:24

【值得收藏】Agent-Graph:构建强大多智能体系统的完整教程

Agent-Graph是基于上下文工程的多智能体系统&#xff0c;提供Agent管理、Workflow可视化编排、Subagent任务分解、双层记忆架构、MCP集成等核心功能。支持团队协作&#xff0c;可分享对话并导出为训练数据&#xff0c;适合构建复杂AI工作流。项目开源&#xff0c;提供完整文档和…

作者头像 李华
网站建设 2026/9/15 20:10:47

华为HCCDP-GaussDB工作级开发者题库(带详细解析)

同学们有考HCCDP-GaussDB工作级开发者的没&#xff1f;整理了一部分题库&#xff0c;需要的再学可以一起学习。完整的题库已经发布在“题主”小程序上了&#xff0c;可以自己去找一下。以下哪一项系统视图可用于定位单个session在特性级上的内存问题&#xff1f;A、SESSION_STA…

作者头像 李华
网站建设 2026/9/17 7:18:38

大模型学习宝典:从小白到专家的进阶之路,建议收藏反复阅读

文章介绍了大模型的基本概念、分类和应用场景&#xff0c;详细解释了大模型的训练过程&#xff08;预训练和微调&#xff09;&#xff0c;分析了当前"百模大战"的发展趋势及面临的挑战&#xff0c;包括失业、版权、偏见、犯罪和能耗等问题。大模型作为AI的重要发展方…

作者头像 李华
网站建设 2026/9/15 17:20:58

收藏!裸辞转型AI大模型,我的完整攻略与经验分享

本文分享裸辞转型AI大模型的成功经历&#xff0c;包括转行动机、系统学习准备和面试经验。强调深入理解底层原理、做好经济心态准备、针对性优化简历和保持良好心态的重要性&#xff0c;为想进入AI领域的人提供实用参考。今年很重要的一个经历就是裸辞然后顺利转行到了AI大模型…

作者头像 李华