CachyOS 中使用的防火墙是 UFW(Uncomplicated Firewall),这是官方从 2024 年中后期(约 6 月更新开始)就改成预设的防火墙工具,取代了之前的 firewalld。
ufw 默认规则下,QEMU 虚拟机安装好系统之后(例如 Windows 10/11)无法联网,需要通过 ufw 命令创建防火墙规则来允许 QEMU 虚拟机与宿主机网络接口通讯,网络联接上网。
# 查看目前状态(最常用)
sudo ufw status verbose
# 查看 VM 网络接口 virbr0 的名称
ip route show default
#(看 via 后面的介面,例如 enp3s0 或 wlp4s0)
# 假设你的外部介面是 enp3s0(有线)或 wlan0(无线),后面会用到。
# 允许 virbr0 的转发流量(route allow)这是关键步骤,让 VM 的流量可以「出去」:
sudo ufw route allow in on virbr0 out on enp3s0
# 允许 virbr0 上的 inbound/outbound(基本开放 VM <-> host 通讯)
sudo ufw allow in on virbr0
sudo ufw allow out on virbr0
# 重新载入 UFW 让规则生效
sudo ufw reload
# 确认 libvirt default 网络运行
virsh net-list --all
virsh net-start default # 如果是 inactive
# 自动启动 default 网络
virsh net-autostart default
# 重启 libvirtd 服务
sudo systemctl restart libvirtd