解决linux网络接口消失的问题

0x00 恶心的网络问题--可能错怪VM了

在vmware虚拟机上的linux系统,有时明明用着一直有网,可突然有一次开机就没网络,之后无论怎么重启都无法使网络连接上。
之前我一直以为是vmware的问题,一直在vmware上折腾,来回设置桥接,NAT,但是无果。最后只能通过重装虚拟机或者整个vmware来解决。 可能这是一个很简单的问题,刚好这学期加强了一下计算机网络的知识才突然意识到

0x01 查看ifconfig

今天启动虚拟机,通过vscode的ssh插件连接上虚拟机,发现网络又不通了。在虚拟机上查看ifconfig

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:91:30:75:74 txqueuelen 0 (以太网)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (本地环回)
RX packets 760 bytes 55418 (55.4 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 760 bytes 55418 (55.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
发现只有两个网卡,一个是docker0,一个是lo,没有ens33,这就是问题所在。不是网线没接上,而是我网卡掉了啊。
而且这个掉网卡似乎还不能通过重启计算机来解决
说好重启解决90%的问题呢

0x02 解决办法

于是查找linux网卡掉了怎么办,发现可以通过以下命令来解决

1
2
3
4
5
6
sudo service NetworkManager stop 

sudo rm /var/lib/NetworkManager/NetworkManager.state

sudo service NetworkManager start

重启NetworkManager服务,轻松解决,至于为什么会掉网卡,我也不知道,大概是因为关机姿势不对吧。
而且我解决问题之后想去看看这个NetworkManager.state文件到底是个什么东西,发现里面是乱码,是系统重启后自动生成的。


解决linux网络接口消失的问题
https://jfsas.github.io/2024/09/29/解决linux网络接口消失的问题/
作者
JFSAS
发布于
2024年9月29日
许可协议