虚拟机没有网络

虚拟机没有网络,主机有网络

换了多个模式都没有用

1
2
3
4
5
6
7
8
9
10
11
12
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:42:38:90 brd ff:ff:ff:ff:ff:ff
altname enp2s1
inet6 fe80::20c:29ff:fe42:3890/64 scope link
valid_lft forever preferred_lft forever
分析问题:网卡(ens33)目前处于 DOWN(关闭) 状态,而且没有分配到 IP 地址。

1.尝试手动开启: 在终端输入以下命令尝试激活它:

Bash

1
2
sudo ip link set ens33 up
sudo dhclient ens33

然后再输入 ip a 看看是否出现了类似 inet 192.168.x.x 的地址。

2.虚拟机软件设置问题(VMware)

由于你的网卡名称是 ens33,推测你使用的是 VMware。请检查以下物理设置:

  • 网卡未连接: 在虚拟机窗口右下角,检查那个“小电脑”图标。如果是灰色或有一个红叉,右键点击它,选择 “连接” (Connect)
  • 网络连接模式: * 桥接模式 (Bridged): 虚拟机会像主机一样直接连接到你的路由器,获得一个和主机同网段的 IP。
    • NAT 模式 (推荐): 虚拟机通过主机上网。如果主机有网,虚拟机通常也能通。
    • 检查方法: 虚拟机设置 -> 网络适配器 -> 确保勾选了“启动时连接”。

3. Ubuntu 网络服务未配置

现代 Ubuntu 使用 Netplan 来管理网络。如果配置文件写错了,网卡就不会自动获取 IP。

  • 查看配置文件:

    Bash

    1
    ls /etc/netplan/

    通常有一个类似 01-network-manager-all.yaml50-cloud-init.yaml 的文件。

  • 检查内容: 确保文件里包含 dhcp4: true。一个标准的 NAT 模式配置如下:

    YAML

    1
    2
    3
    4
    5
    network:
    version: 2
    ethernets:
    ens33:
    dhcp4: true

    修改后执行 sudo netplan apply 即可生效。