早上好。
我的 Ubuntu 互联网连接无法正常工作。我记得当我安装 Ubuntu 时它也无法正常工作,经过一番努力,我终于让它正常工作了。但上周末我不得不从我的电脑上拔出 LAN 电缆,现在我又把它插回去了。不幸的是,我的互联网连接现在不再正常工作了。
它确实在 Windows 7(双启动)上运行。
我执行了这些命令来向您展示输出:
$ sudo ethtool eth0
Settings for eth0:
Cannot get device settings: No such device
Cannot get wake-on-lan settings: No such device
Cannot get message level: No such device
Cannot get link status: No such device
No data available
-
$ ifconfig
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:2942 errors:0 dropped:0 overruns:0 frame:0
TX packets:2942 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:247513 (247.5 KB) TX bytes:247513 (247.5 KB)
-
$ lspci -nn | grep Ethernet
02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 06)
StallionSA 评论后编辑
我尝试了您的第一个命令,但没有结果:
$ sudo ip link set dev eth0 down
Cannot find device "eth0"
$ sudo dhclient eth0
Cannot find device "eth0"
$ sudo ip addr add 192.168.1.14/24 dev eth0
Cannot find device "eth0"
$ sudo ip link set dev eth0 up
Cannot find device "eth0"
$ sudo ip route add default via 192.168.1.1
RTNETLINK answers: Network is unreachable
之后,我尝试编辑接口文件,尝试动态和静态 IP,但都没有结果:
$ sudo /etc/init.d/networking restart
[....] Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code. See "systemctl status networking.service" and "journalctl -xe" for details.
failed!
在我编辑接口文件之前,它位于:
auto lo
iface lo inet loopback
编辑2
此命令适用于互联网连接:
sudo modprobe r8169 && dmesg | grep r816
每次重启时我都必须重新输入命令,如何解决这个问题?
答案1
要自动加载驱动程序,请打开终端并执行以下操作:
sudo -i
echo r8169 >> /etc/modules
exit
一切就绪。如果此方法无效,请检查模块是否被列入黑名单:
gksudo gedit /etc/modprobe.d/blacklist.conf
如果您没有文本编辑器 gedit,请使用 nano 或 kate 或 leafpad。检查是否有一行将 r8169 列入黑名单。如果有,请将其删除。仔细校对,保存并关闭文本编辑器。
另外,检查是否有任何特定文件将其列入黑名单:
ls /etc/modprobe.d
如果找到这样的文件,请将其删除。重新启动并告诉我们它是否正常工作。
答案2
摘自以下 ubuntu 文档。
https://help.ubuntu.com/community/NetworkConfigurationCommandLine/Automatic
配置接口
明智之言 我们将在此示例中使用 eth0,您的接口可以有不同的名称,请参阅查找您的网络接口。如果您已禁用 wicd 或网络管理器,则您可能不再有网络连接。通过常规 UTP 电缆连接到您的路由器,并假设您已启用 DHCP,请执行以下操作:
sudo ip link set dev eth0 down
sudo dhclient eth0
这将使用 DHCP 启动您的 eth0。您的网络现在已配置完毕(暂时)。
如果您没有启用 DHCP,请通过发出以下命令来配置您的网络,网关地址是路由器的 IP 地址。并且您的 IP 应该与路由器在同一范围内。
sudo ip addr add 192.168.1.14/24 dev eth0
sudo ip link set dev eth0 up
sudo ip route add default via 192.168.1.1
这些命令会配置您的接口,但这些更改在重启后将失效,因为信息不会存储在任何地方。这时,interfaces 文件就派上用场了。要永久配置接口,您需要编辑接口文件 /etc/network/interfaces。
sudo vi /etc/network/interfaces
配置动态 IP 地址
自动 eth0
iface eth0 inet dhcp
或者配置静态IP
自动 eth0
iface eth0 inet 静态
地址 192.168.1.14
网关 192.168.1.1
网络掩码 255.255.255.0
网络 192.168.1.0
广播 192.168.1.255
为了使这些设置生效,您需要重新启动网络服务。
sudo /etc/init.d/networking restart