web-dev-qa-db-ja.com

「wpaサプリカント:現在のAPのネットワーク構成が見つかりません」-Debian7でのcarl9170駆動のwifiアダプターの不具合

Linux3.2カーネルを搭載したDebian7マシンと、Atherosチップセット(D-Link DWA-16 Xtreme N Dual Band)を搭載したUSB Wi-Fiアダプターがあります。理論的には 動作するはずです

実際、私はNetworkManagerとのwifi通信を確立することができ、約30分間はほぼ正常に機能しましたが、その後切断され、接続の再確立に失敗しました。

NetworkManagerとの接続の再確立に失敗しました。関連付けと認証に成功し、4ウェイハンドシェイクを開始しましたが、 理由15(4ウェイハンドシェイクタイムアウト) のために認証を解除しました。

次に、/etc/network/interfacesにエントリを作成して、古き良きifupdownを介して同じことを試みました。

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

私が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.confを作成し、wpa_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の実行中のインスタンスを強制終了したときに、トラブルの最初の部分( "status:associated"の後に自発的に切断される)が消えました。干渉したようです。

トラブルの2番目の部分は、4ウェイハンドシェイクが失敗したことでした。アクセスポイントでMACアドレスフィルタリングを無効にしたところ、問題なく合格しました。私のwifiインターフェースのMACは利用可能なMACのリストに含まれていましたが、何らかの理由でルーターのMACフィルタリングに接続できませんでした。

更新2:問題が戻ってきました。 4ウェイハンドシェイクが再び失敗します。ドライバーのリロードは役に立ちません。

3
Boris Burkov

この種の問題は、独立した部分に分割する方が適切です。この場合、ifupdownを完全に回避し、すべての手順を手動で実行します。つまり、次のようになります。

  1. 適切な設定ファイルでwpa_supplicantを実行します

  2. 接続が確立されたら、dhcpクライアントを実行して

ifupdownがどのように実行されるかを確認するにはwpa_supplicant-傍受できるようなファイル内の何らかの構成を渡す必要があります-ifupdownの場合のps fax | grep wpa_supplicantの出力を確認しますが実行中です--cオプションのパラメーターは、(おそらくオンザフライで生成された)構成ファイルの名前です。

何らかの理由でifupdownから切り替えることにした場合は、さまざまなUI(ncurses、GTK、Qt)によって制御されるデーモンで構成される wicd に興味があるかもしれません。 )。

ちなみに、一部のDHCPクライアントは、wpa_supplicantを自分で生成することでワイヤレス接続をセットアップできます(dhcpcdがそれを実行しているのを見ました)。これは、非常に興味をそそる(そして干渉する)可能性があります。接続の問題をデバッグしようとします。

1
peterph

これは、不安定なワイヤレスデバイスをデバッグするときに試す順序です。

  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
    
1
slm

hand shake + FAILの問題も長い間ありました。 (gentoo | Arch)フォーラムからの解決策もstackexchangeも私にはうまくいきませんでした。

私は必要不可欠なプログラムvoidwpa_supplicantのみを使用して、必要最低限​​のdhcpcdlinuxを使用しています。

最終的にうまくいったことは、私に何年もかかりましたが、他のチャンスはありませんでした:

  • lANケーブルのメスコネクタも、部品ラベル|番号|ヒントのないハーフハイトのバリエーションであるため、DigiKey | Farnell | Reichelt | Conrad | Mouser | Amazonの電子機器販売店で交換部品が入手できない状態で壊れています。
  • 個々のストランドをメインボードにはんだ付けするのは、なんてクレイジーな努力なのでしょう。自宅ではやらないでください。作業中は、短くなったり折れたりしないように、細い(非常に細い)柔軟なワイヤーが必要です。
  • 交換用のWLAN chip(壊れたハードウェアを除外するため)は、Lenovoブートローダー内のハードコードされたサポートされている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、正しいネットワークインターフェイスが稼働していることを確認してください|実行中のネットワークインターフェイス(例: wlan0またはwlp2sは/etc/wpa_supplicant/wpa_supplication.confで使用されます。idest:

 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には修正された効果があるようです!私はまだそれがどれであるかを調査する時間がありませんでした。

0
Radagast