要通过网桥将虚拟机的网络接口映射到主机(Ubuntu 22.04)之外,以便可以从外部访问KVM虚拟机,你的配置基本上是正确的。不过,在使用netplan配置文件时,请确保以下几点:
正确的缩进:YAML对缩进非常敏感,确保缩进使用空格而不是制表符,并保持一致。
必要的网络设备状态:在你设置网桥之前,确保
enp0s3
网络接口处于“未连接”状态,因为一旦它被添加到网桥中,它就不应单独配置。应用更改:编辑完成后,需要运行
sudo netplan apply
来使更改生效。
下面是一个稍微整理过的示例,如果你的网络接口名称确实是 enp0s3
,可以直接使用这个配置:
network:
version: 2
ethernets:
enp0s3:
dhcp4: false
dhcp6: false
bridges:
br0:
interfaces: [enp0s3]
dhcp4: false
addresses: [192.168.1.162/24]
macaddress: 08:00:27:4b:1d:45
routes:
- to: default
via: 192.168.1.1
metric: 100
nameservers:
addresses: [4.2.2.2]
parameters:
stp: false
步骤总结:
- 创建或修改
/etc/netplan/01-netcfg.yaml
文件,写入上述内容。 - 确保保存文件并关闭编辑器。
- 执行命令
sudo netplan apply
应用新的网络配置。 - 在 KVM 中创建虚拟机时,将其网络接口设置为
br0
网桥,这样虚拟机就能够通过该网桥与外界通信。
如果之后还无法访问虚拟机,请检查防火墙设置以及确认路由器上的DHCP和IP分配是否正常工作。
内容由零声教学AI助手提供,问题来源于学员提问