iptables与vlans和重复的IP

我正在设置一个testing实验室的情况下,多台计算机将具有相同的IP地址,所以他们需要vlan分离。 例如,一组虚拟机的IP地址为192.168.1.200,192.168.1.201等。另一组虚拟机也将具有相同的IP地址。

我想为每个虚拟机提供NAT映射,这样每个虚拟机都可以公开访问。 我正在使用Ubuntu 11.04和iptables。

注意:我通常是Windowspipe理员,但是Linux是更好的解决scheme。

所以基本上我想要iptables的NAT映射指向一个特定的接口,并允许多个重复的IP共存。

这是可能的一个单一的Ubuntu设备? 我正在使用虚拟networking结构,所以我没有在所有这些之间的物理networking设备。

这里有一个图表来表示它:

在这里输入图像说明

我的NAT规则可能是这样的:

iptables -t nat -I PREROUTING -d 72.73.74.75 -j DNAT --to-destination 192.168.1.200 -o eth1.5 iptables -t nat -I POSTROUTING -s 192.168.1.200 -j SNAT --to-source 72.73.74.75 -i eth1.5 

这似乎只与公共网卡一起工作的-i和-o,这是我无法完成的工作。 例如,在POSTROUTING(SNAT)中使用-i会出现以下错误:不能对POSTROUTING使用-i。 -o和DNAT一样。

任何build议,以实现这一目标?

您需要使用第二个NAT来解决您的问题 – 在每个VLAN上创build具有不同IP的第四个虚拟机,并在第四个虚拟机的VLAN上创build第二层NAT。 当然,您也可以在Ubuntu SPF上创build第四个虚拟机。

但是,我不得不提出这个问题: 为什么你要这样做—你可以只有两个Ubuntu的盒子,一个是五个,一个是六个?