我使用 WiFi 连接互联网,使用的是 Ubuntu 18.04.2。它工作正常。但是,在经过一段随机的时间间隔后,互联网连接断开。WiFi 仍处于打开状态,设备已连接到它(我还通过从另一台设备登录路由器检查路由器的活动客户端列表来验证这一点)。连接断开后,我甚至无法 ping 通我的网关(路由器的 IP)。如果我尝试 ping 我的路由器(IP 192.168.0.1),它会显示destination host is unreachable
。
因此,为了解决问题,我决定查看我的 ARP 表。运行 arp 命令后,我看到以下输出:
Address HWtype HWaddress Flags Mask Iface
192.168.0.1 (incomplete) wlp13s0
192.168.0.1 是我的路由器的 IP 地址。就是这个!ARP 请求不完整。这就是问题所在。但是,我想知道为什么会发生这种情况。我知道没有执行 ARP 中毒,因为即使我断开所有其他设备,然后在清除 ARP 缓存后执行 ARP 请求,问题仍然存在。
令人惊讶的是,如果我关闭 WiFi 然后再次打开,我就可以重新访问互联网。这是对问题的“临时”修复。恢复互联网访问后,如果我运行 ARP 请求,我会收到以下响应:
Address HWtype HWaddress Flags Mask Iface
192.168.0.1 ether My Router's MAC Addr C wlp13s0
有人能帮助我解决这个问题并告诉我下一步该怎么做才能永久解决这个问题吗?
额外信息:
我的设备使用 RTL8723BE 进行 WiFi 连接,它在 Ubuntu 中存在 WiFi 接收不良的已知问题。因此,我rtlwifi_new
按照以下答案的建议使用 Larry Finger 的驱动程序:https://askubuntu.com/a/722904/925252