Seit langer Zeit (2 Jahre?) Betreibe ich eine virtuelle Maschine (Ubuntu 12.04-Server) mit einer sehr einfachen Funktion für den ausgehenden Lastausgleich, bei der verschiedene ausgehende Verbindungen über verschiedene ADSL-Router gesendet werden.
NAT wird einfach durch die Verwendung von iproute ohne NAT-Maskerade konfiguriert und von den ausgehenden ADSL-Routern selbst verwaltet, sodass Verbindungen unter Umgehung der VM des Lastausgleichs-Routers direkt zum Absender zurückgeleitet werden können. Es gibt auch keine Firewall-Regeln (iptables) auf der Router-VM.
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
Das hat lange gut funktioniert.
Ich habe kürzlich den Load Balancer (virtuelle Maschine des Ubuntu 12.04-Servers) auf Ubuntu 14.04 aktualisiert (do-release-upgrade -d).
Da die Aktualisierung der Internetverbindungen mit dem oben genannten Befehl "IP-Route Standard hinzufügen" sporadische Verbindungsprobleme verursacht und eine unbrauchbare Erfahrung verursacht. Fast so, als würden einzelne Pakete über beide Router und nicht über vollständige Verbindungen gesendet.
Dies wurde mit einer zweiten virtuellen 14.04-Maschine mit dem gleichen Effekt versucht.
Ich würde gerne die gleiche Funktionalität unter Ubuntu 14.04 haben (aktueller Kernel: 3.13.0-24). Ich verstehe nicht, was sich geändert hat.
Irgendwelche Vorschläge?
quelle
Antworten:
Mir ist klar, dass das Originalplakat keine Lösung mehr benötigt, aber hier ist meine Ansicht zur besten Lösung für dieses Problem. Mir ist auch klar, dass das Poster lieber Ubuntu verwenden würde, aber die manuelle Konfiguration der Routing-Regeln ist nicht gut, um das Eigentum auf andere zu übertragen oder sich Jahre später selbst zu referenzieren.
Ich persönlich würde ein robusteres Setup mit einer PFSense-VM zum Lastausgleich der Verbindungen vorschlagen. Ich würde wahrscheinlich auch vorschlagen, NAT auf der PFSense-Box selbst und nicht auf den Modems durchzuführen. Ich habe etwas Ähnliches in einer VM konfiguriert und es funktioniert gut.
Für die Verbindungen zwischen den Modems und der PFSense-VM verwende ich einen vlan-fähigen Switch, um 3 separate VLans mit der VM zu verbinden und diese auf 3 separate Ports am Switch aufzuteilen. Dies liefert tatsächlich ein direktes (virtuelles) Kabel von jedem Modem zur Pfsense-Box und ein weiteres Kabel zum LAN. Anschließend können Sie die Modems für Passthrough konfigurieren, was von Anbieter zu Anbieter unterschiedlich ist.
Es ist wahr, dass dies das Problem umgeht, anstatt es direkt anzusprechen, aber das NAT auf die Modems selbst zu setzen, scheint mir, nur um Ärger zu bitten. Außerdem wurde PFSense speziell als vorgefertigte Router-Lösung entwickelt, sodass es Konfigurationen wie diese unterstützt und weiterhin getestet wird, um eine bessere Zuverlässigkeit durch Upgrades zu gewährleisten.
quelle