后重启从 Windows XP 到 Gentoo Linux,我无法连接到任何地方(互联网、其他计算机、路由器)。如果我关闭 PC 然后正常启动而不是重新启动,互联网就可以正常工作。
Ifconfig
显示一切正常,除了没有接收/传输数据包。
ping 192.168.9.1
-> Destination Host Unreachable
mtr <ip>
什么都不显示,只有空行。仅适用于环回和配置中指定的 IP:/etc/conf.d/net.eth0
IP 通过 DHCP 和 MAC 地址自动分配(因此 Linux 和 Windows 具有相同的 IP)
IP 是静态的192.168.9.3
。
使用的路由器:(Asus WL-500gP
带有 Oleg 固件),整个网络是100 Base-T
,IP:192.168.9.1
MASK:255.255.255.0
Windows 信息:
- 网卡:
Realtek RTL8139/810x Family
- 驱动程序版本:
5.719.325.2009
Linux 信息:
- 德尔福能源公司:
8139too RealTek RTL8139
- 内核内置驱动:
RealTek RTL-8129/8130/8139 PCI Fast Ethernet Adapter
- 内核版本
3.5.7
和最新版本3.7.4
(gentoo-sources)
NIC 上的 LED 仅在 Windows 中闪烁,即使在 POST 期间也保持黑屏。
答案1
Google 是我的朋友。感谢Ubuntu 论坛非常棒维基百科:
使用基于 Realtek 8168 8169 8101 8111(C) 的 NIC(卡/和板载)的用户可能会注意到一个问题,即 NIC 似乎在启动时被禁用,并且没有 Link 指示灯。这通常可以在安装了 Windows 的双启动系统上找到。似乎在 Windows 下使用官方 Realtek 驱动程序(日期在 2007 年 5 月之后)是原因。这些较新的驱动程序通过在 Windows 关闭时禁用 NIC 来禁用 LAN 唤醒功能,它将保持禁用状态直到下次 Windows 启动。如果 Link 指示灯在 Windows 启动前一直熄灭,您将能够注意到此问题是否影响您;在 Windows 关闭期间,Link 指示灯将熄灭。正常操作应该是只要系统处于开启状态,Link 指示灯就一直亮着,即使在 POST 期间也是如此。此问题还会影响没有较新驱动程序的其他操作系统(例如 Live CD)。
可能的解决方案:
- 回滚/更改 Windows 驱动程序
- 在 Windows 驱动程序中启用 WOL
- 较新的 Realtek Linux 驱动程序
- 在 BIOS/CMOS 中启用 LAN Boot ROM
我尝试了第二个,它可以工作。第四个不工作(MB 是一些旧的 EPoX)。
要启用 WOL,请按WIN+ R-> devmgmt.msc
-> 双击您的 NIC -> 在“高级”选项卡上设置关机网络唤醒至Enabled
。 重启!
如果你感兴趣的话,可以在这里找到 bug:https://bugzilla.kernel.org/show_bug.cgi?id=53521
答案2
您使用的内核版本是什么?我至少会尝试使用 Linux 内核的最新稳定版本。
我对此的初步了解是,这很可能是一个错误,Windows 对硬件“做了一些事情”,而硬件在常规重启时无法正确重置,但是是在完全关闭电源期间重置。无论 Windows 做什么,都与8139too
驱动程序的工作方式不兼容。
使用最新内核版本将降低出现已修复错误的可能性。如果最新内核版本无法解决错误,我会在发给 LKML(Linux 内核邮件列表)或至少发给 Gentoo 开发人员的电子邮件中包含以下内容:
- 输出
lspci -nnvv
dmesg
冷启动时以太网正常工作的输出dmesg
Windows 重新启动时的输出