我有一个带有多个 eth N接口(我的“大防火墙”)的 Linux 防火墙路由器(专用机器)。所有转发的流量都由一组iptables
规则过滤(默认策略 DROP)。
还有另一台专用机器(“vmhost”)将使用 KVM / QEMU / libvirt / virsh 托管多个虚拟机。
防火墙路由器(物理服务器)和vm主机(另一台物理服务器)通过跳线直接连接(路由器的eth2 <-> vmhost的eth0)。
我不希望 vmhost 上的虚拟机能够通信
- 对彼此
- 或到 VM 主机
除了通过外部防火墙路由器。
因此,我在两侧(路由器和 vmhost)配置了多个 802.1q 标记的 VLAN:eth0.10、eth0.11 等(另一侧为 eth2.10、eth2.11、...),每个都有一个不同的/30
子网(一个主机 IP = 路由器,另一台主机 IP = VM)。因此,每个虚拟机都有自己的标记 VLAN 和自己的子网。
我想用它来将 VM 流量从属于中央防火墙路由器的 iptables 规则。VM 只能访问明确允许的 IP 地址和端口。
如何将 VM 配置为绑定到专用 VLAN 接口(例如eth0.10
)?关于net
, netdev
, nic
, ...
我明确不想在虚拟机的网络或虚拟机和主机之间架起桥梁。
// 稍后添加:两台服务器都使用 Debian 10 amd64。