💖 点赞 + 收藏 + 关注,WiFi 嵌入式物联网开发系列持续更新!
上一章我们学完了 802.11 三大帧结构(管理帧、控制帧、数据帧)。
本章我们结合真实抓包链路,完整复现:ESP32/嵌入式设备从开机扫描 → 探测AP → 链路认证 → 关联入网 的全过程。
本章是整个WiFi调试的核心分水岭:
看懂这一章,你就彻底具备 WiFi故障定位能力。
以后遇到:扫描不到WiFi、搜信号弱、连不上、关联失败、被路由秒踢、握手超时、反复重连,直接通过链路步骤精准定位根因,不再盲调代码。
一、整体流程总览(标准 6 步入网模型)
所有 802.11 设备(手机、Linux、ESP32)接入WiFi,必须严格遵守 6 步流程,缺一不可:
信道扫描:STA遍历信道、探测周围AP
网络选择:STA择优BSS(信号最强、匹配SSID)
802.11 链路认证:开放系统两步握手
关联请求/响应:STA入网注册、AP分配网络资源
WPA2 四次握手:密钥协商、加密通道建立(加密WiFi才有)
DHCP 动态获取IP:真正联网、业务通信开始
重点区分(90%新手误区):
-
链路认证:802.11 二层基础认证(无密码)
-
四次握手:WPA2/WPA3 加密密钥认证(输密码就是为了这一步)
二、第一步:WiFi 扫描全过程(主动扫描 + 被动扫描)
嵌入式设备开机不会直接连路由,必须先扫描环境中的所有BSS网络。扫描分为两种模式。
1. 被动扫描 Passive Scan
原理:设备不主动发任何报文,静静监听空中 Beacon 信标帧。
AP默认每 100ms 广播一次 Beacon,携带SSID、信道、加密方式、信号能力。
特点:
-
功耗低、无射频发射
-
速度慢,需要等待AP广播
2. 主动扫描 Active Scan(ESP32 默认方式)
原理:STA 在所有2.4G信道轮流切换,广播 Probe Request 探测请求帧。
周围所有收到报文的AP,立即回复 Probe Response 探测响应帧。
抓包特征:
-
源MAC:ESP32 设备MAC
-
目的MAC:FF:FF:FF:FF:FF:FF(广播地址)
-
帧类型:管理帧 – Probe Request
工程核心现象:
我们手机/ESP32看到的WiFi列表 = Beacon帧 + ProbeResponse帧汇总结果。
3. 扫描阶段常见故障(量产高频)
故障1:设备搜不到路由器WiFi
-
路由器隐藏SSID(仅主动扫描可探测)
-
信道被国家码限制(部分信道ESP32禁用)
-
射频干扰严重,Probe报文丢包
故障2:扫描列表信号忽强忽弱
多BSS同名ESS组网、信道频繁切换、邻道干扰导致。
三、第二步:链路认证过程(802.11 开放认证)
扫描完成、选定目标AP后,设备正式发起入网第一步:Authentication 链路认证。
目前所有家用/工业路由统一使用:Open System 开放认证(两步极简握手)。
抓包完整交互
报文1:STA → AP 认证请求
携带认证算法编号:0(开放认证)
报文2:AP → STA 认证响应
StatusCode=0:认证成功
重点:这一步不需要WiFi密码,只是二层链路合法性校验。
工程坑点
极少数老旧路由开启 Shared Key 共享密钥认证(WEP),现代ESP32/Linux设备不兼容,会直接认证失败、无法入网。
四、第三步:关联流程(真正入网注册)
认证通过后,设备立即发起 Association 关联流程,这是入网最关键的一步。
关联 = 设备正式加入BSS网络
1. Association Request(STA -> AP)
设备向AP提交自己的全部能力清单:
-
支持信道带宽(20M/40M)
-
支持WiFi速率集
-
HT/MIMO能力
-
功耗管理模式
2. Association Response(AP -> STA)
AP返回入网结果,携带核心字段:StatusCode
-
StatusCode=0:关联成功,正式加入网络
-
非0值:关联拒绝(工程排错核心)
常见关联失败状态码
-
17:能力不兼容(带宽、HT模式不匹配)
-
18:AP连接数已满、资源不足
-
29:安全策略不匹配
实战结论:只要关联失败,设备永远无法进入握手和IP获取阶段。
五、第四步:WPA2 四次握手(加密网络专属)
关联成功后,加密WiFi立即启动 4-Way Handshake 四次握手。
这一步才是验证WiFi密码、协商加密密钥的核心步骤。
所有握手报文,全部封装在 加密数据帧 中传输。
四次握手核心作用
验证STA与AP密码是否一致
协商会话临时密钥 PTK
同步加密参数、防止重放攻击
握手失败工程原因
-
WiFi密码错误(最常见)
-
报文干扰丢包导致握手超时
-
路由加密模式异常(WPA/WPA2混合模式兼容问题)
抓包特征:握手中断后,AP会发送 Deauth Reason 15 踢除设备。
六、第五步:DHCP 获取IP(真正联网)
密钥协商完成后,二层链路完全建立,设备开始三层网络初始化:
DHCP 流程:DISCOVER → OFFER → REQUEST → ACK
拿到IP后,设备才算真正联网,可以开始 TCP/UDP/MQTT 业务通信。
很多新手误区:
WiFi显示“已连接无网络”,就是 802.11链路正常、DHCP失败,和WiFi帧无关,属于上层网络问题。
七、全网链路故障定位黄金流程(工程师必杀技)
看完本章,你可以直接套用这套逐级排查法,解决所有WiFi连不上问题:
1. 扫不到WiFi
排查:Probe Request 是否发出、信道是否匹配、路由是否隐藏SSID
2. 扫描到但连不上
排查:链路认证是否通过、关联StatusCode是否报错
3. 能连上瞬间断开
排查:四次握手是否超时、Deauth原因码(重点15、4、2)
4. 连上无网络
排查:DHCP服务、IP冲突、路由网关策略
八、本章核心总结
-
WiFi入网严格分为:扫描 → 认证 → 关联 → 握手 → 获取IP 五步;
-
扫描依靠 Probe/Beacon,关联决定是否成功入网,握手决定加密合法性;
-
所有断连、拒绝入网问题,都可以通过 StatusCode / ReasonCode 精准定位;
-
学会抓包看流程,是从“只会写代码”到“工业级调试”的关键跨越。
下一章预告:
第05章 WiFi加密原理:开放 / WEP/WPA2/WPA3 安全机制与漏洞,彻底吃透物联网WiFi安全体系、常见破解风险与量产安全选型。
💖 点赞 + 收藏 + 关注,WiFi 嵌入式物联网开发系列持续更新!
![[开源]基于STM32单片机WIFI智能窗户系统 Onenet云平台设计HK-003-171主机测评](https://www.171host.com/wp-content/uploads/2026/09/20260903070616-6a991c6823886-220x150.jpg)




