网络(LAN)随机停止工作 - 重新连接有帮助

网络(LAN)随机停止工作 - 重新连接有帮助

我的 15.04 偶尔会遇到 LAN 互联网连接停止工作的问题。这种情况通常在启动后立即发生,但有时也会在浏览过程中发生,而无需执行任何特殊操作。

我的应用程序(Firefox、Skype 等)报告没有网络访问,并且ping google.comping 8.8.8.8也放弃,并且 ping 我的路由器(ping 192.168.0.1)。

如果发生这种连接丢失,我会点击网络指示器并选择“断开连接”,等待一秒钟,然后重新连接相同的连接。经过此过程后,一切似乎又恢复正常。
今天,几分钟后,它也自行消失了,但随后又出现了一些连接中断。

我该如何解决这个问题?下次发生这种情况时我需要观察什么才能给您提供重要信息?我最终如何才能防止此类连接丢失,或者我至少可以有一个自动检测和解决它的解决方法吗?


更新 1:

$ sudo lshw -C network
  *-network               
       description: Ethernet interface
       product: 82573L Gigabit Ethernet Controller
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: eth0
       version: 00
       serial: 00:17:31:a1:f5:fa
       size: 100Mbit/s
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=2.3.2-k duplex=full firmware=0.5-7 ip=192.168.0.107 latency=0 link=yes multicast=yes port=twisted pair speed=100Mbit/s
       resources: irq:24 memory:cfee0000-cfefffff ioport:c800(size=32)

更新 2:

/var/log/syslog上次连接失败时左右的内容:

Jul 12 16:14:23 MaxData-Desktop-Ubuntu kernel: [ 5298.718729] [UFW BLOCK] IN=eth0 OUT= MAC=01:00:5e:00:00:01:24:65:11:25:b0:0c:08:00 SRC=192.168.0.1 DST=224.0.0.1 LEN=36 TOS=0x00 PREC=0xC0 TTL=1 ID=0 DF PROTO=2 
Jul 12 16:15:07 MaxData-Desktop-Ubuntu whoopsie[670]: [16:15:07] Cannot reach: https://daisy.ubuntu.com
Jul 12 16:15:07 MaxData-Desktop-Ubuntu whoopsie[670]: [16:15:07] offline
Jul 12 16:15:27 MaxData-Desktop-Ubuntu whoopsie[670]: [16:15:27] Cannot reach: https://daisy.ubuntu.com
Jul 12 16:15:47 MaxData-Desktop-Ubuntu whoopsie[670]: [16:15:47] Cannot reach: https://daisy.ubuntu.com
Jul 12 16:16:07 MaxData-Desktop-Ubuntu whoopsie[670]: [16:16:07] Cannot reach: https://daisy.ubuntu.com
Jul 12 16:16:28 MaxData-Desktop-Ubuntu kernel: [ 5423.720176] [UFW BLOCK] IN=eth0 OUT= MAC=01:00:5e:00:00:01:24:65:11:25:b0:0c:08:00 SRC=192.168.0.1 DST=224.0.0.1 LEN=36 TOS=0x00 PREC=0xC0 TTL=1 ID=0 DF PROTO=2 
Jul 12 16:16:30 MaxData-Desktop-Ubuntu whoopsie[670]: [16:16:30] Cannot reach: https://daisy.ubuntu.com
Jul 12 16:16:50 MaxData-Desktop-Ubuntu whoopsie[670]: [16:16:50] Cannot reach: https://daisy.ubuntu.com
Jul 12 16:17:01 MaxData-Desktop-Ubuntu CRON[9122]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Jul 12 16:17:10 MaxData-Desktop-Ubuntu whoopsie[670]: [16:17:10] Cannot reach: https://daisy.ubuntu.com
Jul 12 16:18:33 MaxData-Desktop-Ubuntu kernel: [ 5548.718565] [UFW BLOCK] IN=eth0 OUT= MAC=01:00:5e:00:00:01:24:65:11:25:b0:0c:08:00 SRC=192.168.0.1 DST=224.0.0.1 LEN=36 TOS=0x00 PREC=0xC0 TTL=1 ID=0 DF PROTO=2 
Jul 12 16:20:38 MaxData-Desktop-Ubuntu kernel: [ 5673.717889] [UFW BLOCK] IN=eth0 OUT= MAC=01:00:5e:00:00:01:24:65:11:25:b0:0c:08:00 SRC=192.168.0.1 DST=224.0.0.1 LEN=36 TOS=0x00 PREC=0xC0 TTL=1 ID=0 DF PROTO=2 
Jul 12 15:12:48 MaxData-Desktop-Ubuntu gnome-session[6329]: message repeated 2 times: [ debconf: DbDriver "passwords" warning: could not open /var/cache/debconf/passwords.dat: Keine Berechtigung]
Jul 12 16:21:53 MaxData-Desktop-Ubuntu gnome-session[6329]: (process:9144): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
Jul 12 16:22:23 MaxData-Desktop-Ubuntu whoopsie[670]: [16:22:23] online
Jul 12 16:22:23 MaxData-Desktop-Ubuntu kernel: [ 5778.310686] [UFW BLOCK] IN=eth0 OUT= MAC=00:17:31:a1:f5:fa:24:65:11:25:b0:0c:08:00 SRC=198.252.206.25 DST=192.168.0.107 LEN=110 TOS=0x00 PREC=0x00 TTL=50 ID=50591 DF PROTO=TCP SPT=443 DPT=54409 WINDOW=33 RES=0x00 ACK PSH URGP=0 

