Ich habe einen mit dem Internet verbundenen Ubuntu-Server, der über Ethernet mit einer ADSL-Leitung für Privathaushalte verbunden ist. Dies ist meistens ausreichend, aber ich kann mich nicht darauf verlassen, dass der ADSL-Link so zuverlässig ist, wie ich es gerne hätte. Murphys Gesetz hat bereits vorgeschrieben, dass Ausfallzeiten eintreten, wenn dies am wenigsten bequem ist.
Ich möchte einen 3G-USB-Dongle verwenden, um ein Failover zu ermöglichen. Mir fehlen Informationen sowohl zu Beispielkonfigurationen, die für andere Personen funktionieren - als auch zu der für meine Zwecke am besten geeigneten (kostengünstigen) Hardware. Das Ziel ist, dass der Server dies erkennt, wenn meine ADSL-Leitung getrennt wird, und den 3G-Dienst wählt. Er überwacht die ADSL-Leitung und schaltet nahtlos zurück, wenn die Verbindung wiederhergestellt ist.
Der Hauptdienst, der mir wichtig ist, ist ein OpenVPN-Tunnel - über UDP zu einem Remote-Server. Der andere nützliche Dienst wäre Squid - ich hätte also immer noch Webzugriff von meinem LAN aus, wenn ADSL getrennt wird.
Fragen:
- Wie schwierig wäre es, dies einzurichten?
- Würde ich gezwungen sein, meine eigenen zu rollen - oder gibt es Pakete / Howtos, die ich übersehen habe?
- Welche (kostengünstige) Hardware wird empfohlen (hauptsächlich wegen unbeaufsichtigter Zuverlässigkeit)?
- Irgendwelche Anekdoten über Erfolg oder Misserfolg von anderen, die sich bereits damit befasst haben?
quelle
Antworten:
Wir haben einige kleinere Edimax 3G-Router mit 1 WLAN, 1 LAN und USB für 3G-Stick. Der LAN-Port kann als Teil des LAN oder als primärer WAN-Port-Port konfiguriert werden (3g fungiert als Failover). Ich bin nicht mit edimax verbunden und wir verwenden sie auf der Straße oder auf Konventionen für ihre Größe (und eine von denen, die wir haben, ist batteriebetrieben).
Allerdings würde ich mit einem Setup auf dem Ubuntu-Server gehen.
Antworten:
Wechsel zu 3g - Skriptbeispiel:
Wechsel zu ADSL - Skript Beispiel:
Wenn Sie dhcp mit adsl verwenden, wird dieses einfache Beispiel durcheinander gebracht, und Sie müssen entweder /etc/resolv.conf bei jeder Änderung ändern oder offene DNS-Server wie Google 8.8.8.8 (oder Ihren eigenen Resolver) verwenden. Nun ... die Überwachung ist etwas schwieriger, aber wenn Sie so etwas auf cron setzen (nicht, dies ist ein naives Beispiel), erhalten Sie ein Failover auf 3 g und zurück.
Drei) Siehe Edimax 3g-Router ( Zeroshell LinuxFW-Distribution sieht aus, als ob Zeroshell ein Failover enthält. Besorgen Sie sich also einen billigen PC für einen Router und verwenden Sie Zeroshell. Ich habe es jedoch nicht getestet.)
Vier) Testen, bestehen und wenn zum ersten Mal ein Failover erforderlich ist, wird es fehlschlagen (wegen etwas Dummem ...).
Ich bin mir nicht sicher, ob Sie für dieses Setup Tintenfisch benötigen, es sei denn, Sie beschleunigen die 3G-Verbindung mit dem lokalen Cache der häufigsten von Ihnen besuchten Seiten.
quelle
Ich habe dies jederzeit für Kunden getan und ich habe kein entwickeltes System gefunden, um dies zu erreichen, so dass ich jemals mein eigenes gewürfelt habe. Die Schritte, die Manwe Ihnen gegeben hat, sind mehr oder weniger das, was ich tue, wenn ich sie brauche, aber ich werde sie hier einfügen Alle groben Bash-Skripte, die ich verwende (wenn ich Zeit habe, möchte ich dies in Python viel besser machen).
Grundsätzlich überprüfe ich, ob ich Internet habe oder nicht und ob ich das WAN-Backup verwende und nehme die erforderlichen Änderungen vor
Da Sie möchten, dass Ihr Server nur 3g verwendet, wenn ADSL ausfällt, würde ich nur Iptables Snat oder Masquerade nur im ADSL iface verwenden und den Zugriff auf Squid in ./script_change_to_secondary.sh blockieren. Ihre Dateien könnten sein:
script_change_to_secondary.sh
script_change_to_primary.sh
Sie sollten auch in /etc/ppp/ip-up.d/ ein Bash-Skript mit "/etc/init.d/openvpn restart" haben. Auf diese Weise wird Ihr openvpn jedes Mal automatisch neu gestartet, wenn Sie eine Verbindung zu einem ppp-Anbieter herstellen.
Nun, wie ich schon sagte, es ist ein bisschen hässlich und grob, aber es funktioniert :) Wenn Sie eine integrierte saubere Lösung dafür finden, lassen Sie es mich bitte wissen :), eine gute Sache von Roll-Your-Own ist, dass Sie eine vollständige Kontrolle haben Dies ist eine übermäßige Vereinfachung dessen, was ich bei Kunden mache, die zwei oder drei Verbindungen gleichzeitig haben und einen Lastausgleich und eine QoS durchführen, die alle in Skripte integriert sind, die Verbindungsprobleme erkennen und die Routen und die QoS ändern.
Wenn Sie eine integrierte Lösung einer eigenen vorziehen , können Sie eine Distribution wie zentyal verwenden . Sie unterstützt das, was Sie verwenden möchten. Es handelt sich jedoch um eine vollständige Distribution, die auf die Erstellung eines SmallBusiness-Servers zugeschnitten ist. Normalerweise bevorzuge ich die Konfiguration meiner Server bei my besitzen, aber dies ist eine gute Distribution, die über das Web verwaltet werden kann.
quelle
Haben Sie über hardwarebasierte Lösungen nachgedacht, da ich die meisten Poster mit Softwarelösungen sehen kann?
Sie sind sich nicht sicher, wie viel Sie ausgeben möchten, aber ein DrayTek Vigor 2830n würde Ihren Anforderungen gerecht. Es mag billigere Alternativen geben, aber dies ist die, die ich an zwei verschiedenen Standorten verwendet habe und die außergewöhnlich gut funktioniert hat.
Dieses Gerät verfügt über 3 WAN-Konnektivität, die Standard-ADSL-Leitung, die Ethernet-Verbindung und den 3G-Dongle. Sie können dies nur mit dem ADSL- und 3G-Dongle und mit dem Router selbst einrichten. Der 3G-Dongle muss sich nicht im Lastausgleichsmodus befinden, sondern nur im reinen WAN-Backup-Modus.
Nachdem Sie den ursprünglichen Beitrag erneut gelesen haben, möchte ich hinzufügen, dass Sie den VPN-Verkehr sogar nur über den 3G-Dongle einschränken können, um die Bandbreitenkosten Ihres 3G-Dongles zu minimieren.
quelle
1) Nicht allzu schwierig - führen Sie eine Aufgabe aus und überprüfen Sie den Status Ihres DSL. Wenn dies fehlschlägt, starten Sie die 3G-Schnittstelle und führen Sie ein Failover über die Standardroute durch. Möglicherweise müssen Sie auch Ihr VPN neu starten.
2 & 3) Ich habe nie selbst nach einem vorgefertigten Paket gesucht, da meine Lieblingsfirewall diese Funktion standardmäßig enthält. Überprüfen Sie www.astaro.com (die Software-Appliance ist kostenlos für den Heimgebrauch oder Sie können die standardmäßige 30-Tage-Testversion zum Testen verwenden).
4) Hatte nie signifikante Probleme mit WAN-Failovers (außer dass die Backup-Leitung ebenfalls ausgefallen ist)
tsg
quelle
Ich denke, Sie könnten keepalived verwenden, um alle 30 Sekunden eine Remote-Internetadresse (möglicherweise Google) mit einer gewissen Zeitüberschreitung zu pingen. Wenn das Ping-Timeout "keepalived" so konfiguriert, dass eth0 heruntergefahren und die 3G-Schnittstelle aufgerufen wird, starten Sie Ihr VPN neu.
Sie sollten Verzögerungen usw. bei der Konfiguration von keepalived berücksichtigen, damit die Schnittstellen nicht gewechselt werden, wenn sie nicht benötigt werden. Einige Tests / Experimente sind erforderlich. Ich kann mir keine Möglichkeit vorstellen, zur ADSL-Leitung zurückzukehren, wenn sie wieder lebendig ist.
Wenn Sie einen Router zwischen dem ADSL-Modem und Ihrem Server haben oder das Modem eine externe Adresse hat, die Sie anpingen können, können Sie diese wahrscheinlich als Kriterium für das Zurücksetzen der Verbindung verwenden.
KeepaliveD-Site
Ich hoffe, das kann Ihnen den Einstieg erleichtern!
quelle
Sie können Shorewall (Ubuntu-Paket verfügbar) und ein sehr nützliches Skript namens gwping verwenden, um eine Roll-Your-Own-Lösung zu erstellen.
quelle
gwping
Skript?