Navigationsleiste   |    Direktzugriff   |    Software   |    Home  


Mehrere Provider mit ISDN unter Debian nutzen


Diese Anleitung beschreibt die Einrichtung mehrere Internet-Provider unter Debian Potato (2.2) oder Debian Woody (3.0).
Auch wenn du nur einen Provider einrichten willst, hilft die diese Anleitung.


Mehrere Provider ?

Es gibt mehrere Gründe warum du mehrere Provider brauchen könntest:

Als Modem-Besitzer hast du es unter Debian recht einfach:
Mit pppconfig richtest du mehrere Provider ein, und mit pon ProviderA wählst du einen bestimmten Provider aus und schon bist du drin. Mit pon ProviderB wählst du einen anderen Provider aus.

Aber mit ISDN sieht die Sache leider etwas anders aus und ist etwas schwieriger, aber auch zu bewältigen. Ich zeige hier mal einen Weg und erläutere die wichtigsten Option damit es klappt; es gibt noch viele weitere ISDN-Einstellungen um die Sache zu optimieren.


Einrichten mehrerer Provider

Ich gehe hier in dem Beispiel mal davon aus, das deine ISDN-Karte unter Debian funktioniert. Desweiteren möchtest du ProviderA und ProviderB einrichten und du möchtest NICHT kISDN [1] benutzen.
Noch ein Wort zu kISDN: Es ist zwar nett, aber auf Servern kannst du es nicht gebrauchen.
Also, auf dem harten Weg mit der Konsole geht es so:
Zuerst richtest du mehrere Provider ein, mit dem Skript isdnconfig:

[root] # isdnconfig

Wichtig sind die Menüpunkte 1 und 2, diese rufst du auf und gibst für jeden Provider einen ippp. Also für ProviderA ippp0 und für ProviderB ippp1 in jedem der beiden Menüpunkte.

/etc/isdn/device.ipppx

Nun richtest du die Dateien /etc/isdn/device.ippp0 und /etc/isdn/device.ippp1ein.
Zuerst löscht die folgende Zeile aus den beiden Dateien:

echo "Warning! $0 not configured yet! Aborting..."; exit 1

So die nächsten beiden Zeilen sind:

ippp0
LOCALIP=10.0.0.1        # XXX_
REMOTEIP=10.0.0.2       # XXX_
ippp1
LOCALIP=10.0.0.3        # XXX_
REMOTEIP=10.0.0.4       # XXX_

Für ippp0 kannst du die Einträge stehen lassen, für ippp1 würde ich die IP-Adressen einfach erhöhen. Das gilt allerdings nur wenn du dynamische IP-Adressen von deinem Provider bekommst !
Es ist anscheinend gar nicht wichtig, das diese Adresse unterschiedlich sind; ihnen werden nach der Einwahl sowieso andere (nämlich die dynamischen zugeteilt), aber ich denke ich ist eine saubere Lösung.

Und weiter, ran an die nächsten beiden Zeilen:

ippp0
LOCALMSN=913467      # Deine MSN ohne Vorwahl
REMOTEMSN=22131     # Nummer des ProviderA (ohne erste Zahl)
LEADINGZERO=0          # Die erste Zahl der Provider-Nummer, meist die Null
ippp1
LOCALMSN=912767     # Deine MSN ohne Vorwahl
REMOTEMSN=33123     # Nummer des ProviderB (ohne erste Zahl)
LEADINGZERO=0       # Die erste Zahl der Provider-Nummer, meist die Null

Wenn du gerade schon diese Dateien editierst, dann kannst du evtl noch den Dialmode einstellen:
DIALMODE manual
  

Die Optionen:
off Kein Wählen möglich
manual    Es wird nur gewählt wenn du isdnctrl dial ipppX. wobei X das Device ist (Beispiel: ippp0)
auto Sobald der Rechner eine Adresse nicht über das lokale Netzwerk erreichen kann, wählt er sich beim Provider ein. Achtung kann teuer werden ! Der Rechner wählt also selber.


Eine weitere sehr gute, da Geld sparende Zeile:

isdnctrl huptimeout ${device} 60
  

Die letzte Zahl gibt an, nach wieviel Sekunden Inaktivität (wenn also keine Daten mehr über das Interface gehen) die Verbindung getrennt werden soll.
Zusammen mit "DIALMODE auto" kannst du prima surfen: Du surfst, liest eine interessante Seite, nach 60sec trennt der Rechner die Verbindung, klickst du dann später wieder auf einen Link, geht der Rechner wieder online und holt die Seite.


/etc/isdn/ipppd.ipppx

Nun richtest du die Dateien /etc/isdn/ipppd.ippp0 und /etc/isdn/ipppd.ippp1 ein.
Zuerst löscht die folgende Zeile aus den beiden Dateien:

# Warning! not configured yet!

So die nächsten beiden Zeilen sind:

ippp0
name tux                #Den Benutzername für ProviderA
ippp1
name nux                #Den Benutzername für ProviderB
Damit hast du nun den richtigen Benutzer-Namen für die Provider angegeben.

/etc/ppp/pap-secrets

Nun richtest du die Datei /etc/ppp/pap-secrets ein, dies ist dann aber auch die letzte ...
Sollte dein Provider zur Authentifizierung das CHAP-Verfahren einsetzen, mußt du die Datei /etc/ppp/chap-secrets editieren. Die Syntax ist allerding gleich, die meisten Provider nehmen aber PAP.

tux   *   geheim
nux   *   sagichnix
Damit legst du dein Paßwort fest, also "geheim" für Benutzer tux und "sagichnix" für Benutzer nux.

So nun noch schnell diese Einstellungen übernehmen:
[root] # /etc/init/isdnutils restart

Und das war es, ... fast

Routing Problem lösen

Ein kleines Problem hast nun aber noch:
Du kannst zwar jetzt beide Provider anwählen, aber die Default-Route steht immer auf ippp0. Das bedeutet das jede IP-Adresse die der Rechner nicht selber erreichen kann (lokales Netz) über dieses Device geht.
Soweit so gut, aber wenn du dich bei ProviderB einwählst benutzt du ippp1, aber deine Default-Route ist ippp0 !!
Das wird so leider nichts....

Aber das machen wir schon und zwar so:
Die richtige Datei für diesen Zweck ist /etc/ppp/ip-up.d/00-isdnutils, in diese trägst du folgendes ein:
 ippp1)
                route del default
                route add default netmask 0 $PPP_IFACE
                ;;
  

Damit wird immer erste mal die Default-Route gelöscht und dann eine neue mit dem richtigen Device (hier ippp1) angelegt.

So das war es wirklich, probier es aus und surfe oft nach Tuxhausen ;-))


Im Text genannte Links

[1] KISDN http://www.millenniumx.de


Erstellt: 2001-11-15 Autor: Markus Ungermann (mu@tuxhausen.de)
Letztes Update: 2002-12-26      URL: http://www.tuxhausen.de/software_isdn_isp.html