Wifi 经常断开连接(超时)

Lob*_*obe 9 wireless 18.04

我的笔记本电脑和台式机上的 wifi 不断掉线。这发生在我的家庭 wifi 和将我的手机设置为热点时。此“退出”仍显示 wifi 已连接,但是任何网络流量(例如 ping 已知 ip)都失败(编辑:这是错误的,无法将失败复制到 ping 8.8.8.8。解决方案是 DNS 问题)。这似乎是在使用互联网 2-30 分钟后发生的。修复的唯一解决方案是重新启动,或重新启动网络管理器:

sudo systemctl restart network-manager

我最初认为这是我的笔记本电脑(戴尔 XPS 13 9350)中的无线网卡的问题,但是在切换到英特尔 wifi 卡并再次切换回基于 Broadcom 的股票卡时,切换问题仍然存在。该问题也出现在我的桌面上,尽管似乎发生的频率较低(纯粹是观察性的)。此外,自升级到 18.04 以来,辍学的频率似乎有所增加(同样,纯粹是观察性的,可能并非如此)。

我对调试这个问题不太了解,但是在sudo journalctl -fu NetworkManager出现丢失时查看 wifi 日志会产生以下条目:

May 06 20:17:48 my-laptop NetworkManager[13190]: <info> [1525601868.0127] connectivity: (wlp58s0) timed out

关于如何调试网络访问下降的任何建议?

小智 11

尝试禁用 WIFI 节能:

在:/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf设置wifi.powersave = 2

  • 谢谢,但对我来说这没有帮助。 (5认同)
  • 如果有人感兴趣,这个答案记录了 wifi.powersave 值的含义:https://unix.stackexchange.com/a/315400/72319 (4认同)

小智 10

看看这个线程WiFi 在 Ubuntu 18.04 LTS 上随机断开你可能会帮助你。如果它不尝试使用以太网电缆并查看它是否有效。如果你的 wifi 是 5ghz 并且穿过墙壁或其他绝缘体,它会比 2.4ghz 弱,因为它的波长更短。但这可能对您没有帮助,因此如果这些失败,请等待其他人回复。

  • 非常感谢威廉·麦克。事实证明这是一个 DNS 问题,因为我无法复制 ping 失败的情况。尝试了概述的步骤(编辑/etc/resolve.conf),它已经稳定了几个小时。非常感谢,因为这个问题最近让我抓狂。 (2认同)

chi*_*555 9

您的无线网络可能会因为电源管理而掉线;也就是说,该功能使卡在不活动期间部分断电以节省电池电量,然后在理想情况下在活动恢复时无缝重新启动。让我们禁用省电功能,看看是否有帮助。从航站楼:

sudo sed -i 's/3/2/' /etc/NetworkManager/conf.d/*
Run Code Online (Sandbox Code Playgroud)

您的无线网络可能会掉线,因为它所连接的频道突然发生了变化。

请检查路由器中的设置。首选WPA2-AES;不是任何 WPA 和 WPA2 混合模式,当然也不是 TKIP。其次,如果您的路由器支持 N 速度,则在 2.4 GHz 频段中使用 20 MHz 通道宽度(而不是自动 20/40 MHz)可能会获得更好的连接,尽管这可能会影响 N 速度。我建议使用固定频道(1、6 或 11),而不是自动频道选择。另外,请确保路由器未设置为仅使用 N 速度;优选自动B、G和N。

您的无线网络可能会掉线,因为有两个无线接入点具有相同的名称和密码。当同一路由器有 2.4 GHz 网段和 5 GHz 网段时,这是典型的情况。您的无线网络可能正在漫游,正在寻找更好的连接。如果是这种情况,我建议您重命名接入点;像 myrouter2.4 和 myrouter5 之类的东西。

进行这些更改后,重新启动路由器。

接下来,我建议您明确设置监管领域。检查你的:

sudo iw reg get
Run Code Online (Sandbox Code Playgroud)

如果您得到 00,则这是一种一刀切的设置。在这里找到你的:http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2然后临时设置:

sudo iw reg set IS
Run Code Online (Sandbox Code Playgroud)

当然,如果不是冰岛,请替换您的国家/地区代码。永久设置:

sudo nano /etc/default/crda
Run Code Online (Sandbox Code Playgroud)

将最后一行更改为:

REGDOMAIN=IS
Run Code Online (Sandbox Code Playgroud)

仔细校对,保存并关闭文本编辑器。

有改善吗?