
Ich habe zwei Internetverbindungen von zwei verschiedenen ISPs. ADSL über eth0 und 4G über wlan0. Gibt es eine Möglichkeit, dass, wenn ein ISP ausfällt, der andere automatisch übernimmt, ohne einen physischen Router und über das Host-Betriebssystem (Ubuntu 18.04)?
Antwort1
Ich habe persönlich nie versucht, dies vom Host-Betriebssystem aus zu tun. Aber nach einigem Hin und Her habe ich beschlossen, im Internet herumzustöbern, um zu sehen, ob ich finden könnte, wonach Sie suchen.
Ich habe auf gist.github.com ein Beispielskript für Gateway-Failover gefunden, das vom Benutzer „Apsu“ erstellt wurde. Sie können das Bash-Skript herunterladenHier.
Sie müssen dies an Ihr spezifisches Setup anpassen, Ihre Schnittstellennamen und Gateway-Adressen hinzufügen und schon kann es losgehen.
Skript für das Host-Betriebssystem:
#!/bin/bash
# Set defaults if not provided by environment
CHECK_DELAY=${CHECK_DELAY:-5}
CHECK_IP=${CHECK_IP:-8.8.8.8}
PRIMARY_IF=${PRIMARY_IF:-eth0}
PRIMARY_GW=${PRIMARY_GW:-1.2.3.4}
BACKUP_IF=${BACKUP_IF:-eth1}
BACKUP_GW=${BACKUP_GW:-2.3.4.5}
# Compare arg with current default gateway interface for route to healthcheck IP
gateway_if() {
[[ "$1" = "$(ip r g "$CHECK_IP" | sed -rn 's/^.*dev ([^ ]*).*$/\1/p')" ]]
}
# Cycle healthcheck continuously with specified delay
while sleep "$CHECK_DELAY"
do
# If healthcheck succeeds from primary interface
if ping -I "$PRIMARY_IF" -c1 "$CHECK_IP" &>/dev/null
then
# Are we using the backup?
if gateway_if "$BACKUP_IF"
then # Switch to primary
ip r d default via "$BACKUP_GW" dev "$BACKUP_IF"
ip r a default via "$PRIMARY_GW" dev "$PRIMARY_IF"
fi
else
# Are we using the primary?
if gateway_if "$PRIMARY_IF"
then # Switch to backup
ip r d default via "$PRIMARY_GW" dev "$PRIMARY_IF"
ip r a default via "$BACKUP_GW" dev "$BACKUP_IF"
fi
fi
done
Mit Netzwerkhardware:
Die Verwendung eines Routers für diese Funktion bietet erhebliche Vorteile gegenüber einem einfachen Failover vom Host-Betriebssystem. Was einem sofort in den Sinn kommt, ist die gleichzeitige Nutzung der Bandbreite beider Verbindungen. (Volle Auslastung beider ISP-Verbindungen)
Sie können PFsense / OpenSense als Dual-WAN-Router verwenden. (Die meiste alte PC-Hardware funktioniert.) Ich glaube, dass DD-WRT-unterstützte Router mit einigen Anpassungen auch WAN-Failover unterstützen. Oder Sie entscheiden sich für eine vorgefertigte Lösung wie Sophos oder Netgear Prosafe. Ich bin sicher, dass es noch andere gibt, aber die meisten vorgefertigten Lösungen sind teurer, als Heimanwender bereit sind zu zahlen. Mit einem Dual-WAN-Router können Sie Ihre Internetbandbreite erhöhen. Sie können den Datenverkehr entsprechend Ihren spezifischen Anforderungen ausgleichen. Sie können Redundanz und Failover für die Internetverbindung erhalten.
Grüße,