接入点(AP)其实是网络上桥接移动终端(例如手机、电脑等)和其他设备之间流量的网桥。在移动终端可以通过AP发送流量之前,它必须处于适当的连接状态。
三种802.11的连接状态是:
- 未认证或关联
- 已认证但尚未关联
- 已认证和关联
移动终端在转发之前,必须处于经过认证和关联的状态。
移动终端和AP将交换一系列802.11管理帧,以便到达认证和关联状态。

关联过程:
1、移动终端发送探测请求(probe requests)以发现其邻近范围内的802.11网络。探测请求通告移动终端支持的数据速率和802.11能力,例如802.11n。因为探测请求是从移动终端发送到目标地址为ff:ff:ff:ff:ff:ff的BSSID的L2请求,所有接收它的AP都将响应。

2.接收探测请求的AP查看移动终端是否具有至少一个公共支持的数据速率。如果它们具有兼容的数据速率,则发送探测响应(probe response),通告SSID (无线网络名称) 、支持的数据速率、加密类型 (如果需要) 以及AP的其他802.11能力。

移动终端从接收到的探测响应中选择兼容的网络。兼容性可以基于加密类型。一旦发现兼容的网络,移动终端将尝试与兼容的AP进行低级802.11认证。注意,802.11认证与WPA2或802.1X认证机制不同,后者在移动终端已认证和关联之后出现。最初802.11验证帧是为WEP加密而设计的,但是这种安全方案已被证明是不安全的,因此不推荐使用。因此,802.11身份验证帧是开放的,只要符合802.11标准,认证即可通过。简单描述过程就是终端发包说:我要认证,AP回复:认证通过。
3.移动终端向AP发送低级802.11认证帧(authentication),将认证设置为打开,并将序列设置为0x0001。

4.AP接收认证帧,并响应设置为打开的认证帧的移动终端,指示0x0002的序列。

此时,移动终端已通过身份验证,但尚未关联。如果AP从未经身份验证的终端自动接收到除身份验证或探测请求以外的任何帧,则它将以取消身份验证帧进行响应(也就是发Deauthentication报文),从而将移动设备置于未经身份验证的未关联状态。该终端必须从低级身份验证步骤开始关联过程。
5.一旦移动站确定要与哪个AP关联,它将向该AP发送关联请求(association request)。关联请求包含所选择的加密类型 (如果需要) 和其他兼容的802.11功能。
如果AP从经过认证但尚未关联的移动终端接收到帧,则它将以解除关联帧(disassociation)进行响应,将终端置于经过认证但未关联状态。
6.如果关联请求中的属性与AP的能力相匹配,则AP将为移动终端创建关联ID,并以关联响应来响应(association response),以成功消息授予对移动终端的网络访问。

7.现在,移动终端已成功与AP关联,并且可以开始数据传输。
注意: 如果无线网络上需要WPA/WPA2或802.1X身份验证,则在802.11关联完成后进行动态键控(dynamic keying)和身份验证之前,移动终端将无法发送数据。
Wireshark无线802.11抓包过滤参考:
请教下,在AOS10的架构下, 这些报文是在AP本地就处理了是么? 会上送到Central去处理么? 如果不会的话, AP是后来才同步给Central终端表项的是么
关联过程是AP跟终端的交互,其他服务参考https://arubase.club/archives/7144
请教下在WIndows上用wireshark抓802.11的包需要用什么网卡?
windows通常需要外置的USB网卡,可以淘宝看看。或者研究npcap使用,参考https://wiki.wireshark.org/CaptureSetup/WLAN#starting-from-windows-7-npcap