Debian 系统随机断开 WiFi

Debian 系统随机断开 WiFi

在我长期使用的所有 WiFi 连接的 Debian 系统中(我的大部分系统都连接到我的网络),至少有一次它们无法通过 Wifi 进行通信。从 的输出来看ifconfig,它们仍然处于连接状态,但是当我尝试 ping 网络设备时,它失败了,而是得到了自身的回复。所以我必须ifconfig wlan0 down跟着跑ifconfig wlan0 up。我的系统自动从 DHCP 服务器获取 IP,但即便如此,我也只能与同一网络上的设备通信(因此我可以 ping 通 192.168.0.1,但不能 ping 8.8.8.8,或者 ping 192.168.0.25,但不能 208.70.160.53)。当我尝试 ping 互联网上的 IP 时,我收到一条类似 的消息connect: network is down。所以我必须重新启动才能恢复完整的网络连接。

所以我的问题是:

为什么 WiFi 连接似乎随机断开?我该如何阻止这种情况发生?

当它确实消失时,如何在不重新启动整个系统的情况下恢复完整的连接?

我正在使用 Debian Jessie 版本 8.7。如果您需要更多信息,请在评论中询问。

的输出lspci -knn | grep Net -A2

02:00.0 Ethernet controller [0200]: Broadcom Corporation NetXtreme BCM57765 Gigabit Ethernet PCIe [14e4:16b4] (rev 10)
    Subsystem: Broadcom Corporation NetXtreme BCM57765 Gigabit Ethernet PCIe [14e4:16b4] 
    Kernel driver in use: tg3 
02:00.1 SD Host controller [0805]: Broadcom Corporation BCM57765/57785 SDXC/MMC Card Reader [14e4:16bc] (rev 10)
03:00.0 Network controller [0280]: Broadcom Corporation BCM4331 802.11a/b/g/n [14e4:4331] (rev 02) 
    Subsystem: Apple Inc. AirPort Extreme [106b:00d6] 
    Kernel driver in use: bcma-pci-bridge

ping 192.168.0.1断开连接后的输出:

PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
From 192.168.0.9 icmp_seq=1 Destination Host Unreachable
From 192.168.0.9 icmp_seq=2 Destination Host Unreachable
From 192.168.0.9 icmp_seq=3 Destination Host Unreachable
From 192.168.0.9 icmp_seq=4 Destination Host Unreachable
From 192.168.0.9 icmp_seq=5 Destination Host Unreachable
From 192.168.0.9 icmp_seq=6 Destination Host Unreachable
From 192.168.0.9 icmp_seq=7 Destination Host Unreachable
From 192.168.0.9 icmp_seq=8 Destination Host Unreachable
From 192.168.0.9 icmp_seq=9 Destination Host Unreachable

--- 192.168.0.1 ping statistics ---
11 packets transmitted, 0 received, +9 errors, 100% packet loss, time 10236ms

答案1

您应该使用wl驱动程序而不是bcma-pci-bridge.

/etc/apt/sources.list通过添加以下行来编辑您的:

deb http://httpredir.debian.org/debian/ jessie main contrib non-free

保存您的文件。

安装linux-image,linux-headersbroadcom-sta-dkms软件包

apt-get update
apt-get install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms

卸载冲突的驱动程序:

 modprobe -r bcma-pci-bridge
 modprobe -r b44 b43 b43legacy ssb brcmsmac bcma

加载正确的模块:

modprobe wl

来源 :官方网站

答案2

我忘记了这个问题;我现在才重新发现它,并想我不妨把它放进去。

当我问这个问题时,我使用了一个相当基本的网络管理器。 (现在我运行wpa_supplicantifconfigroute手动。)更高级的管理器(例如,NetworkManager应该自动处理这个问题)应该自动处理这个问题,但如果没有,只需运行命令wpa_cli(您可能必须是 root),然后输入reassociate该提示符(当您'重做)。这会导致 wpa_supplicant 在不关闭接口的情况下重新连接,从而重置路由表。另一种选择是运行ifconfig <interface> downifconfig <interface> up当我问这个问题时我正在做什么)。这将提示wpa_supplicant重新连接,但它也会删除由 设置的路由表条目dhclient,因此您必须运行route add -net default gw <router IP address> dev <interface>(我无法弄清楚)。只需在网络管理器中关闭并重新打开 WiFi(或者断开连接并重新连接,如果您喜欢的话)也应该可以。

Wi-Fi 仍然偶尔会断开连接,但当它断开时,我总是告诉wpa_supplicant重新连接,几秒钟后它就会再次工作。这可能是所有操作系统都存在的问题,它们只是在后台自动重新关联。

相关内容