
理論的には、Linux 3.2カーネルを搭載したDebian 7システムとAtherosチップセット(D-Link DWA-16 Xtreme N Dual Band)を備えたUSB Wi-Fiアダプタがあります。働かなければならない。
実際にNetworkManagerとのWi-Fi通信を設定し、約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
これを行うと、次の場合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
Wi-Fiアダプタからルーターに送信されたARPパケットを確認しましたが、ルーターが応答しません。
これが何を意味するのか、どうすれば解決できるのかご存知ですか?
解決策:
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
干渉があるようです。
2番目の問題は、4方向ハンドシェイクが失敗したことです。アクセスポイントでMACアドレスフィルタリングを無効にすると、すべてがうまくいきます。私のWi-FiインターフェイスのMACは利用可能なMACのリストにありますが、何らかの理由でまだルータのMACフィルタリングには関連付けられていません。
アップデート2:問題は再び発生しました。 4方向ハンドシェイクが再び失敗しました。ドライバを再ロードしても役に立ちませんでした。
答え1
この種の問題は、独立した部分に分割するのが最善です。この場合は、ifupdown
完全にバイパスし、すべての手順を手動で実行してください。つまり:
wpa_supplicant
適切な構成ファイルで実行接続が確立された後、dhcpクライアントを実行し、
ifupdown
実行方法を確認するには、wpa_supplicant
ファイルに何らかの構成を渡す必要があり、傍受できます。実行ps fax | grep wpa_supplicant
時に出力を確認してくださいifupdown
。オプションの引数は、-c
(即時に生成できる)構成ファイルの名前です。
何らかの理由で移行することにした場合は、次の点に興味がある可能性ifupdown
があります。wicd
、さまざまなUI(ncurses、GTK、Qt)によって制御されるデーモンで構成されています。
ところで、一部のDHCPクライアントは自分で作成して無線接続を確立できます。wpa_supplicant
(このような場合も見たことがありますdhcpcd
。) これは、人々が接続の問題をデバッグしようとしたときに非常に興味深く破壊的である可能性があります。
答え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
報告されたワイヤレスデバイスの配信に関連するすべてのメッセージを調べます
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
私には役に立ちませんでした。
void
私は必要なプログラムだけを使って最も基本的なLinuxを使っていますdhcpcd
。wpa_supplicant
最終的に成功するのに長い時間がかかりましたが、次の理由で他の機会はありませんでした。
- 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、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には特定の効果があるようです。つまり、修正されました!それが何であるか調べる時間がありませんでした。