Proxmox:如何将流量路由到 CT(VM)

Proxmox:如何将流量路由到 CT(VM)

我有一台 Promox 服务器,有 3 个 IP(主 IP 和 2 个附加 IP)。服务器有 3 个 CT,我想将所有 3 个 IP 分配给这些 CT。

将它们直接分配给 CT/VM 不起作用(甚至无法访问网关)。所以我用 执行了 NAT1:1 -j NETMAP

从外部来看它可以正常工作,但我无法使用它们的外部 IP 地址连接各个 CT 之间。

配置:

所有 CT/VM 都连接到 vmbr0(外部静态 IPv6)和 vmbr1(内部静态 IPv4)。

iface ens3 inet manual

auto vmbr0
iface vmbr0 inet static
    address 176.X.Y.Z/24 #Main IP
    gateway 176.X.Y.GW
    bridge-ports ens3
    bridge-stp off
    bridge-fd 1
# InterNet

iface vmbr0 inet6 static
    address <ip6_subnet_here>::1/64
    gateway fe80::1

        post-up   /srv/bin/router-up.sh
        post-down /srv/bin/router-down.sh

auto vmbr0:1
iface vmbr0:1 inet static
    address 31.A.B.C/24 # First additional IP

auto vmbr0:5
iface vmbr0:5 inet static
    address 31.A.B.D/24 # Second additional IP

NAT 的 IPTables 规则在这里/srv/bin/router-up.sh

-A PREROUTING -d 176.X.Y.Z/32 -j NETMAP --to 192.168.1.25/32 #192.168.1.25 is CT1 IP in vmbr1
-A PREROUTING -d 31.A.B.C/32 -j NETMAP --to 192.168.1.9/32 #192.168.1.9 is CT2 IP in vmbr1
-A PREROUTING -d 31.A.B.D/32 -j NETMAP --to 192.168.1.2/32 #192.168.1.2 is CT3 IP in vmbr1
-A POSTROUTING -s 192.168.1.25/32 -j NETMAP --to 176.X.Y.Z/32
-A POSTROUTING -s 192.168.1.9/32 -j NETMAP --to 31.A.B.C/32
-A POSTROUTING -s 192.168.1.2/32 -j NETMAP --to 31.A.B.D/32

/srv/bin/router-down.sh只是删除这些规则。

请建议如何更改配置以便能够从每个 CT/VM 连接到其他 CT/VM(使用外部 IP)。谢谢。

相关内容