isdn4k-utils/FAQ/_howto/isdnpool.txt

157 lines
7.8 KiB
Plaintext
Raw Permalink Blame History

From: Torsten Hentschel <Torsten.Hentschel@DInet.de> Subject: Re: ISDN - POOL
To: isdn4linux@hub-wue.franken.de
Date: Sun, 10 Nov 1996 14:15:22 +0100 (MET) Sender: owner-isdn4linux@hub-wue.franken.de Reply-To: isdn4linux@hub-wue.franken.de
Hallo Georg!
> nachdem ich I4L nun seit 8 Monaten erfolgreich und voellig _ohne_ Probleme
> betreibe (Hut ab vor den Entwicklern), ist noch eine einzige Geschichte,
> die ich gerne geloest haette.
Jau, ueber die Arbeit der I4L-Entwickler auch meinen Dank. Das Zeug ist wunderbar.
> Ich betreibe I4L Router, die verschiedene Subnetze verbinden. Dies sind aber
> alles feste routen, ich benutze _kein_ pppd oder ipppd. ISDN Device mit isdnctrl
> definieren und mit ifconfig / route einrichten - fertig. Die Gegenstellen
> waehlen sich auf eine feste Nummer rein, diese muss dann natuerlich frei sein.
>
> Dies laeuft alles ganz hervorragend, jetzt aber die Frage:
>
> Ich benutze einen "eigenen" NTBA nur fuer I4L, waere es moeglich, das dieser als
> Pool fungiert ?
> Ich meine, ich definiere 10 IP Verbindungen und gebe jeder (secure on) eine
> Eingehende Nummer. Die Gegenstellen bekommen alle 3 Rufnummern und waehlen diese
> der Reihe nach durch.
Genau sowas haben wir hier an zwei Standorten realisiert.
Gerne beschreibe ich Dir Moeglichkeiten und Probleme.
Auch wir haben das hier ohne ipppd gemacht, weil der leider noch so ein paar Tuecken hat.
Wenn ich recht verstehe hast Du momentan folgende Konstellation (habe neben S0 jeweils eine Beispiel-Telephonnummer geschrieben, drunter und drueber stehen beispielhafte Namen fuer die ISDN-Devices).
"draussen" "pool"
Router A 8989 S0 <------ISDN--\ raw0 \
+---> SO 3434 |
Router B 7676 S0 <------ISDN--/ raw1 | ein Master-Router
|
Router C 6565 S0 <------ISDN--\ raw2 | ein Master-Router
+---> SO 6565 |
Router D 2332 S0 <------ISDN--/ raw3 | ein Master-Router
|
Router E 6344 S0 <------ISDN--\ raw4 | ein Master-Router
+---> SO 3454 |
Router F 1023 SO <------ISDN--/ raw5 /
Die Router draussen waehlen sich also auf Deinem zentralen Router ein. Bisher hast Du dafuer die ISDN-Nummern bei den Routern draussen so verteilt, dass kein Konflikt durch "Besetzt" entstehen kann.
Bei den Beispiel-Routern sei vereinbart, dass sie alle Ihr ISDN-Device mit "raw0" benannt haben. Auch werde ich annehmen, dass alle in derselben Orstnetzkennzahl liegen.
Nun habe ich Dich so verstanden, dass Du auf Deinem Master-Router die Kosten fuer die einzelnen Basis-Anschluesse senken willst, indem Du auf jedem Basisanschluss mehr als zwei Rechner einwaehlen laesst.
Am liebsten auf allen drei beispielhaften Anschluessen mit 6 Kanaelen gleich 10 externe Router auf einmal. Bei 10 Routern ist noch recht selten, dass alle 6 Kanaele des Master-Routers gleichzeitig besetzt sind, wenn man eine "gemaessigte" Benutzung voraussetzt.
> Am einfachsten waere dies zu realisieren, wenn die Slave Devices einen Anruf
> annehmen, auch wenn der Master _NICHT_ aktiv ist. Die Master Rufnummer waere in
> diesem Fall durch einen Anruf auf eben dieser Nummer von einer anderen
> Gegenstelle blockiert.
Nee, mit slave-Devices solltes Du das nicht probieren. Dafuer sind die nicht gedacht.
> Oder ich kann einem Device mehrere MSN zuweisen, oder ich kann es so aufsetzen,
> das es _immer_ rangeht, bzw wenn secure = true ist.
Ja, genau das ist mein Vorschlag.
Konkret haette ich dafuer den folgenden Vorschlag:
a) Bei allen externen Routern muessen alle Nummern der
SO-Anschluesse des Master-Routers eingetragen werden.
Jedesmal, wenn Du zentral einen S0-Anschluss aufnimmst,
bedeutet das auf den externen Routern ein wenig arbeit.
Also bei jedem Router draussen:
vorwahl="2932" # ohne Null!
for number in 3434 6565 3454
do
isdnctrl addphone raw0 in ${vorwahl}${number}
isdnctrl addphone raw0 out ${number}
done
b) Bei den ISDN-Netzinterfacen raw0 bis raw5 kannst Du nur eine
MSN angeben. Auf jedem Euro-ISDN-Basisanschluss liegen
aber mehrere MSNs und die sind auch noch alle verschieden.
Bei 1TR6 war das anders und deshalb funktionierte das damals
mit der Realisierung einer Einwaehlreihenfolge ganz problemlos.
Die EAZs von 1TR6-Anschluessen waren naemlich alle einziffrig
und wenn alle externen Router dieselben Durchwahlnummern verwendet
haben (mit derselben angehaengten EAZ), dann hat automatisch
jedes Netzinterface auf allen SO-Anschluessen reagiert.
Aus diesem Grunde scheint eine sehr nette und durchdachte
Sache von Fritz Elfert in das ISDN-Basissystem von Linux
eingefuegt worden zu sein: Das EAZ-MSN-Mapping.
Fuer die Treiber der einzelnen S0-Anschluesse auf dem
zentralen Router hast Du ja mit dem insmod Namen vergeben.
Ich nehme mal an, die Namen sind wie folgt vergeben:
MSN Treibername
3434 bri0
6565 bri1
3454 bri2
BRI kommt von basic rate interface und ist die englische
Bezeichnung fuer den Steckanschluss eines ISDN-Graetes.
F<>r die Treiber setzt Du nun die folgenden Befehle ab:
isdnctrl mapping bri0 "-,3434,3435,3436"
isdnctrl mapping bri1 "-,6565,6566,6567"
isdnctrl mapping bri2 "-,3454,3455,3456"
Das bedeutet nun, dass ein auf der Nummer 3434 ankommender
Ruf nun bei den Netzinterfaces und den ttyI-Interfaces
die MSN 1 liefert und nicht mehr die MSN 3434. Ebenso
klingelt ein Ruf auf 6565 nicht mehr auf MSN 656, sondern
auf MSN 1 und der Ruf auf 3454 auch.
Nun stell auf allen Netzinterfaces Deines zentralen Routers
diese "virtuelle" MSN ein:
isdnctrl eaz raw0 1
isdnctrl eaz raw1 1
isdnctrl eaz raw2 1
isdnctrl eaz raw3 1
isdnctrl eaz raw4 1
isdnctrl eaz raw5 1
Bei dem "isdnctrl mapping" entscheidet die Position der "echten"
MSN ueber die EAZ die sie liefert. Die Position "0" ist durch
ein Minuszeichen unbelegt gelassen, da dies der "global call" ist.
Bitte benutz den global call vorerst nicht, solange Du ihn nicht
genauer kennst (alle nicht identifizierten Rufe auf unbekannter
EAZ landen auf dem "global call" mit der Nummer "0"; der klingelte
bei 1TR6 dann bei allen am selben Bus angeschlossenen Geraeten).
Nun siehst Du auch, dass ich beim Mapping noch mehr Nummern mit
angegeben habe. Hier in Deutschland werden EURO-ISDN-Anschluesse
meist mit 3 MSNs ausgeliefert. Diese drei MSNs kannst Du natuerlich
auf verschiedene EAZs mappen. Dadurch ergibt sich folgender Spiel-
raum: Draussen kannst Du router stehen haben, die verschiedene
Protokolle haben und diese anhand der angerufenen Nummer unterscheiden
(z.B. konfigurierst Du alle Netzinterfaces fuer rawip auf EAZ=1,
alle fuer syncppp auf EAZ=2 und alle fuer X.75 auf EAZ=3).
Hoffentlich ist es das, was Du gesucht hast.
Jedenfalls war ich von diesen Moeglichkeiten von I4L wahnsinnig begeistert. Cisco kann sowas (Multi-Protkoll auf einem dialer rotary group) nicht ansatzweise. ;-)
Gruesse,
Torsten
--
http://www.DInet.de/
/\ von-Siemens-Str. 12
/ \ Delta Internet GmbH 59757 Arnsberg
/ \ Netzwerkdienst & Vertrieb Tel. +49 2932 91 61 32 /______\ Fax. +49 2932 91 61 91 --------------------------------------------------- To remove yourself from this mailing list send email to majordomo@hub-wue.franken.de containing "unsubscribe isdn4linux <your_email_address>" in the message body [-vg]