android wifi断开原因分析

最近在解bug的过程中经常遇到密码正确但处于saved的状态,总结原因有已下几种:

1 在ASSOCIATING阶段由于丢包导致ASSOC REJECT

D/WifiMonitor( 924): Event [IFNAME=wlan0 CTRL-EVENT-DISCONNECTED bssid=08:cc:68:9e:ac:20 reason=3 locally_generated=1]
I/wpa_supplicant(23065): wlan0: CTRL-EVENT-ASSOC-REJECT bssid=0e:bd:51:c7:b6:33 status_code=1

2 在4WAY_HANDSHAKE阶段由于密码错误、丢帧或者弱信号丢包导致WRONG_KEY:

密码错误在4WAY_HANDSHAKE阶段中的2/4次握手会显示wrong key。
如果已经连接过则显示

I/wpa_supplicant(19043): wlan0: CTRL-EVENT-SSID-TEMP-DISABLED id=1 ssid="Onetouch Idol 3 (4.7)" auth_failures=1 duration=5 reason=WRONG_KEY。

丢帧导致连接断开:

wlan: [24597:E :PE ] limHandleMissedBeaconInd: 2121: Sending EXIT_BMPS_IND to SME due to Missed beacon from FW

信号弱导致断开:

I/wpa_supplicant(31023): wlan0: CTRL-EVENT-DISCONNECTED bssid=c8:3a:35:2b:71:30 reason=0

E/WifiStateMachine( 821): NETWORK_DISCONNECTION_EVENT in connected state BSSID=c8:3a:35:2b:71:30 RSSI=-89 freq=2437 was debouncing=false reason=0 ajst=0

reason=0表示因为信号弱而断开。

3 4WAY_HANDSHAK成功但DHCP FAILURE

四步握手成功但获取IP地址失败

E/WifiStateMachine(28360): WifiStateMachine DHCP failure count=0

E/WifiConfigStore(28360): message=DHCP FAILURE

4 被AP踢出,这个原因需要sniffer log分析

reason=2,reason=7,reason=15代表被AP踢出,在kernel log中可以找到对应的deauth信息。

I/wpa_supplicant(28064): wlan0: CTRL-EVENT-DISCONNECTED bssid=c4:14:3c:29:47:05 reason=7

wlan: [28055:E :PE ] limProcessDeauthFrame: 144: Received Deauth frame for Addr: 44:a4:2d:52:bc:a5 (mlm state = eLIM_MLM_LINK_ESTABLISHED_STATE, sme state = 12 systemrole = 3) with reason code 7 from c4:14:3c:29:47:05

I/wpa_supplicant(28064): wlan0: CTRL-EVENT-DISCONNECTED bssid=1c:1d:86:e9:e2:85 reason=15

wlan: [28055:E :PE ] limProcessDeauthFrame: 144: Received Deauth frame for Addr: 44:a4:2d:52:bc:a5 (mlm state = eLIM_MLM_LINK_ESTABLISHED_STATE, sme state = 12 systemrole = 3) with reason code 15 from 1c:1d:86:e9:e2:85

I/wpa_supplicant(28064): wlan0: CTRL-EVENT-DISCONNECTED bssid=c4:14:3c:29:47:25 reason=2

wlan: [28055:E :PE ] limProcessDeauthFrame: 144: Received Deauth frame for Addr: 44:a4:2d:52:bc:a5 (mlm state = eLIM_MLM_LINK_ESTABLISHED_STATE, sme state = 12 systemrole = 3) with reason code 2 from c4:14:3c:29:47:25

5 在信号相差5-10rssi的时候会发生roam,roam是在firmware层发生的,不会断开。

I/WifiHAL (28360): event received NL80211_CMD_ROAM, vendor_id = 0x0
I/wpa_supplicant(28064): wlan0: CTRL-EVENT-CONNECTED - Connection to c4:14:3c:29:47:25 completed [id=0 id_str=]
I/WifiHAL (28360): event received NL80211_CMD_ROAM, vendor_id = 0x0
I/wpa_supplicant(28064): wlan0: CTRL-EVENT-CONNECTED - Connection to c4:14:3c:29:47:05 completed [id=0 id_str=]
I/WifiHAL (28360): event received NL80211_CMD_ROAM, vendor_id = 0x0
I/wpa_supplicant(28064): wlan0: CTRL-EVENT-CONNECTED - Connection to 1c:1d:86:e9:e2:85 completed [id=0 id_str=]

