一、概述
WiFi的数据通信基于802.11协议进行,无线AP在工作时会定时向空中发送beacon数据包,基站(STA)从beacon中解析出AP的名称、加密方式等信息,从而发起连接。
二、WiFi连接路由器的详细过程
WiFi连接过程主要可以分为3部分:扫描、认证和关联:
2.1、扫描过程
2.1.1、主动扫描
WiFi的的扫描过程分为主动扫描和被动扫描。主动扫描情况下,STA会依次向各个信道广播发送探寻请求(Probe Request)管理帧,AP在收到Probe Request帧之后会定向回复探寻响应帧(Probe Ack),其中包含AP的SSID、MAC地址、加密方式等信息,之后STA根据路由器返回的信息进行连接和认证。
主动扫描有助于STA更快的发现周围的AP,但同时也会带来更高的功耗。
路由器返回的Probe Rsp中携带的信息和Beacon帧大同小异,下图是使用omipeek抓到的Probe Rsp包在wireshark中解析到的信息:
2.1.2、被动扫描
被动扫描,STA被动接收AP发送的Beacon管理帧,并且只会向无线AP所在信道发送Probe Request,它和主动扫描相比的优势在于可以降低功耗。
使用wireshark可以看到Beacon帧的结构如下图:
Beacon帧是广播,而Probe Response帧则是针对特定请求返回的单播数据。
2.2、认证
路由器的beacon帧和其返回的Probe Response帧中都包含路由器的SSID、加密方式等信息,STA在获得这些信息之后,使用提前设置好的密码按照正确的加密方式即可发起认证过程。
认证过程主要由认证请求(Auth Request)和认证响应(Auth Response)两部分组成:
- STA向AP发起认证请求:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gJuQFHkq-1676278372975)(https://note.youdao.com/yws/res/6/WEBRESOURCEdd8b4d68d00522c3fc3b900bc1f7e366)] - AP响应认证请求:
认证请求和认证响应的帧格式类似,但是源地址和目的地址不同,认证请求的源地址是STA的地址,认证响应的源地址是AP地址。
2.3、关联
认证之后,STA向AP发送连接请求(Association Request),AP响应连接请求(Association Response)。
- Association Request:
- Association Response
参考:https://www.modb.pro/db/146335