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

很长一段时间(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

这已经很好地运作了很长时间.

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

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

已尝试使用具有相同效果的第二个14.04虚拟机.

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

有什么建议?

最佳答案
我意识到原始海报不再需要解决方案,但这是我对这个问题的最佳解决方案.我也意识到海报更喜欢使用Ubuntu,但是像这样手动配置路由规则并不适合将所有权转让给他人,甚至在几年之后引用自己.

我个人建议使用PFSense VM进行更强大的设置,以对连接进行负载平衡.我可能还建议在PFSense盒子本身而不是调制解调器上执行NAT.我在VM中配置了类似于此的功能,但效果很好.

对于调制解调器和PFSense VM之间的连接,我使用支持vlan的交换机将3个独立的VLans连接到VM,并将这些VL断开到交换机上的3个独立端口.这实际上提供了从每个调制解调器到pfsense盒的直接(虚拟)电缆以及到LAN的另一条电缆.然后,您可以配置直通调制解调器,该调制解调器因提供商而异.

确实,这可以避免问题,而不是直接解决问题,但将NAT置于调制解调器本身似乎只是在寻找麻烦.此外,PFSense专门设计为预先打包的路由器解决方案,因此它支持并将继续使用此类配置进行测试,通过升级确保更高的可靠性.

转载注明原文:ubuntu – 通过VM iproute多个ADSL负载均衡器 - 代码日志