6 在打开auoto join的情况下,也会发生roam,也不会断开

E/WifiStateMachine(28360): WifiStateMachine shouldSwitchNetwork txSuccessRate=0.00 rxSuccessRate=0.00 delta 1000 -> 1000
I/wpa_supplicant(28064): wlan0: CTRL-EVENT-CONNECTED - Connection to 6c:99:89:b0:01:85 completed [id=0 id_str=]
I/wpa_supplicant(28064): wlan0: CTRL-EVENT-DISCONNECTED bssid=6c:99:89:b0:01:85 reason=0
E/WifiStateMachine(28360): WifiStateMachine shouldSwitchNetwork txSuccessRate=0.00 rxSuccessRate=0.00 delta 1000 -> 1000

7 802.11 Association Status Codes

Code 802.11 definition Explanation
0 Successful
1 Unspecified failure For example : when there is no ssid specified in an association request
10 Cannot support all requested capabilities in the Capability Information field Example Test: Reject when privacy bit is set for WLAN not requiring security
11 Reassociation denied due to inability to confirm that association exists NOT SUPPORTED
12 Association denied due to reason outside the scope of this standard Example : When controller receives assoc from an unknown or disabled SSID
13 Responding station does not support the specified authentication algorithm For example, MFP is disabled but was requested by the client.
14 Received an Authentication frame with authentication transaction sequence number out of expected sequence If the authentication sequence number is not correct.
15 Authentication rejected because of challenge failure
16 Authentication rejected due to timeout waiting for next frame in sequence
17 Association denied because AP is unable to handle additional associated stations Will happen if you run out of AIDs on the AP; so try associating a large number of stations.
18 Association denied due to requesting station not supporting all of the data rates in the BSSBasicRateSet parameter Will happen if the rates in the assoc request are not in the BasicRateSet in the beacon.
19 Association denied due to requesting station not supporting the short preamble option NOT SUPPORTED
20 Association denied due to requesting station not supporting the PBCC modulation
option NOT SUPPORTED
21 Association denied due to requesting station not supporting the Channel Agility option NOT SUPPORTED
22 Association request rejected because Spectrum Management capability is required NOT SUPPORTED
23 Association request rejected because the information in the Power Capability element is unacceptable NOT SUPPORTED
24 Association request rejected because the information in the Supported Channels element is unacceptable NOT SUPPORTED
25 Association denied due to requesting station not supporting the Short Slot Time option NOT SUPPORTED
26 Association denied due to requesting station not supporting the DSSS-OFDM option NOT SUPPORTED
27-31 Reserved NOT SUPPORTED
32 Unspecified, QoS-related failure NOT SUPPORTED
33 Association denied because QAP has insufficient bandwidth to handle another QSTA NOT SUPPORTED
34 Association denied due to excessive frame loss rates and/or poor conditions on current operating channel NOT SUPPORTED
35 Association (with QBSS) denied because the requesting STA does not support the QoS facility If the WMM is required by the WLAN and the client is not capable of it, the association will get rejected.
36 Reserved in 802.11 This is used in our code ! There is no blackbox test for this status code.
37 The request has been declined This is not used in assoc response; ignore
38 The request has not been successful as one or more parameters have invalid values NOT SUPPORTED
39 The TS has not been created because the request cannot be honored; however, a suggested TSPEC is provided so that the initiating QSTA may attempt to set another TS with the suggested changes to the TSPEC NOT SUPPORTED
40 Invalid information element, i.e., an information element defined in this standard for which the content does not meet the specifications in Clause 7 Sent when Aironet IE is not present for a CKIP WLAN
41 Invalid group cipher Used when received unsupported Multicast 802.11i OUI Code
42 Invalid pairwise cipher
43 Invalid AKMP
44 Unsupported RSN information element version If you put anything but version value of 1, you will see this code.
45 Invalid RSN information element capabilities If WPA/RSN IE is malformed, such as incorrect length etc, you will see this code.
46 Cipher suite rejected because of security policy NOT SUPPORTED
47 The TS has not been created; however, the HC may be capable of creating a TS, in response to a request, after the time indicated in the TS Delay element NOT SUPPORTED
48 Direct link is not allowed in the BSS by policy NOT SUPPORTED
49 Destination STA is not present within this QBSS NOT SUPPORTED
50 The Destination STA is not a QSTA NOT SUPPORTED
51 Association denied because the ListenInterval is too large NOT SUPPORTED
200(0xC8) Unspecified, QoS-related failure. Not defined in IEEE, defined in CCXv4 Unspecified QoS Failure. This will happen if the Assoc request contains more than one TSPEC for the same AC.
201(0xC9) TSPEC request refused due to AP’s policy configuration (e.g., AP is configured to deny all TSPEC requests on this SSID). A TSPEC will not be suggested by the AP for this reason code. Not defined in IEEE, defined in CCXv4 This will happen if a TSPEC comes to a WLAN which has lower priority than the WLAN priority settings. For example a Voice TSPEC coming to a Silver WLAN. Only applies to CCXv4 clients.
202(0xCA) Association Denied due to AP having insufficient bandwidth to handle a new TS. This cause code will be useful while roaming only. Not defined in IEEE, defined in CCXv4
203(0xCB) Invalid Parameters. The request has not been successful as one or more TSPEC parameters in the request have invalid values. A TSPEC SHALL be present in the response as a suggestion. Not defined in IEEE, defined in CCXv4 This happens in cases such as PHY rate mismatch. If the TSRS IE contains a phy rate not supported by the controller, for example. Other examples include sending a TSPEC with bad parameters, such as sending a date rate of 85K for a narrowband TSPEC.

