使用 systemd-networkd 将外部 IP 的所有流量直接路由到 KVM guest 虚拟机

使用 systemd-networkd 将外部 IP 的所有流量直接路由到 KVM guest 虚拟机

我有一台运行 Debian Buster 的专用服务器。我通过单个网络接口进行连接,并从服务器提供商处订购了额外的 IP。

我想设置一个 KVM 来宾,它将直接使用额外的 IP。我已经用谷歌搜索了这个问题并发现了一些可能使用桥的方法。不过,我想确保到辅助 IP 地址(来宾)的流量永远不会经过主机,以避免泄漏主机和来宾在同一台计算机上运行的信息。

我的猜测是使用防火墙规则,但我不是 iptables 方面的专家,并且不想出于安全原因错误配置它。

将流量直接路由到来宾并确保其永远不会到达主机系统的最佳策略是什么?

是否可以在堆栈中的以太网级别路由流量?

主机使用firewalld和systemd-networkd单元文件进行网络配置。主机IP和额外IP都在同一子网中。来宾将是一台 Debian KVM 机器。

编辑:关于流量路由,我的意思是,如果它通过主机防火墙(内核网络堆栈),然后仅路由到来宾,而不留下它通过防火墙的线索,那就可以了。这意味着主机中的任何服务都无法通过第二个 IP 获得。

答案1

主机上的软件桥可以为您提供这一功能,只需在桥上配置主机 IP 即可。 (在与内部桥接端口相对应的访客接口上配置额外的 IP,对主机不可见。)桥接器是以太网级别 (L2) 设备,不会在 IP 级别 (L3) 路由中显示为单独的跃点。

相关内容