【发布时间】:2014-12-29 22:12:51
【问题描述】:
我有一个“主”服务器设置,然后是一组“从属”来完成艰苦的工作。所有用户都连接到“主”,然后将他们重定向到“从”。
理想情况下,我希望系统以这样一种方式工作,即用户连接到“主”,然后重定向到“从”,然后所有未来的通信都直接在用户和“从”之间完成,没有任何数据包通过通过“主要”。
现在我正在使用 iptables:
iptables -t nat -A PREROUTING -i eth0 -p udp -j DNAT --dport $2 --to $1:$2
iptables -t nat -A PREROUTING -i eth0 -p tcp -j DNAT --dport $2 --to $1:$2
该服务同时使用 UDP 和 TCP,会话只建立一次,然后长时间使用,数据双向传输(Minecraft 服务器)。
虽然使用 iptables 的设置工作正常,但问题是(据我所知)所有流量都通过“主”,从而导致高数据成本。此外,当从属服务器寻找他们连接的人时,似乎他们甚至无法获得用户的 ip,而是获得了“主”的 ip。
如何让“初始化”只通过 main 发生,其余流量直接通过?我需要代理吗?我应该对 iptables 使用一些其他参数吗?
感谢您的帮助!我一直在努力寻找答案,但这个领域的所有术语都让我感到困惑。
/b3
【问题讨论】:
-
相信可以使用 iptables 和/或代理来实现我想要做的事情,我现在已经建立了一个带有动态 DNS 的设置来处理“负载平衡”。当然这限制了灵活性......