802.11 Deauth Reason Codes

When running a client debug, this code will match the ReasonCode from the output: "Scheduling mobile for deletion with delete Reason x, reasonCode y"

Code 802.11 definition Explanation
0 Reserved NOT SUPPORTED
1 Unspecified reason TBD
2 Previous authentication no longer valid NOT SUPPORTED
3 station is leaving (or has left) IBSS or ESS NOT SUPPORTED
4 Disassociated due to inactivity Do not send any data after association;
5 Disassociated because AP is unable to handle all currently associated stations TBD
6 Class 2 frame received from nonauthenticated station NOT SUPPORTED
7 Class 3 frame received from nonassociated station NOT SUPPORTED
8 Disassociated because sending station is leaving (or has left) BSS TBD
9 Station requesting (re)association is not authenticated with responding station NOT SUPPORTED
10 Disassociated because the information in the Power Capability element is unacceptable NOT SUPPORTED
11 Disassociated because the information in the Supported Channels element is unacceptable NOT SUPPORTED
12 Reserved NOT SUPPORTED
13 Invalid information element, i.e., an information element defined in this standard for which the content does not meet the specifications in Clause 7 NOT SUPPORTED
14 Message integrity code (MIC) failure NOT SUPPORTED
15 4-Way Handshake timeout NOT SUPPORTED
16 Group Key Handshake timeout NOT SUPPORTED
17 Information element in 4-Way Handshake different from (Re)Association Request/Probe Response/Beacon frame NOT SUPPORTED
18 Invalid group cipher NOT SUPPORTED
19 Invalid pairwise cipher NOT SUPPORTED
20 Invalid AKMP NOT SUPPORTED
21 Unsupported RSN information element version NOT SUPPORTED
22 Invalid RSN information element capabilities NOT SUPPORTED
23 IEEE 802.1X authentication failed NOT SUPPORTED
24 Cipher suite rejected because of the security policy NOT SUPPORTED
25-31 Reserved NOT SUPPORTED
32 Disassociated for unspecified, QoS-related reason NOT SUPPORTED
33 Disassociated because QAP lacks sufficient bandwidth for this QSTA NOT SUPPORTED
34 Disassociated because excessive number of frames need to be acknowledged, but are not acknowledged due to AP transmissions and/or poor channel conditions NOT SUPPORTED
35 Disassociated because QSTA is transmitting outside the limits of its TXOPs NOT SUPPORTED
36 Requested from peer QSTA as the QSTA is leaving the QBSS (or resetting) NOT SUPPORTED
37 Requested from peer QSTA as it does not want to use the mechanism NOT SUPPORTED
38 Requested from peer QSTA as the QSTA received frames using the mechanism for which a setup is required NOT SUPPORTED
39 Requested from peer QSTA due to timeout NOT SUPPORTED
40 Peer QSTA does not support the requested cipher suite NOT SUPPORTED
46-65535 46--65 535 Reserved NOT SUPPORTED
98 Cisco defined TBD
99 Cisco defined Used when the reason code sent in a deassoc req or deauth by the client is invalid – invalid length, invalid value etc Example: Send a Deauth to the AP with the reason code to be invalid, say zero

你可能感兴趣的:(android wifi断开原因分析)