「wpa 請求者:未找到目前 AP 的網路設定」 - carl9170 驅動的 wifi 適配器在 Debian 7 上發生故障

「wpa 請求者:未找到目前 AP 的網路設定」 - carl9170 驅動的 wifi 適配器在 Debian 7 上發生故障

我有一台帶有 Linux3.2 核心的 Debian 7 機器和一個帶有 Atheros 晶片組 (D-Link DWA-16 Xtreme N Dual Band) 的 USB wifi 適配器,理論上來說應該管用

事實上,我設法與 NetworkManager 建立了 wifi 通信,並且它或多或少工作正常約 30 分鐘,但隨後斷開連接並且無法重新建立連接。

我無法重新建立與 NetworkManager 的連接,它成功關聯並進行身份驗證,開始 4 向握手,但隨後由於以下原因取消身份驗證原因15(4次握手超時)

然後我嘗試透過舊方法ifupdown透過在以下位置建立一個條目來執行相同的操作/etc/network/interfaces

allow-hotplug wlan1
iface wlan1 inet static
       wpa-ssid MyNet
       wpa-psk <My key hash generated by `wpa_passphrase MyNet key`>
       address 192.168.1.2
       netmask 255.255.255.0
       broadcast 192.168.1.255
       gateway 192.168.1.1
       dns-nameservers a.b.c.d

當 I 時sudo ifup wlan1,它的行為合理,直到:

wpa_supplicant[8258]: wlan1: Associated with <router's MAC>
wpa_supplicant[3402]: wlan1: No network configuration found for the current AP

(從 /var/log/syslog)。Wireshark看到 ARP 包從我的 wifi 適配器發送到路由器,但路由器沒有回應。

您對這意味著什麼以及如何解決此問題有任何想法嗎?

解決方案: 感謝 peterph 的建議,我嘗試在前台和後台創建wpa_supplicant.confwpa_supplicant作為獨立程序運行,然後wpa-conf wpa_supplicant.conf/etc/network/interfaces.

sudo wpa_supplicant -iwlan1 -c/etc/wpa_supplicant/wpa_supplicant.conf -d
sudo wpa_supplicant -iwlan1 -c/etc/wpa_supplicant/wpa_supplicant.conf -B

當我殺死一個正在運行的NetworkManager.看來是有乾擾了。

第二個問題是四次握手失敗。當我在接入點上停用 MAC 位址過濾時,一切順利。我的 wifi 介面的 MAC 在可用 MAC 清單中,但由於某種原因它仍然無法與路由器上的 MAC 過濾連接。

更新2:問題又回來了。四次握手再次失敗。重新載入驅動程式沒有幫助。

答案1

這種問題最好分成獨立的部分。在這種情況下,ifupdown完全規避並手動執行所有步驟 - 即:

  1. wpa_supplicant使用適當的設定檔運行

  2. 連線建立後,執行 dhcp 用戶端,

要檢查如何ifupdown運行wpa_supplicant- 它必須在文件中傳遞某種配置,您可以攔截 - 檢查運行ps fax | grep wpa_supplicant時的輸出ifupdown- 選項的參數-c是(可能是即時生成的)的名稱配置文件。

如果您出於某種原因決定轉用ifupdown,您可能會對wicd,它由一個由各種 UI(ncurses、GTK、Qt)控制的守護程式所組成。

順便說一句,一些 DHCP 用戶端能夠透過wpa_supplicant自己生成來建立無線連接(我見過dhcpcd這樣做)——當人們嘗試調試連接問題時,這可能會非常有趣(並且會造成乾擾)。

答案2

