2014-05-14 38 views
7

我要重定向上的端口范围(30000〜40000)到不同的主机上的不同端口范围(10000-20000)进来的请求上的其他端口范围1映射它们为1。 (30000到10000,40000到20000等) 如果端口范围是相同的,即:Iptables的转发端口范围​​到不同的主机

iptables -t nat -I PREROUTING -p tcp -m tcp --dport 10000:20000 -j DNAT --to [local_ip]:10000-20000 

它完美。但是,如果初始端口范围是辅助主机上从端口范围不同:

iptables -t nat -I PREROUTING -p tcp -m tcp --dport 30000:40000 -j DNAT --to [local_ip]:10000-20000 

然后代替每个端口映射的与它的相应的端口上的端口30000-40000所有进来的连接,而不是映射到相同的(随机我觉得在辅助主机上)端口(目前他们都去13675)。

我也曾尝试使用

-j REDIRECT 

我不能得到这工作要么使用端口重定向。

我怎样才能保持与第一例子相同的行为与不同的端口范围的工作?

回答

2

经过大量的搜索和询问之下,显然是iptables的无法处理,甚至没有如使用伪接口。