CentOS 6的无状态NAT

我正在设置以下内容:

---[IVR 1] | (internet)----[CentOS box]---+---[IVR 2] | ---[IVR 3] 

CentOS盒子的内部接口是192.168.110.1,IVR是192.168.110.101-103。

我想要做的是将一串外部UDP端口映射到每个IVR – 例如,端口10000-14999映射到IVR 1,15000-19999映射到IVR 2等。我遇到的问题是即端口必须直接映射 – 即从互联网到端口10000的内容被发送到IVR上的端口10000,IVR 1中的端口10000发送的内容将从networking上的端口10000发送出去,面向CentOS盒子的界面。

iptablesNAT的东西都带有警告,它会尽量不重新映射端口,但可能不得不。

现在,我的选项如下所示:

  • 单独映射端口(15,000 iptables行,每个端口一个) ipables -t nat -A PREROUTING -i eth0 -p udp --dport 10000 -j DNAT --to 192.168.110.101:10000

  • 在UDP conntrack超时的情况下build立一个内核

这两者都非常有吸引力。

我错过了什么?

怎么样

 PREROUTING -i eth0 -p udp --match multiport --dport 10000-14999 -j DNAT --to 192.168.110.101 

要么

 PREROUTING -i eth0 -p udp --match multiport --dport 10000-14999 -j DNAT --to 192.168.110.101:10000-14999 

编辑

 -t nat -A PREROUTING -i eth0 -p udp --match multiport --dport 10000-14999 -j DNAT --to 192.168.110.101 -t nat -A POSTROUTING -s 192.168.110.101 -j SNAT --to-destination 192.168.110.1