promox ufw ip routing

时间:2017-03-07 14:17:51

标签: routing iptables proxmox ufw

我尝试将带有外部ip类映射的proxmox节点设置为内部ip类:

62.xxx.yyy.zzz / 24< - > 192.168.yyy.zzz / 24

内部ip上的每个外部ip匹配,因此每个VM都有自己的外部ip。 proxmox主机获得的是自己的外部IP(在/ 24范围之外)并且自己进行了网络访问。

如果我使用:     #NAT表规则     * NAT     :POSTROUTING ACCEPT [0:0]

# Forward traffic through eth0 - Change to match you out-interface
-A POSTROUTING -s 192.168.0.0/16 -o vmbr0 -j MASQUERADE

# don't delete the 'COMMIT' line or these rules won't be processed
COMMIT

所有使用ip 192.168.x.x的VM都可以使用主机的IP地址访问Web。

如果我用:

更改-A POSTROUTING LINE
-A PREROUTING  -o vmbr0 -d 62.xxx.yyy.0/24 -j DNAT --to-destination 192.168.yyy.0/24
-A POSTROUTING -o vmbr1 -s 192.168.yyy.0/24 -j NETMAP DNAT --to-destination  62.xxx.yyy.0/24

我收到的错误是DNAT目的地不是ip而是一个类,似乎不支持NETMAP ......

有什么想法指向我吗?

谢谢!

斯特凡

1 个答案:

答案 0 :(得分:0)

你应该尝试使用iptables 1:1 NAT。

您需要这样的规则:

iptables -t nat -A PREROUTING -i internet_interface -d 62.xxx.yyy.0/24 -j NETMAP --to 192.168.yyy.zzz/24

我认为以下链接将明确帮助您实现目标: https://serverfault.com/questions/109569/iptables-massive-11-nat

ufw只是一种实现ip表规则的简单方法。在您的情况下,我认为最好的方法是创建自己的iptables规则,而不使用ufw或任何其他类似的防火墙实用程序(在Linux上它们都基于iptables)。