很长一段时间(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)上具有相同的功能。我不知道发生了什么变化。
有什么建议?