如何使用iptables来重新路由到本地连接管理器或主XMPP服务器(Openfire的)

问题描述 投票:0回答:1

我想要一个的Openfire XMPP服务器负载平衡连接 - 这样我主持第二个服务器上的连接管理器,并想使用IP表作为负载平衡器。这两个在Linux CentOS的6.3运行(是的,我知道这是老 - 上工作)。

我已经设置了端口5300连接管理器我的第二个服务器上(可以称之为服务器A)和XMPP服务器(服务器B)已经为很多年,现在愉快地运行,并继续这样做。

这个问题越来越负载均衡实际做任何平衡。

这些都是我在服务器A上应用(IP地址节录),试图在服务器B上的连接管理器在服务器A(端口5300)和XMPP服务(端口5222)之间的流量路由的PREROUTING规则:

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DNAT       tcp  --  0.0.0.0/0            <server A IP>      tcp dpt:5222 
statistic mode nth every 2 to:<server B IP>:5222
DNAT       tcp  --  0.0.0.0/0            <server A IP>      tcp dpt:5222 
to:<server B IP>:5300

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

我连接到服务器A通过使用端口星火5222并成功登录到XMPP服务。

我希望每一个甚至连接到服务器A上的5222端口已经被转发到Openfire的服务器上:5222,每奇连接被称为连接管理器上:5300。

回顾在Openfire的连接然而,似乎连接总是被通过连接管理器制作。

为什么这可能发生的任何想法,或如何纠正呢?我所知道的各种负载均衡软件解决方案在那里,但宁愿在本地处理此最大限度地降低成本。

centos iptables openfire
1个回答
0
投票

事实证明,XMPP服务器从未接收经由iptables的配置转发,由它的外观包 - 尚XMPP服务器设置为“接受”的所有默认规则,并没有其他的规则规定,并接受来自连接连接管理器。火花然后重新尝试的连接;等当然连接到连接管理器,因为这是“奇数”连接。

我会[发布新问题/识别现有]对于正在使用的iptables规则,以及为什么数据包不会被转发和/或接收的 - 比上面的简单问题。

© www.soinside.com 2019 - 2024. All rights reserved.