firewalld 使用 NAT 转发阻止 libvirt 区域和来宾虚拟机访问默认网络中的主机 LAN

firewalld blocks libvirt zone and guest vm accessing host lan in default network with nat forwarding

提问人:benibilme 提问时间:2/9/2023 更新时间:2/9/2023 访问量:495

问:

我正在运行 firewalld 的 arch linux pc 上测试基于 libvirt/qemu/kvm 的 linux guest vm。

简单的 linux guest 使用带有 nat 转发的默认 libvirt 网络。根据 libvirt 文档,客户机应该能够访问主机网络 (LAN),而无需额外配置。libvirt 安装会在 firewalld 中创建一个名为 libvirt 的区域,并将 virbr0 虚拟网桥连接到该区域。

我没有对 firewalld 进行任何其他配置。客户机可以 ping 主机,主机可以按预期 ping 客户机。但是,客户机无法对主机网络中的其他计算机执行 ping 操作。在过滤数据包时执行 ping 响应。

但是,基于 https://lukas.zapletalovi.com/posts/202...rt-network post,如果我将 virbr0 桥接器放到信任区域,那么 guest 可以访问主机网络中的主机 LAN 或 ping 机器。

我在 firewalld 和 libvirt 中尝试了许多方法,以使初始默认设置正常工作,例如创建策略等,但都没有奏效。

我很欣赏任何关于原因的见解。我肯定缺乏 firewalld 或 libvirt 或两者兼而有之的知识。

虚拟机 kvm libvirt firewalld

评论

0赞 benibilme 2/18/2023
我注意到,除非接受防火墙区域目标,否则要使流量从一个区域流向另一个区域,必须定义一个策略。信任区域接受所有入口或入口流量。我想,我需要以两种方式定义从 libvirt 区域到其他区域的策略,即每个方向的策略。

答: 暂无答案