我通过以太网电缆直接插入我的台式机来上网;Windows 和 Ubuntu 在同一台机器上。
问题是,登录后互联网可以工作(尽管速度比 Windows 慢)大约 10 分钟,之后连接消失:ping
什么都不能做,nslookup
也没有响应。然后大约 10 分钟后连接恢复。
我对 Ubuntu 不太熟悉,如果缺少一些信息,请见谅。我有
Ubuntu version: 10.04.4 LTS
Codename: lucid
(由于某种原因我必须继续使用10.04
并且现在无法升级到新版本)
网络接口:
~$ cat /etc/network/interfaces
auto lo
iface lo inet loopback
以太网控制器:
~$lspci -v
...
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
Subsystem: ASUSTeK Computer Inc. Device 8432
Flags: bus master, fast devsel, latency 0, IRQ 31
I/O ports at d000 [size=256]
Memory at f2104000 (64-bit, prefetchable) [size=4K]
Memory at f2100000 (64-bit, prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: r8169
Kernel modules: r8169
...
答案1
我已经通过将内核驱动程序版本从 r8169 更改为 r8168 解决了这个问题。 http://www.foxhop.net/realtek-dropping-packets-on-linux-ubuntu-and-fedora
答案2
- 更新您的系统,尤其是内核。重新启动并立即检查。
如果仍然没有解决,请尝试获取更稳定的驱动程序,例如 R8168B:
下载 R8168B Linux 驱动程序:
旧版本:
wget http://www.foxhop.net/attachment/r8168-8.023.00.tar.bz2 tar vjxf r8168-8.023.00.tar.bz2
或从以下网址获取最新版本Realtek。
检查内置驱动程序 r8169.ko(或内核 2.4.x 的 r8169.o)是否已安装:
lsmod | grep r8169
如果 lsmod 命令返回输出,则似乎已安装 R8169,因此使用以下命令删除 r8169:
sudo rmmod r8169
安装 Realtec r8168b nic 驱动程序:
cd r8168-8.023.00
sudo ./autorun.sh
防止r8169驱动程序再次加载:
echo "blacklist r8169" >> /etc/modprobe.d/blacklist.conf
您现在可以通过运行以下命令来验证 r8168b 是否已安装并加载:
lsmod | grep r8168
为了避免 R8169 驱动程序在重启后返回,请使用以下命令清理缓存:
update-initramfs -u