在 2 座网桥上路由 2 个公共 IP 范围

在 2 座网桥上路由 2 个公共 IP 范围

我已经设置了一个新的 Proxmox 8 服务器,但无法正确设置网络。具有单个 IP 范围的普通桥接接口很容易实现,但使用 2 个桥接时,我似乎无法让 2 个 IP 范围正确路由。

背景:

  • Proxmox 主机有一个物理接口,eno1可直接插入我的托管服务提供商的交换机
  • 我的托管服务提供商为我提供了 2 个 IP 范围。
    • 129.212.157.200/29(网关为 129.212.157.201)
    • 129.212.175.24/29(网关为 129.212.175.25)
  • 我创建了两个网桥,vmbr0vmbr1。这是为了提供第 2 层隔离,因为我并不完全信任上的虚拟机vmbr1,因为第三方供应商对它们具有 root 访问权限。
  • 访问 Proxmox 服务器的主要 IP 地址应该是 129.212.157.202。

我的理解是,这种情况需要路由配置。然而,这正是事情开始崩溃的地方。

我的/etc/network/interfaces配置如下:

auto lo
iface lo inet loopback

auto eno1
iface eno1 inet static
    address 129.212.157.202/29
    gateway 129.212.157.201

auto vmbr0
iface vmbr0 inet manual
    bridge-ports none
    bridge-stp off
    bridge-fd 0

auto vmbr1
iface vmbr1 inet manual
    bridge-ports none
    bridge-stp off
    bridge-fd 0

vmbr0理想情况下,我希望在和上混合搭配来自两个 IP 范围的 IP vmbr1。换句话说,我不希望将一个 IP 范围专门分配给vmbr0,而将另一个 IP 范围专门分配给vmbr1

我已使用以下路线手动添加ip ro

default via 129.212.157.201 dev eno1 proto kernel onlink
129.212.157.200/29 dev eno1 proto kernel scope link src 129.212.157.202
129.212.175.24/29 via 129.212.175.25 dev eno1
129.212.175.25 dev eno1 scope link

现在,我尝试创建一个虚拟机并将虚拟网卡绑定到vmbr0,我也尝试了vmbr1。对于这两种组合,我都尝试使用 129.212.157.200/29 范围以及 129.212.175.24/29 范围的 IP 配置虚拟机,分别使用网关 129.212.157.201 和 129.212.175.25。无论我为虚拟机使用哪种 vmbr 和 IP 地址组合,我似乎都无法获得连接。我甚至无法从虚拟机内部 ping 网关 IP。

为了进行比较,并测试两个 IP 范围是否确实可以通过提供的网关路由,我已按照 Proxmox 文档成功设置了一个简单的桥接实现,其中包含一个 vmbr0,并且对于两个 IP 范围和两个网关来说,它都可以正常工作。只有当我切换到路由方法时,事情似乎才会崩溃。

我还确认 Proxmox 主机上均启用了代理 ARP 和 IP 转发。

对我来说,这看起来像是 Proxmox 主机上的路由问题,但就我而言,我看不出我做错了什么。

据我所知,我没有配置任何特殊的防火墙规则。我确实在数据中心级别、主机级别和虚拟机级别启用了防火墙。我尝试过关闭主机和虚拟机级别的防火墙,但这似乎也没有什么效果。

有人提出的一个建议是实施 NAT,但我不明白为什么这有必要,因为每个虚拟机只有一个公共 IP,而没有私有 IP 范围。

相关内容