嵌套虚拟机配置网络桥接

147次阅读
一条评论

共计 2078 个字符,预计需要花费 6 分钟才能阅读完成。

前言

虚拟机推荐配置:

系统推荐 Ubuntu 2204 版本。(我用的 2404,出现了虚拟管理器还 没有适配最新版 的情况)

点击跳转下载 Ubuntu 22.04.5

嵌套虚拟机配置网络桥接

1CPU 8 核心,一个 cpu 不容易出现兼容性问题。

内存 4G,硬盘 60G,内存还要分配给嵌套的虚拟机,所以要大一点,硬盘也大一点,提高容错。

嵌套虚拟机配置网络桥接

确认虚拟化支持(机房一般已经设置好了)

egrep -c '(vmx|svm)' /proc/cpuinfo

没设置会显示 0,需要在虚拟机 cpu 部分改一下

嵌套虚拟机配置网络桥接

更新系统源与必要软件

sudo apt update
sudo apt upgrade
sudo apt install open-vm-tools

创建桥接接口 br0

查看有没有 br0 或者其他桥接接口。如果没有,需要先创建一个桥接(通常桥接到宿主机的物理网卡,比如 ens33)。

ip link show

编辑 netplan 配置(Ubuntu 20.04/22.04/24.04 默认用 netplan 管理网络):

sudo nano /etc/netplan/01-netcfg.yaml

写入内容(注意缩进要严格对齐):

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: no
      dhcp6: no
  bridges:
    br0:
      interfaces: [ens33]
      dhcp4: yes
      dhcp6: no
      parameters:
        stp: false
        forward-delay: 0

保存后应用:

sudo netplan apply

如果出现警告

sudo chmod 600 /etc/netplan/01-netcfg.yaml
sudo chmod 600 /etc/netplan/01-network-manager-all.yaml

再次应用

sudo netplan apply

在虚拟机 Ubuntu 的终端执行:

ip a
嵌套虚拟机配置网络桥接

现在 br0 已经配置好了,可以在 virt-install 里用桥接模式启动虚拟机了

创建嵌套虚拟机

sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients virtinst bridge-utils ovmf

启动开启开机自启并检查 libvirtd:

sudo systemctl enable --now libvirtd
sudo systemctl status libvirtd

创建文件夹,创建虚拟磁盘

sudo mkdir -p /var/lib/libvirt/images/ubuntu2204
sudo qemu-img create -f qcow2 /var/lib/libvirt/images/ubuntu2204/ubuntu.qcow2 30G

我们现在需要连接 ssh,把镜像上传到 Ubuntu

如果 ssh 连接失败,可能是没有安装 open ssh server

sudo apt install openssh-server
嵌套虚拟机配置网络桥接

上传完成后将 ISO 放到 libvirt 默认目录。为什么这么做?
因为 qemu 进程不是以你当前的 ubuntu 用户运行,而是以系统用户 libvirt-qemu 运行。
默认情况下,/home/ubuntu 目录权限是 700(只有自己能访问),所以 qemu 无法“穿过”这个目录去读取 ISO。

sudo mkdir -p /var/lib/libvirt/boot
sudo cp /home/ubuntu/ubuntu-22.04.5-desktop-amd64.iso /var/lib/libvirt/boot/

创建虚拟机

sudo virt-install \
  --name ubuntu2204 \
  --ram 2048 \
  --vcpus 4 \
  --cpu host \
  --disk path=/var/lib/libvirt/images/ubuntu2204/ubuntu.qcow2,format=qcow2,bus=virtio \
  --cdrom /var/lib/libvirt/boot/ubuntu-22.04.5-desktop-amd64.iso \
  --os-variant ubuntu22.04 \
  --graphics vnc,listen=0.0.0.0 \
  --network bridge=br0,model=virtio
嵌套虚拟机配置网络桥接

此时会直接进入安装界面

嵌套虚拟机配置网络桥接

如果没有进入安装界面,可以在 Windows 下载 VNC 连接,或者在 Ubuntu 安装 虚拟系统管理器 连接

嵌套虚拟机配置网络桥接

虚拟机创建完成后可以看到,嵌套虚拟机的 IP虚拟机的 IP 一样

至此嵌套 虚拟机桥接配置完成

没有进入安装界面的情况

方法一:windows 上安装 VNC 连接

确认 IP 和 VNC 端口,在 Ubuntu 上执行:

sudo ss -tlnp | grep qemu
ip a
嵌套虚拟机配置网络桥接

例如我的就是 192.168.157.153:5900

这个 ip 加端口是用来给 VNC 连接的。

方法二:Ubuntu 上安装 虚拟系统管理器 连接

sudo apt update
sudo apt install virt-manager

安装后打开

嵌套虚拟机配置网络桥接

打开后,可以看到成功出现了图形化界面。

嵌套虚拟机配置网络桥接

如果是在机房操作,遇到网络问题,需要 配 IP的解决方法

校园网环境 配置 虚拟机桥接 – 魈枫の技术栈

正文完
 2
xiaofeng
版权声明:本站原创文章,由 xiaofeng 于2025-10-21发表,共计2078字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(一条评论)
hein 评论达人 LV.1
2025-10-21 16:11:58 回复

我竟有点微博

 Windows  Edge  中国重庆重庆市电信