這是我在調試不穩定的無線設備時嘗試的順序。

  1. 重啟可以解決問題嗎?
  2. 嘗試卸載與無線設備相關的核心驅動程式。具有以下效果:

    $ lsmod | grep iw
    iwlagn                209751  0 
    iwlcore               195714  1 iwlagn
    mac80211              229095  2 iwlagn,iwlcore
    cfg80211              134981  3 iwlagn,iwlcore,mac80211
    
    $ sudo rmmod iwlagn
    $ sudo rmmod iwlcore
    
    $ modprobe iwlagn
    
  3. 調查與透過 報告的無線設備相關的任何訊息dmesg。例如:

    $ dmesg
    ...
    ...
    [207981.191849] mac80211: Unknown parameter `ieee80211_disable_40mhz_24ghz:Disable'
    [207988.895378] mac80211: `Disable' invalid for parameter `ieee80211_disable_40mhz_24ghz'
    [208280.841725] iwlagn: Intel(R) Wireless WiFi Link AGN driver for Linux, in-tree:d
    [208280.841727] iwlagn: Copyright(c) 2003-2010 Intel Corporation
    [208280.841826] iwlagn 0000:03:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
    [208280.841857] iwlagn 0000:03:00.0: setting latency timer to 64
    [208280.842798] iwlagn 0000:03:00.0: Detected Intel(R) Centrino(R) Wireless-N 1000 BGN, REV=0x6C
    [208280.863413] iwlagn 0000:03:00.0: Tunable channels: 13 802.11bg, 0 802.11a channels
    [208280.863582] iwlagn 0000:03:00.0: irq 48 for MSI/MSI-X
    [208280.898025] iwlagn 0000:03:00.0: loaded firmware version 128.50.3.1 build 13488
    [208280.898725] phy1: Selected rate control algorithm 'iwl-agn-rs'
    [208281.154937] ADDRCONF(NETDEV_UP): wlan0: link is not ready
    [208282.101156] wlan0: authenticate with 30:46:9a:47:4c:d4 (try 1)
    [208282.104128] wlan0: authenticated
    [208282.104164] wlan0: associate with 30:46:9a:47:4c:d4 (try 1)
    [208282.106911] wlan0: RX AssocResp from 30:46:9a:47:4c:d4 (capab=0x411 status=0 aid=3)
    [208282.106914] wlan0: associated
    [208282.111520] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
    [208292.608637] wlan0: no IPv6 routers present
    

答案3

也有很長一段時間的hand shake+FAIL問題。 ( gentoo| Arch) 論壇中的任何解決方案都不stackexchange適合我。

我使用的是最基本的voidLinux,只使用必要的程式dhcpcdwpa_supplicant

最終奏效的方法花了我很長時間,但沒有其他機會,因為:

  • LAN 電纜母頭連接器也被損壞,沒有任何更換零件可以從DigiKey|Farnell|Reichelt|Conrad|Mouser|Amazon 的任何電子經銷商處獲得,因為它是半高變體,沒有零件標籤|編號|提示。
  • 將單股線焊接到主機板上,真是一個瘋狂的努力,不要在家裡這樣做哈哈,在工作時,需要細(非常細)的柔性電線,以免短路或斷裂!
  • Lenovo 引導程式中不支援硬編碼的替換WLAN chip(以排除損壞的硬體) 。hardware whitelist是的,真的很棒,兼容,但只是沒有列出,因此失敗了,哇,只是哇。Hard coded white list!聯想!常識?

因此,經過大量的試驗和錯誤,調試時間出現了另一個修復(可能性),我想與社區分享。

每次重新啟動後都適用的解決方案: 1

sudo wpa_cli  # fail
sudo xbps-install -Syv NetworkManager
sudo ln -s /etc/sv/NetworkManager /var/service/

2(開機後可能會自動運轉。)

sudo sv up NetworkManager
sudo wpa_cli  # works half way (scan possible but association fails)
sudo sv down NetworkManager
sudo wpa_cli  # fail
sudo sv restart dhcpd
sudo wpa_cli  # works

確保 dhcpcd、wpa_supplicant、正確的網路介面已啟動 |並運行,並且 /etc/wpa_supplicant/wpa_supplication.conf 中使用網路介面(例如 wlan0 或 wlp2s),id est:

 sudo vi /etc/sv/wpa_supplicant/run  # Change all occurrences of the default interface name like e.g. "wlan0" to the correct interface as shown by ip link command, exempli gratia "wlp2s".

看來 NetworkManager 有一定的效果,那就是修復!我還沒有時間去調查它到底是什麼。

相關內容