重启后局域网不工作

重启后局域网不工作

我在新笔记本上安装了 Ubuntu 14.04,但网络连接出现了问题。当我启动电脑时,一切都运行正常,但使用右上角的按钮重启后(例如内核更新后),有线互联网就不再工作了。不过无线没有问题(但我主要使用 LAN)。这不可能是硬件问题,因为它在 Windows 上运行正常(它是双启动机器)。奇怪的是,如果我在重启前插入笔记本电脑,一切都会正常运行 - 即使我用电池重启(-> 坏了),然后再用交流电重启一次(-> 又修好了)。

我已经做了一些进一步的测试:如果我在重新启动之前切断连接(物理上,在网络管理器中或两者),则不会发生任何变化。sudo service networking restart对输出也没有影响

stop: Job failed while stopping 
start: Job is already running: networking

但是,sudo service network-manager restart它会像重新启动一样终止连接,迫使我关闭计算机,然后进行冷启动才能使其再次运行,但只有当笔记本电脑使用电池供电时才会发生这种情况。

我一直在想_

造成这种行为的原因是什么?

进一步的命令输出:

lspci -knn | grep Eth -A2

05:00.1 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 12)
Subsystem: ASUSTeK Computer Inc. Device [1043:200f]
Kernel driver in use: r8169

在 LAN 上(工作或不工作)以及在无线上(预料之中,我只是想确定一下)。

ifconfig

eth0      Link encap:Ethernet  HWaddr 08:62:66:b5:0f:78  
      inet addr:192.168.1.112  Bcast:192.168.1.255  Mask:255.255.255.0
      inet6 addr: fe80::a62:66ff:feb5:f78/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:9907 errors:0 dropped:0 overruns:0 frame:0
      TX packets:6660 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:9730805 (9.7 MB)  TX bytes:726284 (726.2 KB)

lo        Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:65536  Metric:1
      RX packets:2391 errors:0 dropped:0 overruns:0 frame:0
      TX packets:2391 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:228361 (228.3 KB)  TX bytes:228361 (228.3 KB)

答案1

我已经解决了这个问题:由于电池/交流电的情况,我查看了省电设置,powertop发现插入笔记本电脑会切换网络唤醒设置。

无论如何,通过反复试验,我发现 LAN 在重新启动和sudo service network-manager restart激活 LAN 唤醒后都可以工作(我不知道为什么,因为我很幸运地偶然发现了它 - 如果有人能提供任何见解,我会很高兴)。因此,我的解决方案是添加

sleep 1
sudo ethtool -s eth0 wol g

(睡眠的值可能与rc.local机器有关 - 我已经用 SSD 替换了计算机附带的 HDD,因此对于其他机器,它可能需要更高;诀窍是必须执行命令网络接口已配置)。这样,无论电源状态如何,wol 始终处于激活状态 - 但有一个例外:如果您在交流电上启动计算机并在一段时间后拔掉插头,它会恢复到关闭状态。通常,这不应该是一个太大的问题,因为您必须通过命令行重新启动网络管理器才能注意到它 - 如果确实有必要,重新启动也可能是一个好主意。不过,也可以通过添加一个小脚本来修复此行为/etc/pm/power.d/(类似于此问题的第一个答案中的脚本)问题):在电池模式分支中,输入

sudo ethtool -s eth0 wol g

并且 ac-mode-branch 保持为空。

相关内容