连网 | Ubuntu 驱动已装 无法上网,解决
2019-05-01 本文已影响0人
imrdr
最近,我的Ubuntu不能上网了。刚装修的房子,起初我以为是装修布线的时候,水晶头没做好,也懒得弄,就插了个无线网卡上网,没搭理它。今天,有时间了就打算鼓捣鼓捣它。
“症状”:
- Windows可以上网,Ubuntu不能(我的是双系统。所以,可以确定不是网线的原因)
- 在Ubuntu中,
ping 127.0.0.1
可以通,ping 网关不通。
然后,我进行了以下测试:
- 查看网卡设备名称:
ip a
一般以
e
开头的是网卡,以wlan
开头的是无线网卡,lo
是本地回环。
我的是:eth0
- 查看网卡的型号:
lspci | grep net
#显示以下信息:
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL<u>8111/8168/8411</u> PCI Express Gigabit Ethernet Controller (rev 01)
注意里面的
8168
- 查看网卡驱动型号:
ethtool -i enp2s0
driver: <u>r8169</u>
...
...
- 查看网卡驱动的型号:
lspci -v | grep 816
Kernel driver in use: r8169
Kernel modules: r8169
注意里面的
8169
所以我的Ubuntu不能上网的原因是:网卡驱动与网卡物理设备型号不一致。
-
搜官网的驱动没找到
-
在Github上找到了 一个
-
最终解决:
git clone [https://github.com/mtorromeo/r8168](https://github.com/mtorromeo/r8168 "https://github.com/mtorromeo/r8168")
cd r8168
sudo apt-get install libelf-dev #因为提示没有这个库
cat ./autorun.sh #看了看没什么问题
sudo ./autorun.sh #偶是懒人
lsmod | grep r8168 #看了看驱动是否被加载
sudo vim /etc/network/interfaces
# 添加以下内容:
auto eth0
iface eth0 inet static
address 192.168.1.6 #你应该替换成你自己的IP地址
netmask 255.255.255.0 #替换成你自己的子网掩码
gateway 192.168.1.1 #替换成你自己的网关,一般是路由器的地址
dns-nameservers 8.8.8.8 # DNS服务器,我一直用这个
- 重启网络:
sudo /etc/init.d/network-manager restart
Shit! 我的网终于回来了。