解决 Ubuntu 虚拟机网卡消失无法上网问题

通过 VMware 打开 Ubuntu 虚拟机后,偶尔会发生识别不到网卡,进而无法上网问题。ifconfig 命令也查不到网口,只查到一个 lo 本地环回网络,之前的 ens33 网口信息消失不见了。网上一系列教程都是让该 VMware 网络配置之类的,根本没用,浪费时间和精力。

终极解决方法非常简单,只是一条设置 DHCP 自动获取 IP 的命令:

1
sudo dhclient ens33

dhclient 命令是 “DHCP client” 的缩写,是用于动态获取或释放 IP 地址。可以通过 dhclient 命令重新设置下网卡模式,使得 DHCP 自动获取刷新下。静态模式的网卡不会主动向服务器获取 IP 地址等网卡信息。

然后,ifconfig 命令就显示出来 ens33 网口信息了,IP 地址出来了:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$ ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.52.129 netmask 255.255.255.0 broadcast 192.168.52.255
inet6 fe80::20c:29ff:fef5:e52f prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:f5:e5:2f txqueuelen 1000 (以太网)
RX packets 572 bytes 42393 (42.3 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 258 bytes 33131 (33.1 KB)
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 2421 bytes 176334 (176.3 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2421 bytes 176334 (176.3 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0