web-dev-qa-db-ja.com

休止状態から復元した後、WiFiが機能しない(認証がタイムアウトする)

休止状態の後、Intel6205ワイヤレスネットワークカードが機能しません。また、起動時に機能せず、同じように失敗することもあります。場合によっては、10分程度の連続使用で動作を停止することもあります。

私は次の組み合わせを試してみました:modprobe -r iwlwifi休止状態の前後(または問題が発生した場合)の後にmodprobe iwlwifiが続きます。次に、systemctl restart network-managersystemctl restart NetworkManager。これらの解決策は、症状のすべての検索結果が焦点を当てているものです。

他に何を試すべきですか?

構成:

  • Debian Jessie
  • カーネル3.14.4-1
  • networkmanager 0.9.8.10
  • Intel 6205 rev 96(iwlwifi)
  • Lenovo ThinkPad X1カーボン
$ dmesg
wlan0: authenticate with 47:f2:2f:91:db:7b
wlan0: Wrong control channel: center-freq: 5500 ht-cfreq: 5180 ht->primary_chan: 36 band: 1 - Disabling HT
wlan0: direct probe to 47:f2:2f:91:db:7b (try 1/3)
wlan0: direct probe to 47:f2:2f:91:db:7b (try 2/3)
wlan0: direct probe to 47:f2:2f:91:db:7b (try 3/3)
wlan0: authentication with 47:f2:2f:91:db:7b timed out
wlan0: authenticate with 47:f2:2f:91:db:7b
wlan0: send auth to 47:f2:2f:91:db:7b (try 1/3)
wlan0: send auth to 47:f2:2f:91:db:7b (try 2/3)
wlan0: send auth to 47:f2:2f:91:db:7b (try 3/3)
wlan0: authentication with 47:f2:2f:91:db:7b timed out
# the last 5 messages repeat indefinitely as connection is reattempted
8
Aeyoun

このコマンドの出力を見て、カーネルが特定のハードウェアに使用しているドライバー/モジュールを確認します。

$ lshw -C network
...
  *-network
       description: Wireless interface
       product: Centrino Wireless-N 1000 [Condor Peak]
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: wlp3s0
       version: 00  
       serial: 00:26:c7:85:a7:20
       width: 64 bits
       clock: 33MHz 
       capabilities: bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=iwlwifi driverversion=3.14.4-100.fc19.x86_64 firmware=39.31.5.1 build 35138 ip=192.168.1.161 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn  
       resources: irq:42 memory:f2400000-f2401fff

ドライバーの名前は `設定行にリストされています:

driver=iwlwifi

このより高いレベルのドライバーが使用している可能性のある他のドライバーを確認してください。

$ lsmod | grep iwlwifi
iwlwifi               116346  1 iwldvm
cfg80211              513095  3 iwlwifi,mac80211,iwldvm

これらすべてのrmmod <name>をアンロードしてから、リロードしてみてください。

$ Sudo modprobe iwlwifi

これにより、最上位のドライバーと下位レベルのドライバーが自動的に読み込まれます。

ワイヤレスNを無効にする

私のThinkpadラップトップのほとんどで、ワイヤレスが不安定に動作するという多くの問題が発生しました。私が見つけた唯一の解決策は、iwlwifiモジュールのWireless-N機能を無効にすることです。次のように、モジュールに対するこのパラメータの名前/オプションを見つけることができます。

$ modinfo iwlwifi | grep dis
parm:           11n_disable:disable 11n functionality, bitmap: 1: full, 2: disable agg TX, 4: disable agg RX, 8 enable agg TX (uint)
parm:           wd_disable:Disable stuck queue watchdog timer 0=system default, 1=disable, 2=enable (default: 0) (int)
parm:           power_save:enable WiFi power management (default: disable) (bool)

したがって、モジュールを削除した後、modprobeを介して再ロードする準備ができたら、オプション11n_disableを含めます。例えば:

$ Sudo modprobe iwlwifi 11n_disable=1

ブートからブートまで、modprobe.dディレクトリを介してこれを永続的にすることができます。

6
slm

この次の手順で問題が解決しました。

1回実行(マシンを再起動):

echo "options iwlwifi 11n_disable=1" > /etc/modprobe.d/iwlwifi.conf
/usr/sbin/update-initramfs -u
reboot

次に、次のスクリプトは休止状態からの復元またはシステムの起動のたびに再実行である必要があります。

/bin/systemctl stop network-manager
/sbin/modprobe -r iwldvm iwlwifi mac80211
/bin/systemctl start network-manager
/sbin/modprobe iwlwifi

重要な部分は、カーネルドライバーをロードする前にネットワークマネージャーが実行されている必要があることです。

2
Aeyoun