通过VM iproute多个ADSL负载均衡器


10

很长一段时间(2年?),我一直在运行具有非常基本的出站负载平衡功能的虚拟机(Ubuntu 12.04服务器),通过不同的ADSL路由器发送不同的出站连接。

通过使用没有NAT伪装的iproute进行简单配置,NAT由出站ADSL路由器本身管理,允许连接绕过负载平衡路由器VM直接直接路由回发送方。路由器VM上也没有防火墙规则(iptables)。

echo 1 > /proc/sys/net/ipv4/ip_forward

# flush initially
ip route flush cache

# remove whatever is there for the default to begin with
ip route delete default

# default load balancing rule
ip route add default scope global \
    nexthop via ${ROUTER2} dev ${INTERFACE} weight 6 \
    nexthop via ${ROUTER1} dev ${INTERFACE} weight 4

长期以来,这一直很好。

我最近将负载均衡器(Ubuntu 12.04服务器虚拟机)升级(了do-release-upgrade -d)到Ubuntu 14.04。

由于使用上述“ ip route add default”命令的升级Internet连接导致零星的连接问题,并导致无法使用的体验。几乎好像单个数据包正在通过两个路由器发送,而不是通过完整连接发送。

已经尝试使用第二个14.04虚拟机来达到相同的效果。

我希望在Ubuntu 14.04(当前内核:3.13.0-24)上具有相同的功能。我不知道发生了什么变化。

有什么建议?


很多人抱怨网络问题。您可以将内核升级到3.14吗?下面是一些安装说明:linuxg.net/...
SACX

升级到3.14会杀死VM。内核恐慌。也许我做的不对,但是我确实遵循了这些指示。同时,我已降级为12.04(重新安装VM)以继续使用旧的工作功能,直到2017年支持都可以。
Drew Anderson

因此人们意识到,我不再需要此解决方案(职位变动),因此我不知道我是否可以在14.04中使它工作。
德鲁·安德森

两个路由器都在同一个L3网络中吗?每个NIC /路由最好有1个子网。
user158798

Answers:


2

我意识到原来的海报不再需要解决方案,但是这是我针对此问题的最佳解决方案。我还意识到,发布者更喜欢使用Ubuntu,但是像这样手动配置路由规则对于将所有权转让给其他人甚至多年后仍无法引用自己来说不是一个好方法。

我个人建议使用PFSense VM进行更健壮的设置来平衡连接的负载。我可能还会建议在PFSense盒本身而不是在调制解调器上执行NAT。我在VM中配置了与此类似的东西,并且效果很好。

对于调制解调器与PFSense VM之间的连接,我使用具有vlan功能的交换机将3个单独的VLans连接到VM,并将它们拆分为交换机上的3个单独的端口。实际上,这提供了从每个调制解调器到pfsense盒的直接(虚拟)电缆,而另一条电缆到了lan。然后,您可以将调制解调器配置为直通,这取决于提供程序。

的确,这是绕过问题而不是直接解决问题,但是在我看来,将NAT放在调制解调器本身上就像在寻求麻烦。此外,PFSense专门设计为预包装的路由器解决方案,因此它支持并且将继续使用此类配置进行测试,以确保通过升级获得更好的可靠性。


作为回答,这个答案可能会更好,但是我对此没有声誉。
stonecrusher
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.