ISDN Fallback mit anderen PC einrichten

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Sarem_Avuton
Beiträge: 546
Registriert: 16.12.2004 09:58:27
Wohnort: Leipzig

ISDN Fallback mit anderen PC einrichten

Beitrag von Sarem_Avuton » 21.07.2006 09:29:21

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

Benutzeravatar
bluestar
Beiträge: 2425
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Beitrag von bluestar » 22.07.2006 15:28:27

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 :-)

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
Gruß
Jens

Sarem_Avuton
Beiträge: 546
Registriert: 16.12.2004 09:58:27
Wohnort: Leipzig

Beitrag von Sarem_Avuton » 24.07.2006 10:11:54

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

Antworten