Hallo zusammen,
wir hatten gerade wieder mal ein DSL Ausfall und mein Chef ist im Dreieck gesprungen weil er dringend ein Paar Mail verschicken mußte.
Und beauftragte mich ein ISDN Fallback einzurichten.
Nun ist die Struktur im Moment so:
-->DSL Router-->Debian Server(DHCP,DNS,MAIL,LAMPP,IPTABLES)
..................................... |
.................................Switch
.......................................|
.................|------- --------|-------------------------|
............Samba....... N.... (AP)........ Hylafax(ISDN)
Nun habe ich auf dem Faxserver eine ISDN Internet Einwahl erstellt.
Jetzt würde ich die Sache gern Automatisieren, also wenn DSL weg ist soll Automatisch auf dem Faxserver eine ISDN Verbindung hergestellt werden. Gibt es da Irgendwelche Tools oder wie mach ich das per Shellscripts. Kann ich im Moment des DSL ausfall auch per script auf dem Debianserver das gateway ändern so das Squid und Mail weiterhin funtionieren?
Wie würdet Ihr das am geschicktesten Umsetzen?
Danke und Grüße
Jörg
ISDN Fallback mit anderen PC einrichten
-
- Beiträge: 546
- Registriert: 16.12.2004 09:58:27
- Wohnort: Leipzig
Einfacher Tipp - bau in dem Linux-Router noch ne IDSN Karte ein und nimm folgendes Script.
Als kurze Erklärung dazu:
ippp1 ist als Dial-On-Demand konfiguriert.
ppp0 ist der Standard-DSL Zugang allerdings ohne die Option "defaultroute"
Das Script läßt du per Cronjob laufen
Gruß
Jens
Als kurze Erklärung dazu:
ippp1 ist als Dial-On-Demand konfiguriert.
ppp0 ist der Standard-DSL Zugang allerdings ohne die Option "defaultroute"
Das Script läßt du per Cronjob laufen
Code: Alles auswählen
#!/bin/sh
PATH="/bin:/sbin:/usr/sbin:/usr/bin"
DSL_DEV="ppp0"
ISDN_DEV="ippp1"
if route -n | grep '^0\.0\.0\.0' | grep -q "${DSL_DEV}"; then
#
# Online via DSL
#
isdnctrl dialmode ${ISDN_DEV} | grep -q 'auto' && (
isdnctrl hangup ${ISDN_DEV} >/dev/null 2>&1
isdnctrl dialmode ${ISDN_DEV} manual >/dev/null 2>&1
echo "EMERGENCY: DSL available, disableing ISDN"
echo "EMERGENCY: DSL available, disableing ISDN" | logger -t fallback
)
else
#
# Default GW zeigt nicht auf DSL => DSL tot, ISDN Fallback hochfahren
#
isdnctrl dialmode ${ISDN_DEV} | grep -q 'manual' && (
route add default netmask 0 dev ${ISDN_DEV} >/dev/null 2>&1
isdnctrl dialmode ${ISDN_DEV} auto >/dev/null 2>&1
echo "EMERGENCY: DSL unavailable, bringing up ISDN fallback"
echo "EMERGENCY: DSL unavailable, bringing up ISDN fallback" | logger -t fallback
)
fi
Jens
-
- Beiträge: 546
- Registriert: 16.12.2004 09:58:27
- Wohnort: Leipzig
Hallo Jens,
danke für deinen Tip.
Das bedeutet dann einige Änderungen da der Router ein Harwarerouter ist.
Ich dachte mir das an sich so.
ich installiere syslog-ng emtweder auf dem Server wo Squid läuft oder auf dem Hylafaxserver. Der Hardware Router kann das syslog an eine Syslog Server weitergeben. Auf der Maschine wo das Log ankommt. Grepe ich alle 60 Sekunden das Log ob nach "pppoe stop" oder so ähnlich. Und dann dachte ich das ein paar skripts das NW auf den ISDNer umstellen.
Aber deins ist narürlich einfacher, muß ich mal sehen ob ich noch einen alten Rechner und eine ISDN Karte im Lager finde.
Also nochmal Danke
Jörg
danke für deinen Tip.
Das bedeutet dann einige Änderungen da der Router ein Harwarerouter ist.
Ich dachte mir das an sich so.
ich installiere syslog-ng emtweder auf dem Server wo Squid läuft oder auf dem Hylafaxserver. Der Hardware Router kann das syslog an eine Syslog Server weitergeben. Auf der Maschine wo das Log ankommt. Grepe ich alle 60 Sekunden das Log ob nach "pppoe stop" oder so ähnlich. Und dann dachte ich das ein paar skripts das NW auf den ISDNer umstellen.
Aber deins ist narürlich einfacher, muß ich mal sehen ob ich noch einen alten Rechner und eine ISDN Karte im Lager finde.
Also nochmal Danke
Jörg