此代码片段前后还有更多[UFW BLOCK]行,但在我看来它们并不可疑。我在 中也有类似的行dmesg,但仅此而已。

答案1

首先,使用以下命令识别网络设备的驱动程序:

lshw -C network

寻找driver=

接下来,检查日志以查找设备断开连接的原因。我建议您查看驱动程序和网络管理器正在执行的操作:

cat /var/log/syslog | grep -e some_driver -e etwork | tail -n 20

理想情况下,在互联网连接断开时运行此操作。

然后我建议您搜索此网站并在 Google 上搜索您的驱动程序名称和“断开连接”以寻找可能的解决方案。您也可以编辑您的问题以添加其他详细信息,我们很乐意为您提供帮助。

如果您希望发布您的系统日志结果,由于它很长,请将其发布到这里并提供链接:http://paste.ubuntu.com

您已确认臭名昭著的 e1000e。您可以尝试几种方法。可能的解决方案似乎经常有效,但并非总是如此,即禁用千兆位速度。您可以暂时尝试以下方法:

sudo ethtool --change eth0 speed 100 autoneg off

如果这有帮助,我们会将参数放入 rc.local 以使它们持久。

答案2

无论出于什么原因,这些问题在最近变得越来越少见。

除此之外,每当发生这种情况时,我都会运行以下命令来断开连接并重新连接:

nmcli con down "CONNECTION NAME" && nmcli con up "CONNECTION NAME"

~/.bashrc为了加快打字速度,我通过在我的文件中附加以下行来为其创建了一个别名:

alias reconnect='nmcli con down "CONNECTION NAME" && nmcli con up "CONNECTION NAME"'

答案3

您所描述的似乎是 dhcp 租约问题。当您连接到路由器时,dhcp 会在特定时间内为您提供 ip(这就是所谓的租约),然后会进行续订。

例如,这是我的系统日志中的内容:

$ grep 'renew' /var/log/syslog Jun 30 20:38:01 anaconda dhclient: bound to 192.168.43.209 -- renewal in 1342 seconds.

那么,我的假设是,你仍然拥有 IP,因此你的机器被报告为已连接,但实际上租约尚未续签或出现故障/失败。

我建议尝试切换你正在使用的 dhcp 客户端。dhclient如果我没记错的话,NetworkManager 是默认自带的。你可以尝试安装dhcpcd(有关其他选项,请查看apt-cache search dhcp)。我建议这个的原因是因为man NetworkManager.conf它说这是受支持的(以及默认的,dhclient)。

然后/etc/NetworkManager/NetworkManager.conf你需要输入下面这行代码dhcp=dhcpd[main]例如,

[main]
plugins=ifupdown,keyfile,ofono
dns=dnsmasq
dhcp=dhcpcd

[ifupdown]
managed=false

我遇到过类似的问题,网络图标显示已连接,但实际上已停止工作,但我最近才意识到发生了什么,因为我正在慢慢学习网络知识。我不会说这是 100% 可靠的解决方案,但这是我能建议的。至少在我尝试了 dhcp 客户端设置后,我很少遇到这个问题。

另外,尝试禁用 ipv6、禁用 n 通道 wifi(如果您的卡支持的话)和电源管理,按照本文中的建议进行操作:http://itsfoss.com/speed-up-slow-wifi-connection-ubuntu/这些技巧主要是为了提高速度,但不会造成伤害

相关内容