iproute plusieurs équilibreurs de charge ADSL via VM


10

Depuis longtemps (2 ans?), J'exécute une machine virtuelle (serveur Ubuntu 12.04) avec une capacité d'équilibrage de charge sortante très basique, envoyant différentes connexions sortantes via différents routeurs ADSL.

Configuré simplement en utilisant iproute sans masquage NAT, le NAT est géré par les routeurs ADSL sortants eux-mêmes permettant aux connexions de rediriger directement vers l'expéditeur en contournant la machine virtuelle du routeur d'équilibrage de charge. Il n'y a pas non plus de règles de pare-feu (iptables) sur la VM du routeur.

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

Cela a bien fonctionné pendant longtemps.

J'ai récemment mis à niveau (do-release-upgrade -d) l'équilibreur de charge (machine virtuelle du serveur Ubuntu 12.04) vers Ubuntu 14.04.

Étant donné que la mise à niveau des connexions Internet à l'aide de la commande «ip route add default» ci-dessus provoque des problèmes de connexion sporadiques et crée une expérience inutilisable. Presque comme si des paquets individuels étaient envoyés à travers les deux routeurs et non des connexions complètes.

Cela a été tenté avec une deuxième machine virtuelle 14.04 avec le même effet.

J'aimerais avoir la même fonctionnalité sur Ubuntu 14.04 (noyau actuel: 3.13.0-24). Je ne comprends pas ce qui a changé.

Aucune suggestion?


Beaucoup de gens se plaignent de problèmes de réseau. Pouvez-vous mettre à jour votre noyau vers 3.14? Voici quelques instructions d'installation: linuxg.net/…
Sacx

La mise à niveau vers 3.14 a tué la machine virtuelle. Panique du noyau. Peut-être que je ne l'ai pas bien fait, mais j'ai suivi ces instructions. Pendant ce temps, j'ai rétrogradé à 12.04 (VM réinstallée) pour continuer à utiliser l'ancienne fonctionnalité de travail, le support jusqu'en 2017 est probablement OK.
Drew Anderson

Donc, les gens sont conscients, je n'ai plus besoin de cette solution (emplois modifiés), donc je ne sais pas si je peux faire fonctionner cela en 14.04.
Drew Anderson

les deux routeurs sont-ils dans le même réseau L3? mieux d'avoir 1 sous-réseau par NIC / route.
user158798

Réponses:


2

Je me rends compte que l'affiche originale n'a plus besoin d'une solution, mais voici mon point de vue sur la meilleure solution pour ce problème. Je réalise également que l'affiche préférerait utiliser Ubuntu, mais la configuration manuelle des règles de routage n'est pas idéale pour transférer la propriété à d'autres ou même vous référencer des années plus tard.

Personnellement, je suggérerais une configuration plus robuste utilisant une machine virtuelle PFSense pour équilibrer la charge des connexions. Je suggérerais probablement également d'effectuer NAT sur la boîte PFSense elle-même plutôt que sur les modems. J'ai quelque chose de similaire à celui-ci configuré dans une machine virtuelle et cela fonctionne bien.

Pour les connexions entre les modems et la machine virtuelle PFSense, j'utilise un commutateur compatible vlan pour connecter 3 VLans distincts à la machine virtuelle et les répartir sur 3 ports distincts sur le commutateur. En effet, cela fournit un câble direct (virtuel) de chaque modem vers le boîtier pfsense et un autre câble vers le réseau local. Vous pouvez ensuite configurer les modems pour le passthrough, qui varie d'un fournisseur à l'autre.

Il est vrai que cela contourne le problème plutôt que de le résoudre directement, mais mettre le NAT sur les modems eux-mêmes me semble simplement demander des ennuis. De plus, PFSense est spécifiquement conçu comme une solution de routeur préemballé, il prend donc en charge et continuera d'être testé avec des configurations comme celle-ci, garantissant une meilleure fiabilité grâce aux mises à niveau.


cette réponse aurait peut-être été meilleure en tant que commentaire, mais je n'ai pas la réputation pour cela.
stonecrusher
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.