Ich habe zwei Netzte einmal DSL 16.000 mit 192.168.10.0 als Netz eth1
und einmal VDSL 50.000 mit 192.168.178.0 als Netz eth0
Momentan habe ich eth0 als Standard drin. Jetzt laufen paar Script die eine Email versenden. Gibt es eine Möglichkeit ein Script zu schreiben das in Cron läuft und prüft ob auf eth0 ein ping auf z.b.: google.de funktioniert und wenn nicht, eth1 auf Standard gesetzt wird. Damit meine Scripte weiter funktionieren. Und danach wenn es umgeschalten worden ist eine Email versendet wird das eth0 derzeit off ist oder so.
Wo sollte ich als erstens ansetzten?
Edit: Momentan ist es so wenn eth0 (VDSL) weg ist geht keine Internetverbindung mehr. Wird nicht automatisch auf eth1 (DSL) umgestellt. Gibt es dafür ein Befehl?
netstat -rn
Kernel-IP-Routentabelle
Ziel Router Genmask Flags MSS Fenster irtt Iface
0.0.0.0 192.168.178.1 0.0.0.0 UG 0 0 0 eth0
10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
192.168.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.178.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
eth0 und eth1 default umschalten
Re: Automatisch eth0 auf eth1 umschalten
Code: Alles auswählen
gw1=10.0.1.1
gw2=10.0.2.1
while sleep 15; do
ping -c 1 nic.de >/dev/null 2>&1 && continue;
# ping failed, replace route
case "$(ip route list | awk '/^default/{print$3}')" in
"$gw1")
use="$gw2";
ip route replace default via "$gw2";
;;
"$gw2")
use="$gw2";
ip route replace default via "$gw1";
;;
esac
if ping -c 1 nic.de >/dev/null 2>&1; then
echo "gw switched over to $use" | mail -s 'gw switchover' admin@pampa
else
: # damn, didn't help. Try something else
fi
done
Gruss Cae
--Edit: Dummy hinzugefuegt, verhindert die Fehlermeldung im Beitrag unter diesem.
--Edit#2: iptables rou ... via nimmt Host-IPs ohne CIDR-Suffix
Zuletzt geändert von Cae am 14.08.2013 19:45:35, insgesamt 2-mal geändert.
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier
Re: eth0 und eth1 default umschalten
Danke. Habe das mal in eine ..sh kopiert. erhalte die Meldung Syntax error: "fi" unexpected
/usr/sbin/nic_pruefen: Zeile 25: Syntaxfehler beim unerwarteten Wort `fi'
/usr/sbin/nic_pruefen: Zeile 25: ` fi'
/usr/sbin/nic_pruefen: Zeile 25: Syntaxfehler beim unerwarteten Wort `fi'
/usr/sbin/nic_pruefen: Zeile 25: ` fi'
Re: eth0 und eth1 default umschalten
Du musst hier noch irgendeinen Befehl ausführen:
... oder den else Abschnitt weglassen
Code: Alles auswählen
else
# damn, didn't help. Try something else
Re: eth0 und eth1 default umschalten
Wer lesen kann ist klar im vorteil.
Hab das gerade getestet aber die neue Route wird nicht angelegt. Liegt es daran das ich für eth1 eine rt2 tabel angelegt habe?
Hab das gerade getestet aber die neue Route wird nicht angelegt. Liegt es daran das ich für eth1 eine rt2 tabel angelegt habe?
Re: eth0 und eth1 default umschalten
Vielleicht kannst Du etwas wie das hier testen,
Ich weiß aber nicht wie das reagiert wenn man ein Kabel rauszieht, sollte gehen. Wenn beides über ein interface geht ein
virtuelles zusätzlich einrichten.
Code: Alles auswählen
ip route add default scope global nexthop via 192.168.178.1 dev eth0 weight 1 nexthop via 192.168.10.1 dev eth1 weight 1
virtuelles zusätzlich einrichten.
Re: eth0 und eth1 default umschalten
Habe es nach dem Tipp von Cae hinbekommen. Habe bei gw1 und gw2 den Zusatz /24 weggelassen und siehe da es klappt. eth0 ist weg und wird automatisch auf eth1 geschalten
Danke auf jedenfall für eure Hilfe.
Danke auf jedenfall für eure Hilfe.