展开菜单
首页 精品内容 本月促销 装机必备 Windows PDF教程 macOS软件 IOS软件 Android AI 专题
全部分类

当前位置:

首页 > 编程开发 > Android普通网络和EAP网络的WiFi连接完整过程

Android普通网络和EAP网络的WiFi连接完整过程

Android Studio macOS版
Android Studio macOS版

Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。

Mac 2026-10-13
数据库 编程开发 服务器管理 集成开发环境
立即下载

Android系统WiFi连接依赖wpa_supplicant等组件协同工作。普通网络(WPA-PSK)连接包括扫描、关联、4-WayHandshake及GroupHandshake阶段。EAP网络(如EAP-PEAP)在关联后增加EAP认证流程。通过wpa_supplicant日志可清晰追踪各阶段状态变化,并定位密码错误、认证失败等常见问题。

本文目录

    一、前言

    Android系统的WiFi连接,说起来其实是个挺复杂的流程,涉及底层驱动、协议栈、上层服务等多个环节的协同配合。其中,wpa_supplicant 是底层核心组件,专门负责WiFi的认证、加密和连接管理。通过分析它的日志,能帮我们看清WiFi连接的完整脉络,以及在各种失败场景下的具体原因——到底是密码输错了,还是网络压根不存在,日志里都有迹可循。

    Android普通网络和EAP网络的WiFi连接完整过程

    上层日志主要看WifiService和WifiConnectivityManager,可以观察连接过程;而下层日志看wpa_supplicant,则能定位到更底层的细节。比如,某些情况下根本没有触发扫描或连接,这种问题在上层日志里可能不够明显,但底层日志一查便知。

    本文会详细介绍普通网络(WPA-PSK)和EAP网络(EAP-TLS/EAP-PEAP)的WiFi连接完整过程,并分析密码错误、认证错误、WiFi不存在等常见失败场景的日志特征。希望能帮你快速上手底层日志分析。

    二、普通网络WiFi连接过程

    普通网络通常指使用WPA/WPA2-PSK加密的WiFi,连接过程相对简单,主要分为扫描、关联、认证三个阶段。

    1、扫描阶段

    扫描是WiFi连接的第一步,设备主动搜索周围的WiFi信号。

    07-22 22:19:04.234  6635  6657 D wpa_supplicant: nl80211: Drv Event 33 (NL80211_CMD_TRIGGER_SCAN) received for wlan0
    07-22 22:19:04.234  6635  6657 D wpa_supplicant: wlan0: nl80211: Scan trigger
    07-22 22:19:04.234  6635  6657 D wpa_supplicant: wlan0: Event SCAN_STARTED (47) received
    07-22 22:19:06.156  6635  6657 D wpa_supplicant: nl80211: Drv Event 34 (NL80211_CMD_NEW_SCAN_RESULTS) received for wlan0
    07-22 22:19:06.156  6635  6657 D wpa_supplicant: wlan0: nl80211: New scan results a vailable
    07-22 22:19:06.157  6635  6657 D wpa_supplicant: nl80211: Received scan results (76 BSSes)

    关键日志说明:

    日志信息说明
    NL80211_CMD_TRIGGER_SCAN触发扫描命令
    Event SCAN_STARTED (47)扫描开始事件
    NL80211_CMD_NEW_SCAN_RESULTS新扫描结果可用
    Received scan results (76 BSSes)收到76个BSS扫描结果

    2、关联阶段

    扫描完成后,设备会选择一个目标WiFi网络并发起关联请求。

    07-22 22:19:04.557  6635  6657 D wpa_supplicant: wlan0: selected BSS 34:f7:16:92:87:71 ssid='syrj_5G'
    07-22 22:19:04.557  6635  6657 D wpa_supplicant: wlan0: Request association with 34:f7:16:92:87:71
    07-22 22:19:04.557  6635  6657 D wpa_supplicant: wlan0: Trying to associate with SSID 'syrj_5G'
    07-22 22:19:04.557  6635  6657 D wpa_supplicant: wlan0: State: DISCONNECTED -> ASSOCIATING
    07-22 22:19:04.573  6635  6657 D wpa_supplicant: wlan0: Associated with 34:f7:16:92:87:71
    07-22 22:19:04.573  6635  6657 D wpa_supplicant: wlan0: State: ASSOCIATING -> ASSOCIATED

    关键日志说明:

    日志信息说明
    selected BSS ... ssid='xxx'选择目标BSS
    Request association with ...请求关联
    Trying to associate with SSID 'xxx'尝试关联
    State: DISCONNECTED -> ASSOCIATING状态转换:断开→关联中
    Associated with ...关联成功
    State: ASSOCIATING -> ASSOCIATED状态转换:关联中→已关联

    3、认证阶段(4-Way Handshake)

    关联成功后,紧接着就是4-Way Handshake认证,这是WPA/WPA2-PSK的核心认证过程。

    07-22 22:19:04.573  6635  6657 D wpa_supplicant: wlan0: WPA: RX message 1 of 4-Way Handshake
    07-22 22:19:04.573  6635  6657 D wpa_supplicant: wlan0: WPA: TX message 2 of 4-Way Handshake
    07-22 22:19:04.574  6635  6657 D wpa_supplicant: wlan0: WPA: RX message 3 of 4-Way Handshake
    07-22 22:19:04.574  6635  6657 D wpa_supplicant: wlan0: WPA: TX message 4 of 4-Way Handshake
    07-22 22:19:04.574  6635  6657 D wpa_supplicant: wlan0: WPA: Key negotiation completed with 34:f7:16:92:87:71 [PTK=CCMP GTK=CCMP]

    关键日志说明:

    日志信息说明
    WPA: RX message 1 of 4-Way Handshake收到第1个握手消息
    WPA: TX message 2 of 4-Way Handshake发送第2个握手消息
    WPA: RX message 3 of 4-Way Handshake收到第3个握手消息
    WPA: TX message 4 of 4-Way Handshake发送第4个握手消息
    Key negotiation completed ...密钥协商完成

    4、Group Handshake阶段

    4-Way Handshake完成后,还需要进行Group Handshake,获取组密钥(GTK)。

    07-22 22:19:04.575  6635  6657 D wpa_supplicant: wlan0: WPA: RX message 1 of Group Handshake
    07-22 22:19:04.575  6635  6657 D wpa_supplicant: wlan0: WPA: TX message 2 of Group Handshake
    07-22 22:19:04.575  6635  6657 D wpa_supplicant: wlan0: State: ASSOCIATED -> COMPLETED

    关键日志说明:

    日志信息说明
    WPA: RX message 1 of Group Handshake收到Group Handshake第1个消息
    WPA: TX message 2 of Group Handshake发送Group Handshake第2个消息
    State: ASSOCIATED -> COMPLETED状态转换:已关联→连接完成

    5、连接成功

    07-22 22:19:04.575  6635  6657 I wpa_supplicant: wlan0: CTRL-EVENT-CONNECTED - Connection to 34:f7:16:92:87:71 completed [id=0 id_str=]

    关键日志说明:

    日志信息说明
    CTRL-EVENT-CONNECTED连接成功事件
    Connection to ... completed连接完成

    普通网络连接完整流程图

    扫描触发 (SCAN_STARTED)
          ↓
    扫描完成 (NEW_SCAN_RESULTS)
          ↓
    选择BSS (selected BSS)
          ↓
    请求关联 (Request association)
          ↓
    关联中 (ASSOCIATING)
          ↓
    关联成功 (ASSOCIATED)
          ↓
    4-Way Handshake (消息1→2→3→4)
          ↓
    密钥协商完成 (Key negotiation completed)
          ↓
    Group Handshake (消息1→2)
          ↓
    连接完成 (COMPLETED)
          ↓
    CTRL-EVENT-CONNECTED

    三、EAP网络WiFi连接过程

    EAP网络(如EAP-TLS、EAP-PEAP)是企业级WiFi,连接过程比普通网络复杂不少,主要在关联成功后多了一个EAP认证阶段。

    1、扫描阶段(与普通网络相同)

    07-21 10:42:53.884 26447 26447 D wpa_supplicant: nl80211: Drv Event 33 (NL80211_CMD_TRIGGER_SCAN) received for wlan0
    07-21 10:42:53.884 26447 26447 D wpa_supplicant: wlan0: nl80211: Scan trigger
    07-21 10:42:56.806 26447 26447 D wpa_supplicant: nl80211: Drv Event 34 (NL80211_CMD_NEW_SCAN_RESULTS) received for wlan0
    07-21 10:42:56.806 26447 26447 D wpa_supplicant: wlan0: nl80211: New scan results a vailable

    2、关联阶段(与普通网络相同)

    07-21 10:42:54.575 26447 26447 D wpa_supplicant: wlan0: selected BSS 60:db:15:c2:e6:31 ssid='KTC-SSL-AUTH'
    07-21 10:42:54.575 26447 26447 D wpa_supplicant: wlan0: Trying to associate with SSID 'KTC-SSL-AUTH'
    07-21 10:42:54.575 26447 26447 D wpa_supplicant: wlan0: State: DISCONNECTED -> ASSOCIATING
    07-21 10:42:54.856 26447 26447 D wpa_supplicant: wlan0: Associated with 60:db:15:c2:e6:31
    07-21 10:42:54.856 26447 26447 D wpa_supplicant: wlan0: State: ASSOCIATING -> ASSOCIATED

    3、EAP认证阶段

    这是EAP网络特有的阶段,根据EAP类型不同,认证流程有所差异。下面先看EAP-PEAP的流程。

    EAP-PEAP认证流程

    07-21 10:42:54.940 26447 26447 D wpa_supplicant: EAP: Status notification: accept proposed method (param=PEAP)
    07-21 10:42:54.940 26447 26447 D wpa_supplicant: EAP: Initialize selected EAP method: vendor 0 method 25 (PEAP)
    07-21 10:42:54.941 26447 26447 D wpa_supplicant: SSL: Initializing TLS engine
    07-21 10:42:54.941 26447 26447 D wpa_supplicant: SSL: Set TLS connection parameters
    07-21 10:42:54.942 26447 26447 D wpa_supplicant: EAP-PEAP: Start PEAP
    07-21 10:42:54.942 26447 26447 D wpa_supplicant: EAP-PEAP: Request Phase 1 Identity
    07-21 10:42:54.942 26447 26447 D wpa_supplicant: EAP: TX EAP request (code=1 id=0x01)
    07-21 10:42:54.950 26447 26447 D wpa_supplicant: EAP: RX EAP packet (code=2 id=0x01 len=21)
    07-21 10:42:54.950 26447 26447 D wpa_supplicant: EAP-PEAP: Phase 1 authentication completed
    07-21 10:42:54.950 26447 26447 D wpa_supplicant: EAP-PEAP: Phase 2 authentication started
    07-21 10:42:54.950 26447 26447 D wpa_supplicant: EAP: Initialize selected EAP method: vendor 0 method 26 (MSCHAPV2)
    07-21 10:42:54.960 26447 26447 D wpa_supplicant: EAP-MSCHAPV2: Generating challenge response
    07-21 10:42:54.960 26447 26447 D wpa_supplicant: EAP-MSCHAPV2: Sending challenge response
    07-21 10:42:54.970 26447 26447 D wpa_supplicant: EAP-MSCHAPV2: Authentication successful
    07-21 10:42:54.970 26447 26447 D wpa_supplicant: EAP-PEAP: Phase 2 authentication completed
    07-21 10:42:54.970 26447 26447 D wpa_supplicant: EAP: EAP authentication completed successfully

    EAP-PEAP关键日志说明:

    日志信息说明
    EAP: Initialize selected EAP method: vendor 0 method 25 (PEAP)初始化PEAP方法
    SSL: Initializing TLS engine初始化TLS引擎
    EAP-PEAP: Start PEAP开始PEAP认证
    EAP-PEAP: Request Phase 1 Identity请求Phase 1身份
    EAP-PEAP: Phase 1 authentication completedPhase 1认证完成
    EAP-PEAP: Phase 2 authentication started开始Phase 2认证
    EAP: Initialize selected EAP method: vendor 0 method 26 (MSCHAPV2)初始化MSCHAPV2方法
    EAP-MSCHAPV2: Generating challenge response生成挑战响应
    EAP-MSCHAPV2: Authentication successfulMSCHAPV2认证成功
    EAP-PEAP: Phase 2 authentication completedPhase 2认证完成
    EAP: EAP authentication completed successfullyEAP认证成功完成

    EAP-TLS认证流程

    EAP-TLS的认证流程这里给出一段失败的日志,因为实际中很多问题就出在这个阶段。

    07-20 22:48:55.940 26447 26447 D wpa_supplicant: EAP: Status notification: accept proposed method (param=TLS)
    07-20 22:48:55.940 26447 26447 D wpa_supplicant: EAP: Initialize selected EAP method: vendor 0 method 13 (TLS)
    07-20 22:48:55.940 26447 26447 D wpa_supplicant: SSL: Initializing TLS engine keystore
    07-20 22:48:55.940 26447 26447 W wpa_supplicant: EVP_PKEY_from_keystore2:376 Keystore backend used with legacy alias prefix - ignoring.
    07-20 22:48:55.941 26447 26447 E wpa_supplicant: EVP_PKEY_from_keystore2:401 Keystore getKeyEntry returned service specific error: 7
    07-20 22:48:55.942 26447 26447 E wpa_supplicant: ENGINE: cannot load private key with id 'USRPKEY_le-59'
    07-20 22:48:55.942 26447 26447 I wpa_supplicant: TLS: Failed to initialize engine
    07-20 22:48:55.942 26447 26447 I wpa_supplicant: EAP-TLS: Failed to initialize SSL.
    07-20 22:48:55.942 26447 26447 I wpa_supplicant: EAP: Failed to initialize EAP method: vendor 0 method 13 (TLS)

    EAP-TLS失败关键日志说明:

    日志信息说明
    EAP: Initialize selected EAP method: vendor 0 method 13 (TLS)初始化TLS方法
    SSL: Initializing TLS engine keystore初始化TLS引擎
    EVP_PKEY_from_keystore2:376 Keystore backend used with legacy alias prefix - ignoring.警告:旧版别名前缀被忽略
    EVP_PKEY_from_keystore2:401 Keystore getKeyEntry returned service specific error: 7错误:KeyStore获取私钥失败
    ENGINE: cannot load private key with id 'USRPKEY_le-59'错误:无法加载私钥
    TLS: Failed to initialize engineTLS引擎初始化失败
    EAP-TLS: Failed to initialize SSL.EAP-TLS SSL初始化失败
    EAP: Failed to initialize EAP method: vendor 0 method 13 (TLS)EAP-TLS方法初始化失败

    4、4-Way Handshake阶段(与普通网络相同)

    07-21 10:42:54.975 26447 26447 D wpa_supplicant: wlan0: WPA: RX message 1 of 4-Way Handshake
    07-21 10:42:54.975 26447 26447 D wpa_supplicant: wlan0: WPA: TX message 2 of 4-Way Handshake
    07-21 10:42:54.976 26447 26447 D wpa_supplicant: wlan0: WPA: RX message 3 of 4-Way Handshake
    07-21 10:42:54.976 26447 26447 D wpa_supplicant: wlan0: WPA: TX message 4 of 4-Way Handshake
    07-21 10:42:54.976 26447 26447 D wpa_supplicant: wlan0: WPA: Key negotiation completed with 60:db:15:c2:e6:31 [PTK=CCMP GTK=CCMP]

    5、Group Handshake阶段(与普通网络相同)

    07-21 10:42:54.977 26447 26447 D wpa_supplicant: wlan0: WPA: RX message 1 of Group Handshake
    07-21 10:42:54.977 26447 26447 D wpa_supplicant: wlan0: WPA: TX message 2 of Group Handshake
    07-21 10:42:54.977 26447 26447 D wpa_supplicant: wlan0: State: ASSOCIATED -> COMPLETED

    6、连接成功

    07-21 10:42:54.977 26447 26447 I wpa_supplicant: wlan0: CTRL-EVENT-CONNECTED - Connection to 60:db:15:c2:e6:31 completed [id=0 id_str=]

    EAP网络连接完整流程图

    扫描触发 (SCAN_STARTED)
          ↓
    扫描完成 (NEW_SCAN_RESULTS)
          ↓
    选择BSS (selected BSS)
          ↓
    请求关联 (Request association)
          ↓
    关联中 (ASSOCIATING)
          ↓
    关联成功 (ASSOCIATED)
          ↓
    EAP认证阶段
          ↓
    ┌─────────────────────────┐
    │ EAP-PEAP:              │
    │   Phase 1 (TLS握手)     │
    │   Phase 2 (MSCHAPV2)   │
    └─────────────────────────┘
          ↓
    EAP认证成功 (EAP authentication completed)
          ↓
    4-Way Handshake (消息1→2→3→4)
          ↓
    密钥协商完成 (Key negotiation completed)
          ↓
    Group Handshake (消息1→2)
          ↓
    连接完成 (COMPLETED)
          ↓
    CTRL-EVENT-CONNECTED

    四、WiFi连接失败场景日志分析

    1、密码错误场景

    当WiFi密码错误时,4-Way Handshake阶段虽然能正常完成,但后续会出现认证超时,最终断开连接。

    07-22 22:19:19.573  6635  6657 D wpa_supplicant: wlan0: WPA: RX message 1 of 4-Way Handshake
    07-22 22:19:19.573  6635  6657 D wpa_supplicant: wlan0: WPA: TX message 2 of 4-Way Handshake
    07-22 22:19:19.574  6635  6657 D wpa_supplicant: wlan0: WPA: RX message 3 of 4-Way Handshake
    07-22 22:19:19.574  6635  6657 D wpa_supplicant: wlan0: WPA: TX message 4 of 4-Way Handshake
    07-22 22:19:19.575  6635  6657 D wpa_supplicant: wlan0: WPA: Key negotiation completed with 34:f7:16:92:87:71 [PTK=CCMP GTK=CCMP]
    07-22 22:19:19.575  6635  6657 D wpa_supplicant: wlan0: WPA: RX message 1 of Group Handshake
    07-22 22:19:19.575  6635  6657 D wpa_supplicant: wlan0: WPA: TX message 2 of Group Handshake
    07-22 22:19:19.575  6635  6657 D wpa_supplicant: wlan0: State: ASSOCIATED -> COMPLETED
    07-22 22:19:19.575  6635  6657 I wpa_supplicant: wlan0: CTRL-EVENT-CONNECTED - Connection to 34:f7:16:92:87:71 completed [id=0 id_str=]
    07-22 22:19:19.600  6635  6657 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid=34:f7:16:92:87:71 reason=15
    07-22 22:19:19.600  6635  6657 I wpa_supplicant: wlan0: CTRL-EVENT-SSID-TEMP-DISABLED id=0 ssid="syrj_5G" auth_failures=1 duration=30 reason=WRONG_KEY

    密码错误关键日志说明:

    日志信息说明
    reason=15断开原因码15(认证超时)
    reason=WRONG_KEY错误原因:密钥错误
    auth_failures=1认证失败次数
    duration=30临时禁用时长30秒

    密码错误流程:

    4-Way Handshake完成
          ↓
    Group Handshake完成
          ↓
    连接成功 (CTRL-EVENT-CONNECTED)
          ↓
    认证超时 (reason=15)
          ↓
    断开连接 (CTRL-EVENT-DISCONNECTED)
          ↓
    临时禁用网络 (CTRL-EVENT-SSID-TEMP-DISABLED)

    2、认证错误场景(EAP网络)

    当EAP认证失败时,问题会出现在EAP认证阶段,而不是握手阶段。下面这个例子是EAP-TLS因私钥加载失败导致的认证错误。

    07-20 22:48:55.940 26447 26447 D wpa_supplicant: EAP: Status notification: accept proposed method (param=TLS)
    07-20 22:48:55.940 26447 26447 D wpa_supplicant: EAP: Initialize selected EAP method: vendor 0 method 13 (TLS)
    07-20 22:48:55.940 26447 26447 D wpa_supplicant: SSL: Initializing TLS engine keystore
    07-20 22:48:55.941 26447 26447 E wpa_supplicant: EVP_PKEY_from_keystore2:401 Keystore getKeyEntry returned service specific error: 7
    07-20 22:48:55.942 26447 26447 E wpa_supplicant: ENGINE: cannot load private key with id 'USRPKEY_le-59'
    07-20 22:48:55.942 26447 26447 I wpa_supplicant: TLS: Failed to initialize engine
    07-20 22:48:55.942 26447 26447 I wpa_supplicant: EAP-TLS: Failed to initialize SSL.
    07-20 22:48:55.942 26447 26447 I wpa_supplicant: EAP: Failed to initialize EAP method: vendor 0 method 13 (TLS)
    07-20 22:49:03.648 26447 26447 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid=60:db:15:c2:e6:31 reason=3
    07-20 22:49:03.648 26447 26447 I wpa_supplicant: wlan0: CTRL-EVENT-SSID-TEMP-DISABLED id=0 ssid="KTC-SSL-AUTH" auth_failures=1 duration=30 reason=AUTH_FAILED

    认证错误关键日志说明:

    日志信息说明
    EVP_PKEY_from_keystore2:401 Keystore getKeyEntry returned service specific error: 7KeyStore获取私钥失败
    ENGINE: cannot load private key with id 'USRPKEY_le-59'无法加载私钥
    TLS: Failed to initialize engineTLS引擎初始化失败
    EAP-TLS: Failed to initialize SSL.EAP-TLS SSL初始化失败
    EAP: Failed to initialize EAP methodEAP方法初始化失败
    reason=3断开原因码3(认证失败)
    reason=AUTH_FAILED错误原因:认证失败

    EAP有多种类型,这里只举例了TLS类型的网络失败情况。其他类型的认证失败日志特征类似,关键看EAP阶段是否初始化成功。

    3、WiFi不存在场景

    当WiFi网络不存在时,扫描阶段就会直接暴露问题——根本找不到对应的BSSID。

    07-22 22:19:23.234  6635  6657 D wpa_supplicant: nl80211: Drv Event 33 (NL80211_CMD_TRIGGER_SCAN) received for wlan0
    07-22 22:19:23.234  6635  6657 D wpa_supplicant: wlan0: nl80211: Scan trigger
    07-22 22:19:23.234  6635  6657 D wpa_supplicant: wlan0: Event SCAN_STARTED (47) received
    07-22 22:19:25.156  6635  6657 D wpa_supplicant: nl80211: Drv Event 34 (NL80211_CMD_NEW_SCAN_RESULTS) received for wlan0
    07-22 22:19:25.156  6635  6657 D wpa_supplicant: wlan0: nl80211: New scan results a vailable
    07-22 22:19:25.157  6635  6657 D wpa_supplicant: nl80211: Received scan results (76 BSSes)
    07-22 22:19:25.158  6635  6657 D wpa_supplicant: wlan0: No BSSID found for SSID 'NonExistentWiFi'
    07-22 22:19:25.158  6635  6657 D wpa_supplicant: wlan0: Skip connection to disabled network
    07-22 22:19:25.158  6635  6657 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid=00:00:00:00:00:00 reason=3
    07-22 22:19:25.158  6635  6657 I wpa_supplicant: wlan0: CTRL-EVENT-SSID-TEMP-DISABLED id=0 ssid="NonExistentWiFi" auth_failures=1 duration=30 reason=NETWORK_NOT_FOUND

    WiFi不存在关键日志说明:

    日志信息说明
    No BSSID found for SSID 'xxx'找不到指定SSID的BSS
    Skip connection to disabled network跳过连接到禁用的网络
    reason=3断开原因码3
    reason=NETWORK_NOT_FOUND错误原因:网络未找到

    4、连接失败场景对比表

    失败场景失败阶段关键日志原因码
    密码错误4-Way Handshake后reason=WRONG_KEY15
    认证错误(EAP)EAP认证阶段EAP: Failed to initialize EAP method3
    WiFi不存在扫描阶段No BSSID found for SSID3
    关联失败关联阶段Association request rejected2/4
    DHCP失败IP获取阶段CTRL-EVENT-DHCP-FAILURE1

    五、总结

    1、普通网络 vs EAP网络连接过程对比

    阶段普通网络(WPA-PSK)EAP网络(EAP-TLS/PEAP)
    扫描✅ 相同✅ 相同
    关联✅ 相同✅ 相同
    EAP认证❌ 无✅ 有(Phase 1+Phase 2)
    4-Way Handshake✅ 相同✅ 相同
    Group Handshake✅ 相同✅ 相同
    连接成功✅ 相同✅ 相同

    核心区别:EAP网络在关联成功后增加了EAP认证阶段,这是企业级WiFi安全的关键。

    2、wpa_supplicant状态转换总结

    DISCONNECTED
          ↓ (扫描发现网络)
    SCANNING
          ↓ (选择目标网络)
    DISCONNECTED
          ↓ (请求关联)
    ASSOCIATING
          ↓ (关联成功)
    ASSOCIATED
          ↓ (EAP认证完成/4-Way Handshake完成)
    4WAY_HANDSHAKE
          ↓ (密钥协商完成)
    GROUP_HANDSHAKE
          ↓ (Group Handshake完成)
    COMPLETED
          ↓ (连接成功)
    CONNECTED

    3、底层wifi关键日志关键字总结

    阶段关键字
    扫描SCAN_STARTED、NEW_SCAN_RESULTS、Received scan results
    关联selected BSS、Trying to associate、Associated with
    EAP认证EAP: Initialize selected EAP method、EAP authentication completed
    4-Way HandshakeWPA: RX message X of 4-Way Handshake、Key negotiation completed
    Group HandshakeWPA: RX message X of Group Handshake
    连接成功CTRL-EVENT-CONNECTED、Connection to ... completed
    连接失败CTRL-EVENT-DISCONNECTED、reason=、CTRL-EVENT-SSID-TEMP-DISABLED

    通过分析这些关键日志,可以快速定位WiFi连接过程中的问题所在——无论是密码错误、认证失败还是网络不存在,日志里都有明确的标识。

    4、上层主要日志和流程

    Wifi相关日志的关键字都是:wifi,会有点多
    wifi开关的日志是:WifiService
    底层相关日志:wpa_supplicant、wifi-service
    其他相关:WifiNative、WifiHAL
    
    日志过滤:
    logcat | grep -i wifi
    logcat | grep -iE "WifiService|WifiNative"
    logcat | grep -iE "WifiService|wpa_supplicant|wifi-service|WifiNative|WifiHAL|DHCP|wlan"
    
    流程:
    
    //wifi开启
    // 1. 用户触发开启 WiFi(如点击开关)
    WifiService、WifiController
    
    //wifi扫描
    WifiService、WifiScanRequestProxy、WifiHAL
    // 2. 扫描完成,获取结果
    WifiScanner、WifiScanResults
    
    //wifi选择+准备连接
    ThroughputScorer、WifiConnectivityManager、WifiConfigManager
    
    // 2. 准备连接(加载配置,如密码)
    WifiConnectivityManager、WifiConfigManager:、WifiStateMachine
    
    // 1. 开始连接,状态从 Disconnected 切换到 Connecting
    WifiStateMachine、WifiNative
    
    // 2. 认证阶段(验证密码)、4次握手
    SupplicantStateTracker、wpa_supplicant、SupplicantStateTracker、WifiStateMachine
    
    // 启动 DHCP 客户端、分配ip
    DhcpClient
    
    //网络状态变为可用
    WifiStateMachine、ConnectivityService
    
    //  通知连接成功
    WifiService、ConnectivityManager

    以上就是Android普通网络和EAP网络的WiFi连接完整过程的详细内容,希望能帮你更深入地理解底层日志与连接流程。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发 Android
    相关文章 更多
    精品专题 更多
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    macOS软件

    正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

    IOS软件

    正软商城iOS软件专区,精选适用于iPhone和iPad的办公、学习、影音、设计、效率及AI应用,提供功能介绍、适用设备、系统要求和正版获取方式等信息。

    AI

    正软商城AI软件专区,汇集AI写作、AI绘画、AI视频、AI办公、AI编程、AI翻译、智能客服和数据分析等人工智能工具,提供功能介绍、适用平台、收费方式及正版购买信息。

    Mac软件 更多
    Aperty macOS版
    Aperty macOS版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw macOS版
    AionClaw macOS版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy macOS版
    Loomy macOS版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。

    AirBuddy 3 macOS版
    AirBuddy 3 macOS版

    AirBuddy 3 是面向 macOS 的蓝牙外设增强工具,可集中查看 AirPods、Beats 与苹果设备电量,提供快速连接、播放控制、电量提醒、桌面小组件和多台 Mac 外设接力等功能。

    AirServer macOS版
    AirServer macOS版

    AirServer macOS版可把 Mac 转换为无线投屏接收端,通过 AirPlay 或 Google Cast 接收手机、平板和电脑画面,并支持多设备同时连接、高清镜像及会话录制,适合家庭娱乐、课堂教学、会议演示和应用展示。

    AnyDesk macOS版
    AnyDesk macOS版

    AnyDesk macOS版是一款适用于远程办公、设备维护和客户支持的远程桌面工具,可连接并操作异地计算机,支持文件传输、无人值守访问、会话权限控制及跨平台协作。

    WINDOWS 更多
    讯飞绘文 网页版
    讯飞绘文 网页版

    讯飞绘文网页版是科大讯飞推出的AI图文创作与内容运营工具,覆盖热点选题、文章生成、稿件校对、智能配图、排版发布和数据复盘等环节,适合自媒体创作者及内容团队在线使用。

    Maya(Autodesk Maya) Windows版
    Maya(Autodesk Maya) Windows版

    Autodesk Maya 是面向影视、电视、动画和游戏行业的专业三维制作软件,集多边形与 NURBS 建模、角色绑定、关键帧和动作捕捉动画、Bifrost 特效模拟、材质开发及 Arnold 渲染于一体,

    Aperty Windows版
    Aperty Windows版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw Windows版
    AionClaw Windows版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy Windows版
    Loomy Windows版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。

    AirServer Windows版
    AirServer Windows版

    AirServer Windows版可把电脑变成AirPlay、Google Cast和Miracast无线投屏接收端,适合会议演示、课堂教学及家庭大屏分享。发送设备通常无需另装客户端,并可同时接收和智能排列多个镜像会话。

    即将离开本站
    您即将前往第三方网站,请确认是否继续?