休眠恢复后WiFi无法使用(认证超时)

休眠恢复后WiFi无法使用(认证超时)

我的 Intel 6205 无线网卡在休眠后无法工作。有时它也无法在启动时工作,以同样的方式失败。有时,连续使用约 10 分钟后它也会停止工作。

我尝试过以下组合:modprobe -r iwlwifi冬眠之前和之后(或当问题发生时),然后是modprobe iwlwifi;然后systemctl restart network-manager然后systemctl restart NetworkManager。这些解决方案是症状的所有搜索结果所关注的内容。

我还应该尝试什么?

配置:

  • Debian 杰西
  • 内核3.14.4-1
  • 网络管理器0.9.8.10
  • 英特尔 6205 修订版 96 (iwlwifi)
  • 联想 ThinkPad X1 Carbon
$ 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

答案1

查看此命令的输出以确认内核为您的给定硬件使用了哪些驱动程序/模块。

$ 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您可以通过您的目录从启动到启动使其永久化。

答案2

以下步骤解决了该问题。

运行一次(重新启动机器):

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

重要的是网络管理器必须在加载内核驱动程序之前运行。

答案3

我最近在升级内核后使用 wifi 时遇到了这个问题6.1.1-zen1-1-zen

下面为我​​解决了问题:

  • 关闭wifi接口:ip link set <your_wifi_interface> down
  • 停止网络管理器:systemctl stop NetworkManager
  • 移动与下面的界面同名的文件(比删除更安全)/var/run/wpa_supplicant/
  • 调出界面ip link set <your_wifi_interface> up
  • 启动网络管理器systemctl start NetworkManager

相关内容