isdn4k-utils/FAQ/de-i4l-faq

5577 lines
265 KiB
Plaintext

ATTENTION! The following header is not fully valid yet!
From: dl4mhk@lrz.uni-muenchen.de (Bernhard Hailer)
Newsgroups: de.alt.comm.isdn4linux,de.answers,news.answers
Subject: ISDN4linux-FAQ
Followup-To: de.alt.comm.isdn4linux
Summary: This posting describes what every reader of de.alt.comm.isdn4linux
ought to know about ISDN under Linux using isdn4linux.
It's in German, like the Newsgroup. An English version exists, see
i4l-faq.
Archive-name: de-i4l-faq
Posting-frequency: monthly
Last-modified: 16-Mar-97
URL: http://www.lrz-muenchen.de/~ui161ab/www/isdn/
!1FAQ für isdn4linux - Version 1.3.1
Diese FAQ genießt den Schutz der GNU General Public License (GPL) Version 2;
(C) 1996 Volker Götz, Bernhard Hailer, Matthias Heßler, Michael Hipp sowie
Rainer May.!br
Weiterverbreitung im Rahmen der GPL ist erwünscht. Wir leisten jedoch
KEINERLEI GARANTIEN. Bitte lesen Sie die GNU General Public License, wenn Sie
mehr Details erfahren möchten. Gedruckte Versionen der GNU General Public
License sind erhältlich bei:!br
Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
In elektronischer Form kann sie auch bei einem der Autoren bezogen werden.!br
!br
Original-FAQ von Volker Götz <volker@oops.franken.de>, (c) 1995!br
Umfassende Überarbeitung und Erweiterung (1996, 1997):!br
Matthias Heßler <hessler@wi-inf.uni-essen.de>,!br
Bernhard Hailer <Bernhard.Hailer@lrz.uni-muenchen.de>,!br
Scott Hanson <shanson@mail.hh.provi.de> (Übersetzung in's Englische),!br
Michael Hipp <Michael.Hipp@student.uni-tuebingen.de> (viele syncPPP-Fragen)!br
Rainer May <r_may@khavi.desaster.heide.de> (i4l im Netzwerk)!br
!br
Die Übersetzung der FAQ in's Englische wurde koordiniert von!br
Scott Hanson <shanson@mail.hh.provi.de>!br
wobei mitwirkten:!br
Sven Tervoort <sveneric@xs4all.nl> und!br
Matthias Hessler <hessler@wi-inf.uni-essen.de>.!br
!br
Zur Form dieser FAQ:!br
Grundlage waren Beiträge zur Mailingliste von i4l. Wir haben dort gepostete
Emails ausgewertet und (zumeist) in der Form von Zitaten eingebaut. Diese
Zitate sind nicht immer 100%ig identisch mit dem Original; Rechtschreibfehler
wurden in der Regel beseitigt, Umlaute eingefügt. Ein Teil der Beiträge mußte
vom Englischen ins Deutsche übersetzt werden. Wer sich inkorrekt wiedergegeben
sieht, oder nicht mit seiner Email-Adresse vermerkt sein will, der möge uns
das bitte mitteilen - wir werden das in der nächsten Version der FAQ
berücksichtigen. Das gleiche gilt für den Fall, daß wir versehentlich jemanden
zitierten, ohne das entsprechend zu kennzeichnen. Das Wissen der Autoren
dieser FAQ wurde vermerkt, ohne daß wir uns dabei selbst zitierten.
Anmerkungen der FAQ-Redaktion zu Zitaten wurden in folgender Form eingefügt:
[Dies ist eine Anmerkung - die Red.]!br
Die unzähligen Links in diesem Dokument waren bei Einarbeitung in die FAQ
nicht immer vollständig oder könnten mittlerweile überholt sein. Wir haben
nicht die Zeit, das jeweils zu überprüfen. Wer einen nicht funktionierenden
Link entdeckt, möge uns das bitte mitteilen.!br
In der 7Bit-Version dieser FAQ werden alle neuen oder stark überarbeiteten
Fragen mit einem Änderungsstrich am linken Rand gekennzeichnet. (Wer hat eine
Idee, wie man das auch im HTML-Format machen kann?)!br
!br
Ergänzungen, Verbesserungen und andere Vorschläge zur FAQ sind immer
erwünscht (auch Korrektur von Tippfehlern!). Am besten "diffs" an Matthias und
Bernhard schicken - dabei sind uns diffs aus den ASCII-Varianten lieber.
Schon im voraus vielen Dank!!br
!br
Diese FAQ findet man unter:!br
!link http://www.lrz-muenchen.de/~ui161ab/www/isdn/;!br
oder:!br
!link ftp://ftp.franken.de/pub/isdn4linux/FAQ;!br
oder:!br
!link ftp://ftp.pop.de/pub2/linux/isdn4linux/FAQ;!br
!br
!br
!2Allgemeines zu isdn4linux
!old
Q: Was ist isdn4linux?
A: isdn4linux ist ein Satz von Kernel-Modulen, um dem Linux-Kernel ISDN
"beizubringen". Es besteht aus einem Hauptmodul ("isdn") und den
eigentlichen Hardwaretreibern, die die spezielle Hardware einzelner
Karten ansteuern.
Q: Was kann isdn4linux?
A: ISDN4linux steuert ISDN-PC-Steckkarten an und kann dabei ein Modem mit
Hayes-Befehlssatz ("AT"-Befehle) emulieren. Die Möglichkeiten sind
sehr vielfältig, sie reichen von einer einfachen Anwendung von
Terminalprogrammen, über HDLC (die Verwendung eigener ISDN-Devices), bis
zur Vollanbindung an's Internet mit PPP - und sogar Audio-Anwendungen sind
möglich.
Q: Was kann isdn4linux noch nicht?
A: Noch sind keine !u1Vollduplex!u0-Audio-Verbindungen machbar.
Es fehlt noch das eine oder andere Protokoll (V.110, amerikanische
Protokolle).
Q: Kann ich isdn4linux in Nordamerika einsetzen?
A: Siehe dazu die entsprechende Frage im Kapitel "Nationale Besonderheiten".
Q: Was benötige ich für isdn4linux?
A: Seit Kernel 1.2.59 ist isdn4linux fester Bestandteil des Linux-Kernel.
Zusätzlich benötigt wird das Paket isdn4k-utils-2.0.tar.gz und ggf.
der HiSax-Treiber.
!old
Q: Wo gibt es isdn4linux?
A: Via FTP:!br
Das Paket liegt auf !link ftp://ftp.franken.de/pub/isdn4linux; und
diversen Spiegeln.!br
Via Modem/ISDN:!br
Vom Linux-Server der Incubus-BBS (Login gast,
Verzeichnis /pub/linux/isdn4linux, ZModem senden mit 'sz filname') gesaugt
werden. Der Server ist unter folgenden Nummern erreichbar:
!verbon
+49 931 781464 Zyxel U-1496E V.32(bis), V.42(bis), Zyxel 19200
+49 931 781465 Atrie 1914A V.32(bis), V.42(bis), V32terbo
+49 931 781467 Atrie 1914A V.32(bis), V.42(bis), V32terbo
+49 931 781468 Atrie 1914A V.32(bis), V.42(bis), V32terbo
!verboff
Neuer Ringdown (16 Lines. Hier zuerst als 'bbs' einloggen):
!verbon
+49 931 79002055 Motorola 3400 V.32(bis), V.42(bis), V.34
!verboff
ISDN (ebenfalls zuerst als 'bbs' einloggen):
!verbon
+49 931 7840724 ICN X.75 2 B-Kanäle
+49 931 7841020 ICN X.75 2 B-Kanäle
+49 931 7841060 ICN X.75 2 B-Kanäle
+49 931 7841070 ICN X.75 2 B-Kanäle
+49 931 7841080 ICN X.75 2 B-Kanäle
!verboff
Hier eine Liste von Mirrors, deren Grundstock dankenswerterweise von Herbert
Rosmanith <herp@wildsau.idv-edu.uni-linz.ac.at> zusammengestellt wurde. Wer
weitere Mirrors kennt, möge sie uns mitteilen!
!verbon
!link ftp://freja.frontier.dk/linux/isdn4linux/;
!link ftp://ftp.cs.tu-berlin.de/pub/net/isdn/isdn4linux/;
!link ftp://ftp.fokus.gmd.de/.mount2/pub/Linux/isdn/isdn4linux/;
!link ftp://ftp.franken.de/pub/isdn4linux/;
!link ftp://ftp.germany.eu.net/pub/os/Linux/Local.EUnet/ISDN/isdn4linux/;
!link ftp://ftp.kiss.de/pub/linux/isdn4linux/;
!link ftp://ftp.leo.org/pub/comp/os/linux/isdn/isdn4linux/;
!link ftp://ftp.lame.org/mirrors/isdn/;
!link ftp://ftp.mathematik.th-darmstadt.de/pub/linux/mirrors/misc/isdn4linux/;
!link ftp://ftp.nvg.unit.no/pub/linux/isdn/;
!link ftp://ftp.pop.de/pub/local/linux/isdn/;
!link ftp://ftp.rz.fh-hannover.de/pub/linux/local/isdn4linux/;
!link ftp://ftp.rz.hu-berlin.de:/pub/linux/isdn4linux/;
!link ftp://ftp.tu-dresden.de/pub/soft/isdn/isdn4linux/;
!link ftp://ftp.uni-mainz.de/pub/internet/starter-kit/isdn/isdn4linux/;
!link ftp://ftp.uni-wuppertal.de/pub/linux/isdn4linux/;
!link ftp://ftp.xlink.net/pub/mirror.ftp.franken.de/isdn4linux/;
!link ftp://fvkma.tu-graz.ac.at/pub/isdn4linux/;
!link ftp://wildsau.idv.uni-linz.ac.at/pub/isdn4linux/;
!verboff
!old
Q: Was sollte ich unbedingt lesen?
A:
!verbon
ISDN-Kernelsubsystem: /usr/src/linux/Documentation/isdn/README
ISDN-Steckkarte: /usr/src/linux/Documentation/isdn/README.<Karte>
Synchrones PPP: /usr/src/linux/Documentation/isdn/README.syncppp
/usr/src/linux/Documentation/isdn/README.syncPPP.FAQ
Voice capability: /usr/src/linux/Documentation/isdn/README.audio
ISDN Utilities: /usr/src/isdn4k-utils-<version>/README(.*)
Des weiteren existieren zu vielen Hilfsprogrammen Man-Pages!
In einer Suse-Distribution könnten u.U. noch folgende Informationen
hilfreich sein:
Synchrones PPP: /usr/doc/faq/faq/PPP-FAQ
Konfiguration Email: /usr/doc/howto/mini/Mail-Queue.gz
!verboff
Q: Welche hilfreiche Links gibt es rund um isdn4linux?
A: Scripte und Installationstips von vielen Leuten:!br
!link http://www.rosat.mpe-garching.mpg.de/~web/ISDN.html;!br
I4l, syncPPP, email, Usenet, Voicebox, diese FAQ und mehr:!br
!link http://www.lrz-muenchen.de/~ui161ab/www/isdn/;!br
Michael Hipp's page (ipppd):!br
!link http://www.sfs.nphil.uni-tuebingen.de/~hipp/isdn/;!br
Chargeint-Anleitung:!br
!link http://www.provi.de/~gvz/chargeint.html;!br
Stefan Nehlsen's Anleitung für sync-ppp:!br
!link http://www.techfak.uni-kiel.de/~stn/i4l/;!br
xled (früher xvboxled) gibt es auf:!br
!link fb4-1112.uni-muenster.de/pub/ffwd/;!br
Beispielkonfigurationen zu isdn4linux soll es auch geben auf:!br
!link http://www.datenhighway.com/isdn4linux.html;!br
Diese FAQ sowie isdn4linux gibt es auf:!br
!link ftp://ftp.franken.de/pub/isdn4linux/;!br
Die FAQ gibt es auch auf:!br
!link ftp://ftp.pop.de/pub2/linux/isdn4linux/FAQ;
!old
Q: Gibt es eine Mailinglist zu isdn4linux?
A: Ja, die gibt es. Um daran teilzunehmen, schickt man eine Mail an
"majordomo@hub-wue.franken.de". Der Betreff der Nachricht ist egal. Im
Nachrichtentext gibt man an: "subscribe isdn4linux <emailadresse>".
Im Feld <emailadresse> gibt man die Adresse an, an die die Mails aus der
Liste geschickt werden sollen. Z.Zt. kommen etwa 20-50 Mails pro Tag.
Q: Wie kann ich die Mailingliste zu isdn4linux wieder abbestellen?
A: Um die Mailingliste wieder abzubestellen, schickt man wieder eine Mail
an majordomo@hub-wue.franken.de - Betreff der Nachricht ist egal.
Im Nachrichtentext: unsubscribe isdn4linux <emailadresse>. Man gibt im
Feld <emailadresse> die Adresse an, an die die Mails aus der Liste
bisher geschickt wurden.
Q: Gibt es die Mailingliste auch als Newsgruppe?
A: Ja, auf die Mailingliste kann man auch über de.alt.comm.isdn4linux
zugreifen - ein bidirektionales Gateway sorgt dafür, daß man auch antworten
kann.
Q: Gibt es ein Archiv der Mailingliste isdn4linux?
A: Ja, auf dem Rechner hub-wue.franken.de werden alle Mails zu der
Mailingliste gesammelt (unsortiert). Die Mails werden in Files nach Monaten
getrennt gesammelt. Um an die Archive zu kommen, schreibt man eine Mail an
majordomo@hub-wue.franken.de, Betreff ist egal. Folgende Befehle sind
möglich:
!verbon
index isdn4linux - zeigt, welche Archive vorhanden sind
get isdn4linux <archivname> - holt das File <archivname>
!verboff
Die Archive heißen "archiv.<jahr><monat>", also z.B. "archiv.9610"
für den Oktober 1996.
Ein Archiv der Mailinglist ist außerdem über FTP verfügbar:!br
!link ftp://ftp.uni-oldenburg.de/pub/unix/linux/isdn/isdn4linux/Mailing-List;!br
Ein weiteres Archiv findet sich laut Sascha Ottolski
<sascha@alzhimer.isdn.cs.tu-berlin.de> unter:!br
!link http://wws.mathematik.hu-berlin.de/ldr/ISDN/isdn4linux/;
!old
Q: In welchen Ländern funktioniert isdn4linux?
A: Wir wissen derzeit von folgenden Ländern:
!verbon
Deutschland
Finnland
Frankreich
Niederlande
Norwegen
Österreich
Peru
Portugal
Schweden
Schweiz
Spanien
USA
!verboff
Q: Ist isdn4linux postzugelassen?
A: Deutschland:!br
Das kommt auf den verwendeten Treiber an. Bei aktiven Karten besitzt die
Karte mitsamt der Firmware eine Zulassung. Diese Karten sind auch beim
Betrieb mit isdn4linux zugelassen. Der Telestreiber besitzt in
Deutschland keine Zulassung (obwohl er hervorragend funktioniert!).
Er darf deshalb nur an einer postzugelassenen Telekommunikationsanlage
am internen S0-Bus betrieben werden.!br
Andere Länder:!br
Hier verfügen wir noch nicht über irgendwelche Informationen.!br
Wer weiß mehr?
!old
Q: Welche Version ist aktuell?
A: Derzeit ist die Version isdn4k-utils-2.0 als Zusatz zu der im Kernel
enthaltenen Software erforderlich. Wer Kernel 2.0.0 (und nur der!) benutzt,
muß zwei Patches einspielen (isdn4kernel-2.0-patch1+2). Kernel 2.0.2 ist
wegen eines Bugs unbrauchbar. Kernel zwischen 2.0.15 und 2.0.24 arbeiten
mit syncPPP nicht immer ganz korrekt. In 2.0.26 kamen viele i4l-Bugfixes
hinein, allerdings wurde dafür eine Includedatei (proto.h) verschluckt.
Einen erneuten "Jumbo-Patch" gab es auf Version 2.0.30. Kernel 2.0.27+
laufen sehr stabil.!br
In den Kernels ab 2.1.0 wurde viel verändert - sie sind deshalb nur für
mutige Leute zu empfehlen. In Zusammenarbeit mit HiSax 1.4 läuft es aber
bis 2.1.14. Kernels ab 2.1.15 laufen erst ab HiSax 2.0 und dem zugehörigen
Kernelpatch.!br
Es wird empfohlen, i4l-Versionen ab 2.0 zu benutzen - in Zusammenhang
mit einem Kernel ab 2.0.3 (kein Patch mehr notwendig!). Kernel >2.0.27
ist der Stand der Dinge.
Q: Welche Hardware wird !u1NICHT!u0 unterstützt?
A: Z.Zt. werden (mit Ausnahme der ICN) keine einzige aktiven ISDN-Karten
unterstützt. Lediglich noch für die AVM B1 gibt es einen Alpha-Treiber auf
Binary-Only Basis.
Q: Unterstützt isdn4linux externe Terminaladapter?
A: Nein, aber das braucht es auch nicht. Schließlich sind Terminaladapter so
gebaut, daß sie sich entweder wie ein Modem oder wie eine Netzwerkkarte
verhalten. Linux unterstützt aber auch schon ohne isdn4linux Modems und
Netzwerkkarten - daher ist kein spezieller ISDN-Treiber erforderlich
(womit sich die Konfiguration meist deutlich vereinfacht).
!old
Q: Welche interne ISDN-Karten wird unterstützt?
A: Im Moment gibt es einen Treiber für alle Karten mit einem bestimmten
Siemens-Chipsatz (HiSax-Treiber), der auch Plug&Play-Karten unterstützt.
Zu den Details siehe die nächste Frage.!br
Der HiSax-Treiber hat den alten Telestreiber überflügelt, der entsprechend
nicht mehr weiterentwickelt wird. Dementsprechend hat der Telestreiber
mittlerweile wesentlich mehr Bugs und sollte nicht mehr verwendet werden.!br
Weitere Treiber gibt es für die (aktive) ICN-Karte (ICN-Treiber),
sowie für die PCbit-Karte (Octal, Portugal).!br
Für die "itk ix1 micro" gab es einen (speziellen) Treiber von Frank Mohr
<mohr@fhdacom2.fhrz.fh-darmstadt.de>, der jedoch mittlerweile im HiSax 2.0
enthalten ist. Er unterstützte die folgenden Karten:
!verbon
* ITK ix1 micro V2.0 und V2.1
* Cisco 200
* ITK Columbus
!verboff
Schließlich gibt es noch einen (Alpha-) Treiber für die aktive AVM B1,
mit einigen Besonderheiten. Siehe dazu die Frage "Wie sieht es aus mit
der aktiven AVM B1?".
!old
Q: Was hat es mit dem HiSax-Treiber auf sich?
A: Das ist ein Treiber, der alle passiven Karten unterstützen soll,
die mit einem bestimmten Siemens-Chipsatz ausgestattet sind.
Unterstützt werden zum jetzigen Zeitpunkt:
!verbon
* Teles S0-8
* Teles S0-16 und S0-16.2
(baugleich: Dr. Neuhaus Niccy 1016, Creatix 16/S0)
* Teles S0-16.3
* Teles S0-16.3 PNP
* Teles PCMCIA
* Creatix S0 PNP
* AVM A1 (Fritz!)
* ELSA Microlink PCC-16
* ELSA Microlink PCF
* ELSA Microlink PCF/pro (nur ISDN-Teil, nicht der V34 Modem Chip)
* ELSA Quickstep 1000
* ITK ix1-micro Rev.2
!verboff
Die ELSA PCC-8 sollte eigentlich auch unterstützt werden, mangels
Debuggingmöglichkeit hält sich jedoch noch einen Bug, der dies verhindert.
Karsten Keil <keil@temic-ech.spacenet.de> schreibt weiterhin am 14. Okt
1996:
!verbon
Erstes Ziel des HiSax Treibers war es mehr ISDN Karten unter i4l
verfügbar zu machen, dieses Ziel bleibt auch bestehen.
Zweitens soll er möglichst einfach konfiguriert werden können und dem
User keine funktionierende Karte vorgaukeln wenn es Hardware Probleme
gibt (IRQ, Reset Problem Teles). An den Hardwareproblemen selbst (PCI
IRQ, Int 12/15 usw.) kann ich auch nichts ändern, aber der Treiber
wird nicht geladen wenn sowas auftritt.
Drittens und dieser Teil ist erst angefangen, vollstendige
Überarbeitung der Statemaschinen um einen komplett DSS1 bzw. 1TR6
konformen Treiber zu bekommen, der eine Zulassung bestehen würde (das
heißt nicht, das ich ihn zulassen will oder kann).
Desweitern möchte ich,wenn möglich auch die US ISDN Protokolle
unterstützen, damit i4l mal aus Europa rauskommt.
Auch weitere l2/l3 Protokolle sollen rein (V110 ...), Standleitungs-
Unterstützung ..., eine Menge Arbeit, die ich nicht unbedingt allein
machen möchte.
Deshalb an alle die ein wenig von Programmierung und ISDN verstehen
(ich selbst hab im Januar das erste mal was von ISDN gehört und
beruflich auch nichts damit zu tun, d.h alles nebenbei gelernt), wer
Lust hat (was dabei glaube ich immer noch das wichtigste ist) melde
sich für die weitere Entwicklung.
!verboff
Wer Interesse an dem Treiber hat, muß ihn sich hier besorgen:!br
!link ftp://ftp.franken.de/pub/isdn4linux/HiSax/;!br
(und hoffentlich bald auf allen isdn4linux-Mirrors!)
Seit HiSax 1.5/2.0 werden auch D64-Verbindungen unterstützt. HiSax 2.0 wird
ins Kernel 2.0.30 wandern, und braucht ab dann nicht mehr gesondert in den
Kernel gepatcht werden.
Q: Wie sieht es aus mit der aktiven AVM B1?
A: Andreas Schultz <aschultz@hppool.cs.Uni-Magdeburg.de> hat dafür einen
Treiber geschrieben, den es (als Alpha-Version) unter folgendem Link gibt:
!link http://www.cs.uni-magdeburg.de/~aschultz/avmb1-1.2-alpha.tar.gz;
Da er ein NDA mit AVM unterzeichnen mußte, gibt es den Treiber jedoch nur
als Binary.
Q: Nachdem meine AVM ja so viele Interrupts erzeugt mit dem HiSax-Treiber,
welches ist die beste passive Karte in Verbindung mit HiSax?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu am 12. Nov 1996:!br
Das sollte sich fast nichts nehmen. Von der Belastung des Rechners ist die
Fritz! wahrscheinlich auf Dauer die Schlechteste [siehe dazu die Frage
"Meine AVM-Karte erzeugt extrem viele Interrupts" im Abschnitt HiSax im
Kapitel Troubleshooting], aber vielleicht bekomm ich das mit dem Timer
noch raus, wie gesagt macht sich nur bemerkbar wenn der Rechner z.B die
ganze Nacht rendering betreibt.
Karsten Keil <keil@temic-ech.spacenet.de> schrieb weiterhin am 2. Dez 1996
hinsichtlich Stabilität und Bug-Freiheit:
!verbon
1. Wahl ELSA
ELSA stellt im Gegensatz zu AVM die Spezifikation zur Verfügung.
2. Wahl Creatix PNP
Auch Creatix Mitarbeiter stehen Linux nicht vollkommen negativ
gegenueber ;-). Ist uebrigens eine Creatix Eigenentwicklung und
nicht mit der Teles 16.3 PNP identisch.
!verboff
!old
Q: Unterstützt isdn4linux externe ISDN-Adapter?
A: Nein, isdn4linux unterstützt nur interne Steckkarten. Externe ISDN-Adapter
sind entweder wie analoge Modems oder wie Netzwerkkarten ansprechbar und
benötigen daher kein ISDN4Linux.
!old
Q: Welche ISDN-Modi werden unterstützt?
A: Die folgenden:
!verbon
56k asynchron : nein
64k synchron : ja
128k synchron : ja (channel bundling - siehe nächste Frage)
!verboff
!old
Q: Unterstützt isdn4linux Kanal-Bündelung (channel bundling)?
A: Isdn4Linux unterstützt in der aktuellen Version channel bundling mit
2 verschiedenen Verfahren:!br
- !b1MPPP!b0 (basiert auf syncPPP)!br
- !b1Raw Bundling!b0 (Konfiguration von sogenannten Slave-Kanälen)!br
Beide Varianten haben z.Zt. eigene Vor- und Nachteile. Siehe dazu "Wie
benutzt man Channel Bundling?" im Abschnitt "Channel-Bundling" weiter
unten.!br
Achtung: Channel bundling bringt nur eine Zeit-, nicht aber eine
Gebührenersparnis mit sich. Nur wenn tatsächlich die höhere Bandweite
benötigt wird, ist der Einsatz sinnvoll.
!old
Q: Was ist der Unterschied zwischen einer aktiven und einer passiven
ISDN-Karte?
A: Bei einer aktiven ISDN-Karte wird ein Großteil des ISDN-Verbindungs-
protokolls (Wählen, Ruf annehmen, usw.) von der Karte selbst erledigt.
Auf der Karte ist dazu ein eigener kleiner Computer mit Software
(Firmware) untergebracht Eine passive Karte muß all diese Dinge von dem
Computer erledigen lassen, in dem sie steckt.
!old
Q: Gibt es Rechner, die einen Gastzugang bieten, wo ich mein isdn4linux
testen kann?
A: Ja, folgende Rechner bieten Gastzugänge für Modememulation oder IP an:!br
- Eberhard Moenkeberg <emoenke@gwdg.de>:
!verbon
* Welcome to Linux at eberhard.moenkeberg.de (LAN, 192.168.99.1).
Under ++49-551-7704103, ISDN NetCalls (HDLC-trans-rawip)
for 192.168.99.1 get accepted. You should come as 192.168.*.*
because sometimes my "default" route is not your way.
/ftp is exported for NFS; try "showmount -e".
You can login as "guest" without password.
FTP as "gast" with password "gast" avoids the restricted shell.
* Under ++49-551-7704102, a 28800 bps modem and a Creatix ISDN
card (HDLC only, not X.75) are listening for Logins.
!verboff
Mit dem Net-Setup aus!br
!link ftp://ftp.gwdg.de/pub/linux/isdn/isdn4linux-gwdg/rc.isdn-Beispiel;!br
kann man sofort unter 551-7704103 den NetCall testen (geht ohne
Anpassung aus ganz Deutschland; das Ausland muß nur die Nummern
anpassen).!br
- Gernot Zander <hifi@scorpio.in-berlin.de>:
!verbon
There's a "gast" at +49 30 67 19 81 01 (X.75, mgetty). There's the
stones-html-page with pics in postscript to test downloading. Who
needs a target to call could use it.
Es gibt den Gast auf der +49 30 67198101 mit X.75, sofern nicht einer
der Tester mein ttyI erhängt hat, und auf der ...103 ein getty mit
HDLC.
!verboff
Als Gast kommt man in eine Art Mailbox. Das Enterprise-gif gibt's
da nicht mehr, dafür kann man sogar ein bißchen News lesen.
!old
Q: Kann ich i4l mit dem diald kombinieren?
A: Ja, siehe dazu den Abschnitt "Diald" im Kapitel "Konfiguration".
!old
Q: Kann ich isdn4linux als Anrufbeantworter benutzen?
A: Ja, Voice-Support ist in der aktuellen Version von isdn4linux möglich.
Man kann sich dabei entweder des "vgetty"-Teils von Gert Doerings
"mgetty+sendfax" bedienen, oder man benutzt das Programm "vboxgetty"
von Michael Herold, welches speziell für ISDN4Linux hergestellt wurde.
Letzteres findet sich unter:
!link ftp://ftp.franken.de/pub/isdn4linux/contributions;
!old
Q: Kann ich isdn4linux zum Faxen benutzen?
A: Zwar sind immer mal wieder einige Gruppen mit der Entwicklung einer solchen
Software beschäftigt, die mit i4l zusammenarbeiten soll. So wie es im
Moment aussieht, wird es aber wohl nie funktionieren, weil Faxen sehr
timing-kritisch ist, und Linux keine Echtzeit-Umgebung bietet.!br
Wer faxen will, muß sich deshalb neben der ISDN-Karte leider auch noch ein
analoges Fax-Modem anschaffen.
!old
Q: Ist Btx/Datex-J mit isdn4linux möglich?
A: Ja, das ist einfach über die Modememulation der ttyI*-Devices möglich.
Es sind die für BTX speziell vorgesehenen Register zu setzen (ATSx=y -
siehe Readme's). Auch der Internetzugang über T-Online ist möglich.
ACHTUNG: XCept (früher Xbtx) kennt eine Konfigurations-Option ISDN.
Diese ist NICHT zu verwenden! Vielmehr ist XCept so zu konfigurieren
als würde ein normales Modem verwendet.!br
Siehe auch die Fragen zu T-Online im Abschnitt Konfiguration|Gegenstellen.
Q: Kann ich mit isdn4linux eine Verbindung zu Compuserve aufbauen?
A: Nein, da Compuserve's ISDN-Zugänge nur mit dem veralteten V.110-Protokoll
funktionieren. V.110 ist in isdn4linux (noch?) nicht implementiert.
Inzwischen bietet Compuserve aber auch viele X.75-Einstiege an.
Q: Welche ISDN-Features wird isdn4linux nicht bieten können?
A: Einige ISDN-Features sind gerätespezifisch und können daher nicht von
isdn4linux für andere Geräte aktiviert werden, es sei denn, isdn4linux
würde deren TEI fälschen (was die Geräte jedoch ziemlich verwirren dürfte).
Solche gerätespezifischen ISDN-Features sind u.a.: Ablehnen eines
anklopfenden Anrufes, Rufnummernübermittlung aus/ein, Makeln, Konferenz,
Vermitteln im Amt, diverse COLP/CLRP.
!old
Q: Ich möchte einen neuen Hardware-Treiber schreiben. Wo gibt es die
Schnittstellen-Beschreibung zum Link-Level-Modul?
A: Beim Linux-Quellcode (in /usr/src/linux/Documentation/isdn) befindet sich
die Datei INTERFACE - das ist eine Beschreibung der Schnittstelle zum
Link-Level-Modul.
Q: Wie habe ich Zugriff auf den Source der aktuellen Entwicklung/was hat
es mit dem CVS-Tree auf sich?
A: CVS - Concurent Version System!br
Ist eine Multiuser/Server Erweiterung von RCS (Revision Control System).
Die I4L Treiber werden unter CVS entwickelt, dazu existiert auf einem
Rechner (oldhades.think.de) ein CVS-tree auf den alle Entwickler Zugriff
haben. Zusätzlich hat Fritz einen anonymen Readonly Zugriff gebastelt, wer
also unbedingt das Neuste haben will kann sich das dort holen, in den
Sourcen sind eventuell mehr bugs drin, als in den releasten !!!
Hier die entsprechende Nachricht von Fritz Elfert <fritz@wuemaus.franken.de>
zu diesem Thema:!br
!verbon
Ich bekomme oft Patches - gegen die aktuell offizielle Release des
Quellcodes - bei denen ich Probleme bekomme, sie einzubinden.
Mein lokaler Quellcode hier ist manchmal zwei oder drei Versionen
weiter, wobei ich sie allerdings nicht releasen kann, weil er
unvollständig oder völlig ungeprüft ist etc.
Deshalb habe ich jetzt beschlossen, das CVS-Repository von
isdn4linux öffentlich zugänglich zu machen. Jetzt können Programmierer,
die einen Blick auf den Fortgang der Entwicklung werfen wollen, oder
Leute, die immer den allerneuesten Stand haben wollen, folgendermaßen
auf das CVS-Repository zugreifen:
1.) Man installiere GNU CVS (irgendeine Version >= 1.6 tut's).
2.) Man schreibe ein kleines Shellscript .cvsrsh im Homedir:
#!/bin/sh
exec rsh -l guest $*
3.) Man setze CVS_RSH auf dieses Script (z.B. CVS_RSH=~/.cvsrsh)
4.) Man setze CVS_ROOT auf oldhades.think.de:/i4ldev
(z.B. export CVS_ROOT=oldhades.think.de:/i4ldev)
5.) Man führe aus: "cvs -z9 checkout isdn"
-> Dies läßt einen Verzeichnisbaum im aktuellen Verzeichnis
entstehen. Unterhalb von isdn/ findet man die gleiche
Hierarchie wie im Linux-Source nebst einigen Scripten, um
den Inhalt in den Linux-Quellcodezweig zu kopieren/diffen.
Ähnlicher Zugang ist auch auf das Utility-Paket möglich, mit dem
Kommando:
cvs -z9 checkout isdn4k-utils
ABER VORSICHT! DAS NEUESTE MATERIAL IST MANCHMAL ZIEMLICH INSTABIL ODER
WENIGSTENS NICHT OHNE GUTE PROGRAMMIERKENNTNISSE COMPILIERBAR -
bitte keine Newbie-Fragen zu diesem Thema! Use the source, Luke!
Hinweis:
Natürlich ist der Zugriff Read-Only. Der Zugriff ist auf die
folgenden Kommandos beschränkt:
checkout
diff
export
status
update
Zur Benutzung dieser Befehle sehe sich die Dokumentation zu CVS an.
Leute, die das Entwicklerteam _ständig_ unterstützen wollen
(z.B. neue Treiber schreiben [oder FAQ-Mitarbeit! Die Red.]),
können einen echten Account zum vollständigen Zugriff erhalten.
Man schreibe mir in diesem Falle eine Mail.
!verboff
!old
Q: Kann man ISDN4linux auch unter dem dosemu ansprechen?
A: Ja, das geht tatsächlich! Steffan Henke <henker@informatik.uni-bremen.de>
schrieb dazu am 25. Okt 1996:
!verbon
In der dosemu.conf genügt z.B. der folgende Eintrag für einen
virtuellen com2-Port, der z.B. unter Telix oder Terminate läuft:
serial { com 2 device /dev/ttyI3 }
Auch der Zugriff über Fossil ist möglich, wenn fossil.com (beim dosemu
dabei) gestartet wird.
Getestet in den folgenden Konfigurationen:
- Kernel 2.0.21, Telestreiber inkl. Karstens patches
- Kernel 2.0.21, HiSax
!verboff
Q: Gibt es eine funktionierende ISDN Karte für einen DEC Alpha mit Linux?
A: Thomas Bogendoerfer <tsbogend@alpha.franken.de> schrieb am 17. Dez 1996:!br
Ich verwende eine ICN ISDN Karte in meinem Alpha Noname für den
Internetzugang und mail/news via uucp.!br
Ich habe keine passive ISDN Karte um HiSax mit Linux/Alpha zu testen. Es
gibt jedoch Probleme mit den Timern (HZ ist 1024 auf Alphas). Selbst im
icn Treiber ist der "falsche" Timer, was ein wenig zu viel Polling der Karte
verursacht (aber es führt zu besseren ping Zeiten:-)). Ich vermute, es ist
an der Zeit das zu beheben.
Q: Läuft isdn4linux parallel zu UISDN?
A: Nils Rennebarth <nils@nus.de> schrieb dazu am 10. Dez 1996:
!verbon
Es läuft parallel. Und es läuft unter 2.0.X.
Beide ISDN-Pakete laden jedoch das Modul isdn.o, ansonsten ist der
Namensraum verschieden. Abhilfe: Urlichs isdn.o in uisdn.o umbenennen,
entsprechend /lib/modules/modules.isdn (oder wie immer das Ding heißt,
wo die Module drinstehen, und das das Skript ausliest) anpassen.
Freundlicherweise sind auch die Default-Namen der ISDN-devices
verschieden.
!verboff
Q: Was heisst eigentlich CLIR, COLP, CVS, HDLC, HSCX, ISAC, TEI...?
A: Hier ein kleines Glossar:!br
!b1CLIR!b0
!verbon
CLIR ist ein Angebot des ISDN-Anbieters: man kann fallweise
die Übermittlung der eigenen Rufnummer an den Gesprächspartner
unterdrücken lassen. CLIR muß man beantragen, es ist (in Deutschland)
jedoch kostenlos. Hingegen kostet die fallweise !i1Übermittlung!i0
der Rufnummer Geld.
!verboff
!b1COLP!b0
!verbon
Auch COLP ist ein Angebot des ISDN-Anbieters. Man muß es beantragen,
aber es kostet (in Deutschland) 10.-- DM pro Monat extra. Wer COLP
beantragt hat, bekommt ein erweitertes Wählprotokoll über die
Leitung, welches man dann z.B. in der Tk-Anlage auswerten kann.
Derzeit wird an einer Möglichkeit gebastelt, das mit Hilfe einer
"verkehrtherum" angeschlossenen zweiten Teleskarte zu umgehen. Man
bekommt dann ganz ohne Gebühren mehr Informationen als mit laufendem
COLP. Das rechnet sich bald...
!verboff
!b1CVS-Tree!b0
!verbon
Die i4l-Entwickler haben sich zu einem Team zusammengeschlossen. Das
Tool "cvs" erlaubt es den Mitgliedern, relativ problemlos Patches
einfließen zu lassen. Der Werdegang des Projektes wird damit
ausgezeichnet dokumentiert, und es ist auch nicht schwierig, eine
ältere Version wieder herzustellen.
!verboff
!b1HDLC!b0
!verbon
Ein sehr verbreitetes Low-Level-Protokoll.
!verboff
!b1HSCX!b0
!verbon
Ein Siemens-Chip, der ähnlich ->ISAC auf vielen passiven ISDN-Karten
sitzt. Er übernimmt den seriellen Bus vom ISAC und demultiplext beim
Empfangen bzw. multiplext (d.h. fügt die Bits an der richtigen Stelle
ein) die B-Kanäle.
!verboff
!b1ISAC!b0
!verbon
Ein Siemens-Chip, der ähnlich ->HSCX auf vielen passiven ISDN-Karten
sitzt. Er ist für "Level 1" zustaendig, sitzt also (beinahe) direkt an
der Leitung. Er kann das D-Kanalprotokoll handhaben und setzt die
S0-Daten auf einen speziellen seriellen Bus (IOM) um. Beim Senden
geht es umgekehrt.
!verboff
!b1TEI!b0 (Terminal End Identifier)
!verbon
Die lokale Vermittlungsstelle oder bei internen S0 die Anlage weist
jedem Endgerät automatisch oder fest eine TEI zu. Diese dient ganz
einfach zur Addressierung des D-Kanals. TEIs haben folgende Werte:
0- 63 feste TEIs (z.B wird 0 bei Anlagenanschlüssen verwendet)
64-126 automatisch zugewiesen
127 Rundruf an alle (z.B. bei hereinkommendem Anruf)
!verboff
!b1TK-Anlage!b0 (Telekommunikationsanlage)
!verbon
Eine TK-Anlage dient dazu, verschiedene interne Geräte an das
ISDN-Netz anzuschließen. Meist handelt es sich dabei um analoge
Geräte, die nicht direkt ans ISDN-Netz angeschlossen werden können.
Die TK-Anlage kann jedoch auch einen internen digitalen S0-Bus zur
Verfügung stellen, an dem dann ISDN-Geräte angeschlossen werden können.
!verboff
!2Konfiguration
!3Allgemein
!old
Q: Wo kann ich Skripte und andere Information für die Konfiguration von i4l
finden?
A: Konfigurationsbeispiele und Scripten:!br
!link http://www.rosat.mpe-garching.mpg.de/~web/ISDN.html;!br
Viele HowTo's zum Thema Grundinstallation, syncPPP, Einrichten von Email,
Usenet News, Anrufbeantworter und mehr:!br
!link http://www.lrz-muenchen.de/~ui161ab/www/isdn/;!br
Weitere FAQ mit Beispielscripten:!br
!link http://www.fzi.de/sim/people/trautw/i4l/index.html;
!old
Q: Wieviele ISDN-Karten kann ich maximal gleichzeitig in meinen Rechner
stopfen?
A: Soviele, wie ISA-Slots da sind bzw. Interrupts/IO-Adressen.
Die Teles 16.3 kann (offiziell) nur auf 3 verschiedenen IO-Adressen liegen,
daher können nur maximal 3 verwendet werden. Außerdem wird für jede Karte
ein eigener Interrupt benötigt.!br
Peter Strunk <webadmin@mail.bicos.de> hatte am 8. Nov 1996 folgenden Tip
für die Installation einer vierten Teles-Karte:
!verbon
Probiere doch mal Port 0x080h, DIP-SW in die nicht dokumentierte
Position!
!verboff
Ähnlich die AVM.!br
Die ICN's haben keine Interrupts, flexiblere Port-Konfigurationen, und
der Treiber legt den shared-memory Bereich aller ICN-Karten auf die
selbe Adresse. Eingeblendet wird das Karten-Memory jeweils bei Bedarf.!br
In Kombination können daher tatsächlich so viele ISDN-Karten wie Slots
eingesetzt werden. Notfalls kann man die Anzahl der ISA-Slots durch einen
ISA-Bus-Extender vergrößern.
Q: Brauche ich ein DOS Setup-Programm, um meine Teleskarte zu initialisieren?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu am 21. Feb 1997:!br
Du brauchst aber kein DOS Setup fuer Linux, mit einer Ausnahme:!br
Es gab von Teles eine Charge PnP Karten die kein echtes PnP gemacht haben.
Zu erkennen sind diese Karten daran, das sie KEINEN Jumper/Dip haben aber
von isapnp nicht erkannt werden.!br
Alle anderen Karten werden mit den Linuxtreibern bzw. die PnP mit isapnp
konfiguriert.
!old
Q: Unterstützt isdn4linux "dial on demand"?
A: Ja. Wenn ein Netzwerk-Interface (z.B. "isdn0") eingerichtet ist, wählt
der Treiber die Gegenstelle an. Wurde außerdem ein Hangup-Timeout (Idle-
Timeout) eingestellt, isdnctrl huptimeout <interface> zeit dann legt der
Treiber automatisch auf, wenn "zeit" Sekunden keine Daten über das
Interface übertragen wurden. Siehe dazu die Fragen im Abschnitt über
Chargeint in Konfiguration. Im Zusammenhang mit syncPPP gibt es Probleme
(siehe syncPPP-Abschnitt!).!br
Für den Einsatz von "dial on demand" mit asyncPPP kann der diald eingesetzt
werden.
Q: Unterstützt isdn4linux PNP (Plug and Play)?
A: Ja. Allerdings nur in Verbindung mit dem HiSax-Treiber. Mit "Plug" alleine
ist's leider noch nicht getan, es fällt noch etwas mehr Arbeit an:
(von Karsten Keil <keil@temic-ech.spacenet.de>)
!verbon
1. HiSax muß in den Kernel gepatcht werden
(Achtung: den "-pn" Parameter verwenden!)
2. Mit "make menuconfig" (oder "make config") werden folgende Kernel-
Optionen eingestellt:
* ISDN = "M" (als Modul - PNP funktioniert sonst nicht!)
* HiSax = "M" (als Modul - PNP funktioniert sonst nicht!)
* 16.3/PNP support
* EURO support
3. Kernel und Module kompilieren & installieren, depmod. (Reboot!)
4. Die Konfiguration der PNP-Karte auslesen mit:
"pnpdump > /etc/isapnp.conf".
5. Die Konfigurationsdatei "/etc/isapnp.conf" muß von Hand angepaßt
werden. Folgende Werte sind zu setzen:
INT0 - der von der Karte verwendete Interrupt
(Default bei Teles 16.3 PNP: 10)
IO0, IO1 - die von der Karte verwendeten IO-Ports
(Default bei Teles 16.3 PNP: 0x580 bzw. 0x180)
(Achtung: diese Werte müssen 64bit aligned sein! Frühe
Versionen der PNP-Karten schlagen evtl. falsche Werte vor!)
6. Aktivieren der Konfiguration per:
"isapnp /etc/isapnp.conf"
(muß bei jedem Booten gestartet werden)
7. Nun kann das HiSax-Modul gestartet werden mit:
"modprobe hisax io=4,<P>,<INT>,<IO0>,<IO1>"
4 - PNP-Karte
<P> - Protokoll:
2 - für Euro-ISDN (normalerweise)
1 - für 1TR6-ISDN (deutscher Vorgänger von Euro-ISDN)
<INT> - der in /etc/isapnp.conf bei INT0 eingetragene Wert
<IO0> - der in /etc/isapnp.conf bei IO0 eingetragene Wert
<IO1> - der in /etc/isapnp.conf bei IO1 eingetragene Wert
!verboff
!old
Q: Gibt es einen Trick, Linux mal mit, mal ohne ISDN-Subsystem zu booten?
A: Ja, dafür gibt es ja die Runlevel (unter SysVinit).
Emil Stephan <ste@esqhen.su.eunet.de> hat dazu Scripten erstellt:
!verbon
Ich habe bei meinem Rechner 2 Runlevel definiert (3 und 4), 3 läuft
ohne isdn, 4 mit. Wenn ich ISDN mitsamt den dazugehörigen Prozessen
wie ipppd, isdnlog und mgetty stoppen will, gebe ich als root "init 3"
ein, zum Starten dann "init 4". Init sorgt dann dafür, daß über
"/sbin/init.d/i4l start" bzw. "... stop" die notwendigen Dinge
angestoßen werden.
!verboff
!old
Q: Gibt es die Möglichkeit, eine Rufumleitung mittels i4l zu initiieren?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu, daß es später
mal geplant sei, das im HiSax-Treiber zu implementieren.
!old
Q: Hat schon mal jemand mit linux ipx/spx über Isdn geroutet?
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb am 14. Okt 1996:
!verbon
Das ist kein Problem - machen wir schon lange.
- Einfach ein isdn-Interface anlegen
- wichtig dabei: encap isdnX ethernet
Den Rest macht "mars_nwe" (incl. Routing), ein vollständiger
Novell-Netware-Emulator. Den gibt es z.B. auf:
!link ftp://ftp.gwdg.de/pub/linux/misc/ncpfs/mars_nwe-0.98.pl7.tgz;
!verboff
!old
Q: Kann ich den kerneld einsetzen, um die ISDN-Module bei Bedarf in den Kernel
zu binden?
A: Emil Stephan <ste@esqhen.su.eunet.de> schrieb dazu am 15. Oktober 1996:
!verbon
Das Entladen der Module, wenn sie eine Minute lang nicht mehr
gebraucht wurden, macht der kerneld defaultmäßig. Das ist bei Modulen
wie Gerätetreibern ala Floppy etc. kein Problem; bei Treibern aber,
die irgendwelche Einstellungen über einen längeren Zeitraum behalten
müssen, aber doch. Z.Bsp. sind die Einstellung des Mixers bei einer
Soundkarte oder die Konfiguration von Dialin- und Dialout-Parametern
beim ISDN-Treiber solche.
Das Entladen des ISDN-Treibers zerstört z.B. auch das IP-Interface
ippp0 oder isdn0. Die Einträge in der IP-Layer des Kernels gehen dann
ins Leere. Wenn man mal in die Start-Up-Skripten von i4l reinschaut,
wird man eine ganze Menge Dinge finden, die mit isdnctrl etc.
eingestellt werden; die müßte der kerneld bei jedem erneuten Laden
wieder einstellen lassen. Auch der Status des D-Kanals auf ISDN könnte
zu den Dingen gehören, die durch das Entladen verloren gehen.
Also mein Tip ist, nicht vom kerneld laden und entladen lassen,
sondern beim Systemstart laden und nur entladen, wenn es aus
technischen Gründen nötig ist.
!verboff
Siehe dazu auch die Frage "Gibt es einen Trick, Linux mal mit, mal ohne
ISDN-Subsystem zu booten?".!br
Markus Gutschke <gutschk@uni-muenster.de> setzte hinzu:
!verbon
Genau für diesen Zweck gibt es seit geraumer Zeit in dem Modules
Paket eine Erweiterung, die es erlaubt, eine Datenbank mit
Zustandsinformationen über die Treiber zu installieren. Leider wird
dieses Feature bisher kaum oder gar nicht von den Modulen
unterstützt.
Als Alternative bieten sich auch solche Optionen wie der
"post-install" Hook in der "/etc/conf.modules" an. Es ist dann zwar
erforderlich, daß man von Hand die passenden Skripts schreibt, aber
im Prinzip funktioniert das dann genauso gut wie, wenn das Modul eine
automatische Initialisierung über eine Datenbank durchführen würde.
!verboff
Q: Wie komme ich zu einem für ISDN gepatchten tcpdump?
A: Michael Stiller <michael@toyland.ping.de> schrieb dazu am 23. Okt 1996:!br
Tip zum ftp'en:!br
!link ftp://ftp.gwdg.de/pub/misc/isdn/linux/isdn4linux-gwdg;!br
Da gibts den patch: "tcpdump-3.0.4-1-isdn.dif.gz"!br
und den Rest unter:!br
!link /pub/linux/mirrors/funet/PEOPLE/Linus/net-source/tools/tcpdump-3.0.4-1.tar.gz;!br
Evtl muß man im Patch je nach Namen seines ISDN Interfaces (bei mir bri0)
noch weitere Möglichkeiten dazu hacken. Defaultmäßig kennt das Teil nur
isdn* und isdnY* als Interfacenamen.!br
Weiterhin schrieb Henning Schmiedehausen <henning@pong.iconsult.com> zu
diesem Thema am 30. Okt 1996:
!verbon
Nachdem auch der Patch vom Eberhard Moenkeberg auf ftp.gwdg.de kein
cisco-hdlc ausdumpen kann, habe ich hier mal einen isdn-patch fuer
tcpdump-3.0.4 gemacht, der das Interface fragt, was fuer eine
Encapsulation es benutzt und sich entsprechend einstellt. Das Teil ist
gegen eine tcpdump-3.0.4-1.tar.gz Distribution, wie sie z.B. auf
!link ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/tools; liegt,
gemacht. Dieser Patch erkennt RAW-IP, ISDN-IP und CISCO-HDLC und kann
die Pakete entspr. dumpen.
!verboff
[An seiner Mail hing der Patch - er sollte sich einfach im Archiv der
Mailingliste wiederfinden lassen - die Red.]!br
Sascha Ottolski <sascha@alzhimer.isdn.cs.tu-berlin.de> hatte noch folgenden
Tip am 5. Nov 1996:
!verbon
Es gibt doch isdn4k-utils-2.0/tcpdump-3.0.3-isdn.diff ! Damit klappts,
sofern man noch selbst Hand anlegt:
In der Datei tcpdump-3.0.3-isdn/libpcap-0.0/pcap-linux.c steht nach
dem Patch irgendwo folgendes:
else if (strncmp("ppp", device, 3) == 0)
Entweder man nennt seine ppp-devices irgendwie pppX statt ipppX, oder
ändert die Zeile z.B. in
else if (strncmp("ippp", device, 4) == 0)
^^^^ ^^
Dann erkennt tcpdump auch sync-ppp. Jedenfalls bei mir.
!verboff
Q: Wie kann ich Benutzerrechte für die Verwendung von ISDN einrichten?
A: Henner Eisen <eis@baty.hanse.de> schrieb dazu am 13. Feb 1997:
Den Zugang über isdn-ttys kann man (ganz nach Unix-Philosophie)
beschränken, indem man in /etc/group eine Group (z.B. 'isdn') einrichtet,
und dann
!verbon
chgrp isdn /dev/ttyI* /dev/cui*
chmod o-rw /dev/ttyI* /dev/cui*
!verboff
allen Usern außer denen in der Gruppe 'isdn' die Lese/Schreibrechte für
die ISDN-ttys entzieht. Diejenigen, die ISDN benutzen dürfen, muß man dann
explizit zum Mitglied der Gruppe 'isdn' machen.
!3MSN
Q: Was ist eine MSN?
A: Im Gegensatz zu einem normalen Telefonanschluß kann ein ISDN-Anschluß
durchaus mehrere Telefonnummern haben - diese werden jeweils MSN genannt.
MSN ist die Abkürzung für Multiple Subscriber Number.
Q: Was ist eine EAZ?
A: Das ist die deutsche Bezeichnung für eine MSN. In Deutschland werden
EAZ und MSN manchmal synonym verwendet, obwohl eigentlich nach dem
verwendeten ISDN-Protokoll unterschieden werden müßte. Das, was in
Euro-ISDN eine "MSN" ist, wurde in 1TR6-ISDN (einem deutscher Vorläufer von
Euro-ISDN) als "EAZ" bezeichnet.
Q: Wieviele MSN benötige ich, wenn ich folgendes verwenden will:
!verbon
* Telefon
* Analogmodem (als Fax, Anrufbeantworter und Daten-Modem genutzt)
* Dial-In für X.75 (Modememulation)
* Dial-In mit SyncPPP
!verboff
A: Eine!!!!br
Die beiden Dial-In's können von Anrufen für Telefon/Analogmodem aufgrund
der anderen Dienstekennung ("digital, Daten") unterschieden werden.
Bei geeigneter Konfiguration können auch die beiden Dial-In's auseinander
gehalten werden (siehe dazu die Frage "Kann ich auf nur !u1einer!u0 MSN
sowohl Kunde mit einem getty (Modememulation) als auch welche mit dem
Netzwerk bedienen?" im Abschnitt "Dial-In").!br
Zur parallelen Verwendung von Telefon und Analogmodem hatte Gernot Zander
<hifi@scorpio.in-berlin.de> am 11. Dez 1996 folgenden Tip parat:!br
Stelle Fax-Getty auf z.B. 10mal Klingeln. Wenn du abhebst und hörst Fax
[oder ein Modem], schickst du mgetty ein USR1 (kill -USR1 mgetty-pid), und
es geht sofort ran.!br
Wenn die Dose richtig beschaltet ist, nimmt er dir dabei das Gespräch weg.
(Also TAE NFN und die originalen Kabel, kann aber sein, daß dir die
Wahlsperre dazwischenkommt, wenn du ein Modem mit einer solchen hast und
den Abstellbefehl nicht kennst.)!br
[Bei einem geeigneten Modem kann mgetty sowohl als Anrufbeantworter, als
auch als Fax-Gerät, als auch als Daten-Modem fungieren - die Red.]!br
Oder: Du hast eine TK-Anlage, mit der kannst du auch weitergeben. Du kannst
meistens sogar eine hinter die andere hängen (falls ihr keine analogen
Ports mehr übrighabt).!br
[Trotzdem lebt man natürlich ruhiger, wenn man Telefon und Analogmodem
jeweils eine eigene MSN zuweist - die ideale Lösung mit lediglich zwei
MSN - die Red.]
Q: Kann ich folgende Dienste auf *DERSELBEN* MSN machen:
!verbon
- Telefon (Sprache)
- VBOX (Sprache, klar)
- X.75-Login (mgetty /dev/ttyI?)
- IP-Interface für IP-Verbindungen zu anderen Rechnern?
!verboff
A: Das geht nach demselben Prinzip wie bei der letzten Frage. Die einzige
Änderung ist die Verwendung von VBOX an Stelle des Analogmodems. VBOX
kooperiert jedoch automatisch mit dem Telefon. VBOX nimmt erst nach dem
x-ten Klingeln (je nach Konfiguration) ab.
Q: Welches ist meine MSN?
A: Die eigene MSN wird einem vom der eigenen Telefongesellschaft mitgeteilt.
Es ist die eigene Telefonnummer. Zu den Feinheiten bei der Konfiguration
von isdn4linux siehe die nachfolgenden Fragen sowie das Kapitel "Nationale
Besonderheiten" (letzteres schließt auch 1TR6 in Deutschland ein).
Q: Wie muß ich meine MSN der Modememulation angeben?
A: Für die Modememulation wird für den Befehl AT&E<msn> die MSN !u1ohne
jegliche Vorwahl!u0 benötigt (Niederlande ausgenommen).
Q: Wie muß ich meine eigene MSN bei syncPPP angeben?
A: Die MSN wird für den Netzbetrieb mit dem Befehl "isdnctrl eaz <interface>"
!u1ohne jegliche Vorwahl!u0 angegeben (Niederlande ausgenommen).!br
Q: Wo muß ich meine eigene MSN eintragen, damit ich mich testweise mit syncPPP
selbst anrufen kann?
A: Will man sich selbst testweise anrufen, dann muß man die MSN sowohl als
ausgehende, als auch als eingehende Nummer angeben.!br
Die Konfiguration der !i1ausgehenden!i0 Nummer erfolgt mit "isdnctrl
addphone out" - es muß die MSN !u1mit Vorwahl!u0 (inklusive der "0" am
Anfang der Vorwahl - dies braucht die deutschen Telekom zum korrekten
Wählen). Bei "isdnctrl delphone" muß man analog verfahren.!br
Die Konfiguration der !i1eingehenden!i0 Nummer erfolgt mit "isdnctrl
addphone in". Die MSN muß in der Form eingetragen werden, in der sie bei
einem Anruf übertragen wird. Bei der deutschen Telekom ist das die MSN
!u1mit Vorwahl!u0, jedoch !u1ohne die führende "0"!u0 am Anfang der
Vorwahl. Bei "isdnctrl delphone" ist analog zu verfahren.!br
Hier kann es nationale Abweichungen geben (siehe Kapitel Nationale
Besonderheiten). Siehe auch die nachstehende Frage für den Zweifelsfall.
Q: Wie kann ich ermitteln, wie meine Telefongesellschaft mir meine MSN
übermittelt?
A: Die übermittelte MSN kann einfach ermittelt werden indem man sich selbst
anruft (z.B. per Telefon). In den Log-Files sollte dann ein Eintrag
nach dem Muster "isdn_tty: call from XXX -> YYY ignored" auftauchen
(dazu muß natürlich schon der ISDN-Teil im Kernel aktiviert sein).
Q: Wie kann ich die von mir beim Dial-In-Betrieb benötigten MSN's minimieren?
A: Siehe dazu die entsprechende Frage im Abschnitt Dial-In.
Q: Wo stelle ich im Cisco die zu verwendende MSN ein ?
A: Mit "isdn answer1 :MSN" bzw. answer2; z.B. stellt "isdn answer1 :12345" die
MSN auf 12345 ein.
Q: Warum bekomme ich von der deutschen Telekom nicht immer die Telefonnummer
eines Anrufers ("Caller Id") übermittelt?
A: Aus Datenschutzgründen wird die Telefonnummer nicht bei Anrufen aus dem
analogen Netz übermittelt. Es sei denn, Sie erlauben der Telekom
ausdrücklich die Übermittlung Ihrer Nummer (kostet nichts) und sind an
einer digitalen Vermittlungstelle angeschlossen.!br
Wer einen ISDN-Anschluß hat, muß dagegen der Übermittlung seiner Nummer
ausdrücklich widersprechen - oder beantragen, daß er über die Übermittlung
seiner Nummer fallweise entscheiden kann (per ISDN-Telefon; fallweise
Unterdrückung [CLIR] ist inzwischen kostenlos, fallweise Übermittlung kostet
extra). Es fällt der Telekom jedoch offenbar !u1sehr!u0 schwer, das schon
im ersten Anlauf richtig zu konfigurieren. Wer auf die Übermittlung der
Caller Id angewiesen ist, sollte genau überprüfen, ob auch alles korrekt
eingestellt wurde.
Q: Bekomme ich die Caller Id bei Anrufen aus dem Ausland übermittelt
(deutsche Telekom)?
A: Ja, bei Anrufen aus Ländern, die es mit der Rufnummerübermittlung nicht so
eng sehen wie wir in Deutschland (z.B. USA, Kanada).
Q: Ich habe gehört, es werden eigentlich zwei Caller Id's übermittelt?
A: Das stimmt, es wird sowohl eine "User-Provided, not screened", als auch
eine "Network-Provided" (die ist von der Telefongesellschaft)
übermittelt.!br
Gernot Zander <hifi@scorpio.in-berlin.de> schrieb dazu am 15. Dez 1996:
!verbon
Die erste ist von der Anlage mitgegeben und ungeprüft.
Die zweite ist die von der Telekom vergebene.
Ich hatte hier auch schon solche Anrufe, wo ein Siemens-
Mitabeiter aus München hier anrief und mit einer ellenlangen
Nummer kam, deren Vorwahl 030 (Berlin) war.
Ich rief daraufhin die Telekom an, was das denn solle, und
die wußten auch erst nichts, dann fanden sie wen kompetentes,
der sagte, daß das ginge.
!verboff
Zum "no screening" schrieb noch Ralf G. R. Bergs
<rabe@Informatik.RWTH-Aachen.de> am 16. Dez 1996:
!verbon
"CLIP no screening". Der Anrufer hat das (kostenpflichtige und nur am
Komfort-Anlagenanschluss(!) verfügbare) Feature, welches ihm die
Übertragung einer beliebigen Caller ID erlaubt.
!verboff
!3Teles-Treiber
!old
Q: Ich benutze SETUP.EXE unter DOS, um meine Teles/Creatix mit Memory xxxxx
und IRQ yy zu konfigurieren. Wie stelle ich das unter isdn4linux ein?
A: Die Einstellungen kann man als Kernelparameter bzw. als Modulparameter
übergeben. Eine feste Eincompilierung ist nicht erforderlich.
Manchmal allerdings macht man es doch, nämlich wenn Software-
unverträglichkeiten auftreten oder wenn mehrere Teles-Karten in einem
Rechner betrieben werden sollen. In diesem Falle editiert man die
Datei /usr/src/linux/drivers/isdn/teles/config.c und trägt die
Parameter direkt ein. Siehe Kommentar in dieser Datei.
Q: Ich bin verwirrt: laut Dokumentation ist meine Teles-Karte auf die
IO-Adresse 0x180 eingestellt. In Linux (und auch manchen Windowsprogrammen
wird jedoch angezeigt, daß sie auf 0xd80 liegt?
A: Die Karte belegt beide IO-Adressen! Karsten Keil
<keil@temic-ech.spacenet.de> schrieb hierzu am 3. Jan 1997:
!verbon
Die eigentlich benutzten Adressen sind:
isac 980
hscx 180/580
cfg d80
Zur Verwirrung kommt es aufgrund eines Mißverständnisses: Teles
gibt die HSCX0-Adresse als Referenz an, während der alte Teles-Treiber
die cfg-Adresse benötigt. Da die Benutzer dadurch verwirrt waren,
können die beiden Treiber nun beide Adressen handhaben (und die
Benutzer sind dadurch erneut verwirrt ;-))
!verboff
!old
Q: Beim Compilieren des Telestreibers bekomme ich eine Fehlermeldung der
Art: too many arguments to function `__get_free_pages_R5243d78b'
A: Ab einer bestimmten Version der 1.3.x Kernels wurde für die Kernel-
Funktion get_free_pages der Aufruf geändert. Wenn die Meldung erscheint,
wird ein älterer Kernel eingesetzt. In diesem Falle ist in der Datei
teles/teles.h die Zeile
!verbon
#define NEW_GET_FREE_PAGES
!verboff
auszukommentieren:
!verbon
/* #define NEW_GET_FREE_PAGES */
!verboff
!old
Q: Ich benutze Kernel 1.3.x, der Telestreiber compiliert ohne Fehler durch,
in config.c sind alle Daten richtig eingetragen, trotzdem funktioniert
der Treiber nicht.
A: Ab einer bestimmten Version der 1.3.x Kernels wurden die Timer im Kernel
geändert. Möglicherweise wird hier ein älterer Kernel eingesetzt. Man
kommentiere in der Datei teles/teles.h die Zeile #define NEW_TIMERS aus:
!verbon
/* #define NEW_TIMERS */
!verboff
!old
Q: Ist es möglich, mehrere Teles-Karten in einem Rechner zu betreiben?
A: Ja, das ist möglich. In der Datei teles/config.c müssen die Daten der
anderen Teles-Karten eingetragen werden:
!verbon
struct IsdnCard cards[]={
{ (byte *)0xd0000,11,0xd00,NULL } ,
/* 1. Karte */ { (byte *)0xd8000,10,0xe80,NULL } ,
/* 2. Karte */ ...
/* u.s.w. */
};
!verboff
Am 6. Okt 1996 schlug Christian Kratzer <ck@toplink.net> vor (Zeilen, die
mit "io=" anfangen, müssen mit der vorherstehenden zusammengefaßt werden):
!verbon
# load modules
/sbin/modprobe isdn.o
echo "teles0 - Teles S0/16.2"
/sbin/insmod $MODPATH/misc/teles.o -o teles0 teles_id=teles0
io=0xd0000,5,0xd80,2
echo "teles1 - Teles S0/16.2"
/sbin/insmod $MODPATH/misc/teles.o -o teles1 teles_id=teles1
io=0xd2000,9,0xe80,2
echo "teles2 - Teles S0/16.2"
/sbin/insmod $MODPATH/misc/teles.o -o teles2 teles_id=teles2
io=0xd4000,12,0xf80,2
/sbin/lsmod | grep teles > /dev/null
!verboff
!old
Q: Woran erkenne ich, daß meine Teles-Karte (oder eine kompatible Karte)
korrekt erkannt wurde?
A: Beim Booten muß eine Meldung wie "kernel: HSCX version A:5 B:5" sowie
"kernel: channels 2" in /var/log/messages eingetragen werden. Auch
"A:4 B:4" ist o.k. Alle anderen Werten (insbesondere A:0 B:0 oder A:f B:f)
zeigen an, daß die Karte nicht richtig erkannt wurde.
Siehe auch unter im Abschnitt "Teles" im Kapitel "Troubleshooting".
Q: Wo kann ich mich bei Teles beschweren?
A: Unter der Emailadresse "vertrieb@teles.de". Die haben dort auch eine
WWW-Seite: !link http://www.teles.de/;!br
Karl Heinz Kremer <khk@specht.stuttgart.netsurf.de> ergänzte
am 2. Jan 1997:
!verbon
Wenn Du was über Teles's Geschäftspraktiken lesen willst, schau dir
!link http://www.inx.de/~chris/isdn.htm; an.
!verboff
!3HiSax-Treiber
Q: Wo gibt es den HiSax-Treiber?
A: Bei !link ftp://ftp.franken.de/pub/isdn4linux/HiSax;.
!old
Q: Welche Version ist aktuell?
A: Version 1.4.
!old
Q: Was kann der HiSax besser als der Original-Telestreiber?
A: Karsten schrieb dem FAQ-Team am 14. Okt 1996:
!verbon
Bei HiSax wird die Hardware und das IRQ-Verhalten gecheckt, so daß der
Treiber nur dann geladen wird, wenn er Zugriff auf die Register hat und
Interrupts generiert werden. ALSO:
2*Laden erledigt
HSCX version 0 oder F erledigt
BUSY bei minicom u.ä. nur noch :
* REAL BUSY
* keine MSN/EAZ
* Kabel/Leitungs Probleme
!verboff
Na - das ist doch was, oder?
!old
Q: Wie baut man den HiSax ein?
A: Karsten Keil <keil@temic-ech.spacenet.de> beschreibt das so:
!verbon
Es kann nie schaden, die orginal Kernel-Sources erst mal zu sichern.
Dann ins /usr/src/linux (da sollte sich der aktuelle Source befinden)
gehen. Jetzt der Patch selbst:
zcat HiSax_1.1.patch.gz |patch -p1 >& /tmp/HiSax.log
Das -p1 ist sehr wichtig, da sonst alle files aus neuen directories in
/usr/src/linux landen.
Dann /tmp/HiSax.log nach errors/warnings/rejects durchsuchen, wenn
welche auftreten die entsprechenden files anschauen und gegebenfalls
von Hand korrigieren.
!verboff
Uwe Bonnes <bon@elektron.ikp.physik.th-darmstadt.de> fügte hinzu:
!verbon
Wer Gnu Patch besitzt, kann auch "... |patch -s -p1 " verwenden. Dann
werden !u1nur!u0 die Fehler berichtet. Und wer ein log will, kann auch
"... |patch -s -p1 | tee /tmp/HiSax.log" machen. Damit bekommt man
zusätzlich zur Bildschirmausgabe ein Logfile.
!verboff
Hinweis: Inzwischen gibt es neuere Versionen des HiSax.
!old
Q: Gibt es Patches zum HiSax-Treiber?
A: Ja. Karsten <keil@temic-ech.spacenet.de> schrieb dazu am 15. Okt 1996:
!verbon
Die Patches werde ich bis zur nächsten Version mit Buchstaben
"numerieren" und auch auf ftp ablegen.
!verboff
Mit ftp ist !link ftp://ftp.franken.de/pub/isdn4linux/HiSax; gemeint.
!old
Q: Was hat es mit dem Vermerk: "Known Bugs: incoming calls are only
delivered, if channel == B-channel (same on teles)" auf sich?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb am 14. Okt 1996:
!verbon
1. Die o.g. Aussage ist nicht ganz korrekt:
if ((channel &1)+1 == B-channel )
2. Ich beschreib den Bug mal anders rum: Wenn gerade B-channel 1 von
einem anderen ISDN Gerät belegt ist und i4l wählt raus bekommt der
logische channel 0 von der VST den B-channel 2 zugewiesen.
---> geht
Das andere ISDN Gerät hängt auf.
Es kommt zusätzlich ein Ruf für i4l rein,natürlich für B-channel 1.
Da aber channel 0 belegt ist und es eine feste Zuordnung
B1->chan 0,2,4...
B2->chan 1,3,5... gibt wird der call nicht angenommen.
(chan 2,3 gibt es bei 2 Karten usw.)
Das ist zwar relativ selten kommt aber vor und wird demnächst gefixed
(wenn mir was Geniales einfällt).
!verboff
Daß dieser Fall eintritt, kann anhand der modehscx-Meldungen (z.B.
"modehscx hscx 0 mode 2 ichan 1") mitverfolgt werden. hscx 0,1 bedeutet
welcher HSCX kanal benutzt wird. Mode ist mode (2). ichan 1 ist welcher
B Kanal - 1.!br
[Der Bug wurde mittlerweile in HiSax 1.2 gefixt - die Red.]
!old
Q: Meine ELSA-Karte hat 2 LEDs, die Lichtorgel spielen. Was hat das zu
bedeuten?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb am 14. Okt 1996:
!verbon
Leerlauf l1 ist down
=> beide LED blinken ca. 1s an 1s aus.
l1 ist aktiviert (auch durch Telefon oder ä.)
=> Wechselblinken 0.5 gelb 0.5 grün
Betrieb
=> 1.5 an 0.5 aus
grün HSCX A aktiv
gelb HSCX B aktiv
Daß die ständig blinken hat die Ursache, das ich so bei der
Entwicklung sofort gesehen habe, daß die Karte hängt.
!verboff
!3ICN-Treiber
!old
Q: Wo gibt es die ICN-Karte zu kaufen?
A:
!verbon
Thinking Objects Software GmbH
Obere Heerbergstr. 17
97078 Würzburg
Tel: 0931-2877950
Fax: 0931-2877951
email isdn-support@think.de
WWW !link http://www.think.de/;
!verboff
!old
Q: Wo bekomme ich die neueste Firmware für meine ICN?
A: Torsten Hentschel <Torsten.Hentschel@DInet.de> schrieb am 11. Okt 1996:!br
Die neueste Firmware sollte unter!br
!link ftp://ftp.think.de/pub/isdn4linux/firmware/;!br
oder!br
!link http://www.think.de;!br
zu finden sein.
!old
Q: Ist es möglich, mehrere ICN-Karten in einem Rechner zu betreiben?
A: Ja, ab Kernel 2.0.0 hat sich jedoch das Konfigurations-Schema geändert:
Bei älteren Kernels mußte für jede Karte ein eigenes ICN-Modul
geladen werden. Bei zwei Karten sah das z.B. so aus:
!verbon
/sbin/insmod -m /lib/modules/1.2.13/misc/isdn.o >/etc/isdn.map
/sbin/insmod -m /lib/modules/1.2.13/misc/icn.o >/etc/icn.map
/sbin/insmod -m -o icn2 /lib/modules/1.2.13/misc/icn.o >/etc/icn2.map
!verboff
Ab Kernel 2.0.0 ist nun für alle ICN-Karten nur noch ein Treiber
nötig. ACHTUNG: 2.0.0 selber ist buggy, am besten nimmt man 2.0.18 oder
neuer.!br
Hier ein Beispiel für eine ICN-2B und zwei ICN-4B:
!verbon
/sbin/insmod -m /lib/modules/`uname -r`/misc/isdn.o > /etc/isdn.map
#
# ICN-2B, default port und mem (0x320, 0xd0000)
#
/sbin/insmod -m /lib/modules/`uname
-r`/misc/icn.o icn_id=icn0 > /etc/icn.map
#
# ICN-4B hinzufügen auf port 0x328
#
/sbin/icnctrl add 0x328 icn1 icn2
#
# Noch eine ICN-4B auf port 0x300
#
/sbin/icnctrl add 0x300 icn3 icn4
#
# Firmware laden
# ICN-2B: 1TR6
# 1. ICN-4B, beide S0 EDSS1
# 2. ICN-4B, 1. S0: 1TR6, 2. S0: EDSS1
#
/sbin/icnctrl -d icn0
load /etc/loadpg.bin /etc/pc_1t_ca.bin
/sbin/icnctrl -d icn1
load /etc/loadpg.bin /etc/pc_eu_ca.bin /etc/pc_eu_ca.bin
/sbin/icnctrl -d icn3
load /etc/loadpg.bin /etc/pc_1t_ca.bin /etc/pc_eu_ca.bin
!verboff
(Zeilen, die mit "load" oder "-r" anfangen, müssen ans Ende der vorhergehen-
den Zeile angehängt werden!)
!old
Q: Meine ICN 4B wird nur als ICN 2B erkannt. Welche Syntax hat der Aufruf von
insmod zum Laden von icn.o für die ICN 4B?
A: dietmar <dietmar@highway.bertelsmann.de> schrieb am 8. Okt 1996:
!verbon
Ich verwende folgendes Skript um die Karte zu "starten":
#!/bin/sh
#
# load modules
/sbin/modprobe isdn.o
/sbin/modprobe icn.o icn_id=icn0 icn_id2=icn2
# ^^^^^^^^^^^^
# Wichtig hierbei ist die Angabe von
# icn_id2. Hieran erkennt der Treiber,
# daß eine 4B verwendet werden soll.
#
# download firmload
cd /usr/src/isdn4k-utils-1.3.97/icn
icnctrl load download/loadpg.bin download/pc_1t_ca.bin
download/pc_1t_ca.bin
/sbin/isdnctrl verbose 2
!verboff
(die Zeile, die mit "download" anfängt, muß der vorhergehenden zugeschlagen
werden!)!br
Jochen Wiedmann <Jochen.Wiedmann@Neckar-Alb.de> schrieb am 8. Okt 1996:
!verbon
modprobe icn icn_id=line0 icn_id2=line1 icnctrl io 0xd0000 0x340
icnctrl add 0x340 line0 line1
icnctrl load /sw/linux-i386/isdn4kutils-2.0.0/lib/loadpg.bin
/sw/linux-i386/isdn4kutils-2.0.0/lib/pc_1t_ca.bin
/sw/linux-i386/isdn4kutils-2.0.0/lib/pc_1t_ca.bin
!verboff
(die Zeilen, die mit "/sw" anfangen, müssen der vorhergehenden angehängt
werden!)!br
Torsten Hentschel <Torsten.Hentschel@DInet.de> schrieb noch am 9. Jan
1997:!br
Wenn es nicht hilft, mit anderen Adressen zu experimentieren
(Beispiel portbase=0x300 membase=0xd0000) und auch die
Überprüfung des Sitzes der Karte (eventuell anderer
Slot) nix bringt, sollte die Karte als defekt betrachtet
werden.!br
Es ist aber recht häufig, daß die langen ICN/4B-Karten
schwer in enge Gehaeuse passen: Einmal sind sie lang
und zum anderen haben sie einen recht "breiten" Steg
für den Slot, der sie leicht wieder aus dem Slot springen
läßt oder aber das Board runterdrückt, anstatt daß der
Steg in den Slot hineinrutscht. Deshalb: Sichtprüfung,
daß die Kontakte der Karte alle gleich weit im Slot
verschwinden.!br
Und Herbert Rosmanith <herp@wildsau.idv.uni-linz.ac.at> ergänzte am 10. Jan
1997:!br
Die Karte ist hardwaremäßig per Default auf 0x300 eingestellt. Die Software
nimmt allerdings per Default 0x320 an! Das ist etwas inkonsequent, IMO.
Vielleicht bist Du ja auf diese Verwirrtaktik reingefallen :-)!br
Am gleichen Tag ergänzte noch Thomas Bogendörfer
<tsbogend@alpha.franken.de>:
Membase der 4B muß auf einer 32K Grenze liegen. Also 0xd0000 oder 0xd8000
verwenden.
!old
Q: Wofür ist "lanx75i.bin" im ICN-Verzeichnis?
A: Die "lanx75i.bin" ist stark veraltet. Früher wurde bei EDSS1 nur HDLC
unterstützt. lanx75i.bin war die erste Test-Version der Firmware, die
auch X.75 unterstützte. Wenn die Firmware geladen wird, so wird deren
Version im kernel-syslog protokolliert. Für die aktuelle Firmware
sollten dabei folgende Strings angezeigt werden:
!verbon
Für EDSS1:
DRV1.11EC-Q.931-CAPI-CNS-BETA-15.07.95,BRV2.3
Für 1TR6:
DRV1.01TC-1TR6-CAPI-CNS-BETA-03.05.95,BRV2.3
!verboff
!3Zusammenarbeit mit anderen Gegenstellen
!old
Q: Welche Einstellungen brauchen ISPA und Konsorten (DOS, Windows), um mit
isdn4linux in der Standardeinstellung zusammenzuarbeiten?
A: Folgende Konfigurationen sind möglich (diese gelten auch für die
anderen Treiber von H. Hanewinkel, also CINDI, CANDI, WISPA -
die findest Du via !link http://www.informatik.uni-bremen.de/~henker/dank;):
!verbon
Auf i4l-Seite Auf ISPA-Seite
====================================================
isdnctrl l2_prot isdn0 hdlc \
isdnctrl l3_prot isdn0 trans > -h0
isdnctrl encap isdn0 rawip /
----------------------------------------------------
isdnctrl l2_prot isdn0 hdlc \
isdnctrl l3_prot isdn0 trans > -h1
isdnctrl encap isdn0 uihdlc /
----------------------------------------------------
isdnctrl l2_prot isdn0 x75i \
isdnctrl l3_prot isdn0 trans > -l0
isdnctrl encap isdn0 rawip /
----------------------------------------------------
isdnctrl l2_prot isdn0 x75i \
isdnctrl l3_prot isdn0 trans > -l1
isdnctrl encap isdn0 uihdlc /
----------------------------------------------------
!verboff
Am wenigsten Probleme bereitet meist -h0.
!old
Q: Was muß ich beachten, um mit Windows95 eine Verbindung aufzubauen?
A: Torsten Krueger <torsten@nrw-online.de> schrieb am 5. Okt 1996, daß auf
beiden Seiten die VJ-(bzw. "Header"-)Komprimierung ausgeschaltet sein muß.
Windows95 reagiert äußerst empfindlich, wenn diese Option von
isdn4linux zurückgewiesen wird.
!old
Q: Kann ich mit Windows95 nur mit syncPPP eine Verbindung zu isdn4linux
aufbauen?
A: Frank-Christian Kruegel <fchk@gigabyte.ohz.north.de> schrieb am 13. Okt
1996:
!verbon
DFÜ-Netzwerk: ja. Es könnte noch eine andere Möglichkeit mit CINDI,
WISPA u.ä. von Herbert Hahnewinkel (Kosten ca 80 DM pro Lizenz, und
jeder User braucht dann eine) geben, aber das Geld habe ich nicht
ausgegeben.
!verboff
!old
Q: Ein Windows95-Nutzer mit einer Fritz!-Card hat nur sehr schlechte
Transferraten beim Connect mit isdn4linux - was kann man da tun?
A: Sven Engelhardt <sven@sik.de> schrieb am 13. Okt 1996:
!verbon
AVMPort (Capi-Modememulation für Win' 95 verwenden, wichtig: auf der
Win 0.95 "Anmelden am Netzwerk" einschalten.
!verboff
!old
Q: Wo finde ich in Windows95 die Einstellung, damit ich ein Terminalfenster
beim Einloggen bekomme?
A: Sven Engelhardt <sven@sik.de> schrieb am 13. Okt 1996:
!verbon
Systemsteuerung/Software/Diskette CD-ROM Admin/Apptools/Dscript
- Scriptverwaltung für DFÜ-Netzwerke (siehe nach der Installation
Start/Programme/Zubehör)
Damit das Script was empfängt, bei ISDN Echo einschalten. Bei AVMPort
geht das mit E1 im Initstring.
!verboff
[Achtung: bei der Verwendung von ipppd muß das Terminalfenster
!b1ausgeschaltet!b0 sein - die Red.]
!old
Q: Ich möchte gern Daten mit einem Macintosh (Leonardokarte) austauschen,
was muß ich bzw. der Macbetreiber beachten?
A: Markus Reicher <a9003436@unet.univie.ac.at>:
!verbon
Wenn Du den Mac anrufst, stellt er sich auf das Protokoll (X.75 oder
HDLC) ein. Wenn er Dich anruft, muß er das Protokoll explizit angeben
(z.B. durch Anfügen eines "X" für X.75) an die Rufnummer - sonst ruft
der Mac womöglich mit dem Leonardo-Protokoll an.
!verboff
Q: Ein Macintosh mit Leonardokarte versucht anzurufen, und will chap md5
aushandeln. Wie kann ich ihn auf CHAP/PAP umschalten?
A: Axel Jindra <jindra@uni-koblenz.de> schrieb hierzu am 10. Jan 1997:!br
Gar nicht. Er soll LeoPort nehmen (ist bei der Karte immer dabei) und den
CTB-Port umlegen auf die ISDN-Karte. Dann mit FreePPP 2.5v2
<http://www.rockstar.com> die Leo als Modem einstellen und FreePPP ganz
normal konfigurieren. Da kann dann auch PAP/CHAP eingestellt werden.
!old
Q: Wie arbeitet isdn4linux mit einer Cisco (HDLC) auf der Gegenstelle
zusammen?
A: Auf dem Cisco-Router müssen die "keep alive" Pakete abgeschaltet werden.
isdn4linux muß auf HDLC, transparent mit Cisco-Encapsulation konfiguriert
werden:
!verbon
isdnctrl l2_prot <interface> hdlc
isdnctrl l3_prot <interface> trans
isdnctrl encap <interface> cisco-h
!verboff
<interface> ist der Name des IP-Interfaces, das zuvor mit
!verbon
isdnctrl addif <interface>
!verboff
angelegt werden muß (z.B. isdn0).!br
[Alternativ kann man natürlich auch PPP als Protokoll verwenden - die Red.]
!old
Q: Meine Cisco hat einen Bug - welche IOS ist zu empfehlen?
A: Jochen Wiedmann <Jochen.Wiedmann@Neckar-Alb.de> schrieb hierzu in 1996:
!verbon
Seit Cisco-IOS 11.0.x (x = 7 ist das einzige, was ich kenne) habe ich
keine Probleme mehr mit Cisco <-> HDLC <-> Nicht-Cisco. Das gilt
sowohl für netgw als auch i4l als auch Banzai! an der Gegenstelle,
wobei allerdings die jeweiligen speziellen Cisco-HDLC-Optionen wichtig
sind.
!verboff
!old
Q: Beim Einwählen bei einer ASCEND kostet es auch dann eine Einheit, wenn
ich ein "BUSY" erhalte?
A: Winfried Haug <haug@seicom.net> schrieb dazu am 12. Okt 1996:
!verbon
Wir hatten bis gestern hier Probleme mit AVM+W95 und Mini-Port-Treiber
(PPP m. PAP). Der Ascend hat abgenommen und 3-4 sec später aufgelegt.
Im Ascend Log stand nur Call refused, was aber nicht stimmte, da der
Ascend abgehoben hat...
Durch eine neue Firmware auf dem Ascend (4.6C+) statt der 4.6B+p2 ist
das Problem wohl weg.
Da wir davor ein anderes RACK hatten (von ITK) welches dieses Verhalten
beim Kunden !u1nicht!u0 zeigte, gehe ich mal davon aus, daß es der
Ascend war. Neue Firmware für den Ascend gibts unter
!link ftp://ftp.ascend.com/;
oder
!link ftp://ftp.ascend.de/;
wobei man hier höllisch aufpassen muß, daß man das richtige Image
nimmt :-)
!verboff
Q: Gibt es eine Mailingliste zur Ascend?
A: Es gibt eine entsprechende Mailingliste an der Uni Hannover.
Sie lautet: ascend-users-de@uni-hannover.de
Verwaltet wird die Liste per LISTSERV, d.h. Anmeldungen gehen an
LISTSERV@uni-hannover.de mit folgender Zeile im !b1Mail-Body!b0:
!verbon
subscribe [meine mail-alias-adresse] ascend-users-de
!verboff
oder einfach:
!verbon
subscribe ascend-users-de
!verboff
Q: Wie schalte ich Raw-IP auf der Ascend Max mit Radius ein?
A: "Framed-Protocol" muß auf "EURAW" eingestellt werden. Für die Autorisierung
per Caller Id muß "authentication-type = ascend-clid" eingestellt werden.
Thomas Stinner <Thomas.Stinner@pop-siegen.de> schrieb uns dazu am 9.Mar.97:
!verbon
Kann sein, dass das mit dem Authentication Type so funktioniert, ich
nehme für sowas jedoch als Password "Ascend-CLID".
Ein Eintrag im users-file muß folgendermaßen aufgebaut sein:
69123456 Password="Ascend-CLID"
User-Name = "Username_fuer_Abrechnung"
User-Service = Framed-User
Also als Username die Caller-ID, als Password "Ascend-CLID".
!verboff
Q: Wie schalte ich die Encapsulation "uihdlc" auf dem Max (eine Ascend) mit
Radius ein?
A: "Framed-Protocol" muß auf "EUUI" eingestellt werden.
!old
Q: Welche Einstellungen braucht ein ELink, um mit isdn4linux
zusammenzuarbeiten?
A: In der Mailingliste gab Daniel Moeller (danny@rsun.lfn.unterland.de)
dazu folgenden Hinweis:
!verbon
[...] Ich hab hier mehrmals täglich saubere Verbindungen zu einem
EL310, ich polle per ifcico FIDO darüber. Hier mal die Config des
Elink: ati Elink 310 Version 1.36 OK ati4
Baudrate: 115k2,N
SIN unbekannt: Ruf annehmen
Anschaltung: EDSS1
SIN ungleich &B: Ruf annehmen
Betriebsart: X.75
SIN gesendet: neutral
Mehrfachrufnummer: 980031
E1 M1 Q0 V1 X2 &B049 &C1 &D2 &R0 &S1
\A3 \J0 \N3 \Q3 \V1 %A013 %C1 %F1 FCLASS=000
S00=000 S01=000 S02=043 S03=013
S04=010 S05=008 S06=002 S07=040
S08=003 S09=000 S10=007 S11=000
S12=050 S13=01010000B S14=10011010B S15=00001110B
S16=10110011B S17=049 S18=013 S19=003
S20=000 S21=00000100B S22=000 S23=006
S24=120 S25=128 S26=016 S27=002
S28=003 S29=128 S30=000 S31=000
OK
!verboff
!old
Q: Wie kann ich Internet über T-Online mit i4l machen?
A: Rainer May <r_may@kahvi.desaster.heide.de> beschrieb das so:
!verbon
(dasselbe funktioniert natürlich auch per Modem. Nur sieht da die
Initialisierungs-Sequenz natürlich anders aus.)
Ad 1: Man besorge sich diald. Keine Ahnung, wo man das Paket
findet - Archie fragen (diald ist dazu gedacht, eine
Defaultroute auf eine noch garnicht physikalisch be-
stehende SLIP oder CSLIP-Verbindung zu legen; werden
dann Pakete an dieses Pseudo-Interface geschickt, stellt
diald die (C)SLIP-Verbindung her; welche Pakete einen
Verbindungsaufbau auslösen, und wann/wie die Verbindung
wieder abgebaut wird, ist alles konfigurierbar.) Dann
installiere man das Binary und die Config-Files (man
kann die im Paket enthaltenen Muster so übernehmen;
nur, wenn z.B. ein PING einen Verbindungsaufbau bewirken
soll, muß man minimal ändern; ggf. kann man auch Timeouts
anpassen - halt etwas herumprobieren).
Ad 2: Man nehme einen Kernel mit integriertem SLIP/CSLIP oder
SLIP/CSLIP als Module (die natürlich geladen sein müssen)
Ad 3: Isdn4Linux muß natürlich auch installiert sein; wichtig
ist die Modem-Emulation (ttyIx).
Ad 4: Man starte den diald, z.B. mit folgendem Script (heißt bei
mir /etc/rc.d/rc.diald.t-online):
/usr/sbin/diald /dev/ttyI2 -m aslip local 192.168.90.9
remote 192.168.90.1 defaultroute dynamic modem crtscts
lock speed 38400 connect "chat -v -f /etc/diald/t-online"
mtu 1500 dslip-mode local-remote
(sinnvollerweise schreibt man das in !u1eine!u0 Zeile :-)
Ad 5: Man erzeuge das Script, das bei mir "etc/diald/t-online"
heißt. Sieht ungefähr so aus:
TIMEOUT 30
ABORT "NO CARRIER"
ABORT ERROR
ABORT "NO DIALTONE"
ABORT BUSY
ABORT "NO ANSWER"
ABORT "NO MSN/EAZ"
"" ATZ
OK AT&B2000&E<MyMSN>&X1
OK ATD01910
CONNECT .
"[?25h" <ZugangsKennung>\c
"[?25h" ""
"[?25h" ""
"[?25h" <passwort>
"[?25h" *53#\c
"[?25h" *190144100#\c
"[?25h" 19\c
"STATUS OK" LIN
"" "OK"
Darin müssen natürlich einige "Platzhalter" ersetzt werden:
<MyMSN> ist die MSN, mit der man in die weite Welt hinauswill.
<Zugangskennung>: Das meist mit "000..." beginnende Zahlenmonster,
welches die Telekom einem genannt hat.
<passwort>: Das Zugangspasswort eben
In obigem Musterscript wird davon ausgegangen, daß Anschluß-
und Mitbenutzernummer dem auf der Login-Seite vorgegebenem
Default entsprechen. Ist das nicht der Fall, muß man halt
die beiden Zeilen vor "[?25h" <passwort> entsprechend anpassen
(gibt man eine Mitbenutzernummer der Art "0003" an, sollte z.B.
die Zeile !u1vor!u0 "[?25h" <passwort> lauten:
"[?25h" 0003\c
(denn das Eingabefeld ist nach "0003" voll, es darf kein CR mehr
folgen))
Wenn der diald läuft, sollte man urplötzlich über ein Interface
"sl0" verfügen (ifconfig fragen), und die Defaultroute sollte genau
darauf zeigen (route -n gibt Aufschluß; ohne "-n" würde "route"
versuchen, die Phantasie-IP-Adressen, die man anfangs angegeben hat
(und die später von "echten" überschrieben werden) aufzulösen - muß
ja nicht sein).
Oh, wer nicht nur mit IP-Adressen arbeitet, sondern erfolgreich auch
z.B. "ftp stp.sunsite.edu" probieren will, sollte natürlich in
/etc/resolv.conf einen Nameserver eingetragen haben (der/einer der
Telekom hat die IP-Nummer 194.25.2.129).
So, und nun Ftp, Telnet, Netscape, wasweißich starten. Das war's
Übrigens: Der Diald schreibt Romane ins Syslog. Man kann den gesamten
Login-Vorgang da nachlesen, auch wenn's chaotisch aussieht. Klappt ein
Request nicht, sollte man den diald mit "kill" erwürgen (Routen werden
automatisch gelöscht) und im Syslog nachschauen. Da können Sachen
stehen wie "Zur Zeit keine verbindung möglich" - dann ist das Internet-
Gateway der Telekom down. Oder man stellt fest, daß irgendwas mit dem
Login nicht klappte - Vorsicht: Nach drei Fehl- Logins muß der Zugang
von der Telekom "entsperrt" werden; das kann man per Telefon oder
direkt von BTX aus erbitten (einfach per Terminalprogramm, z.B. seyon
oder minicom, 01910 wählen, langsam per Hand durch den Login-Screen
gehen und die Anweisungen befolgen)
!verboff
Eine weitere Anleitung mit dip statt diald gibt's unter:!br
!link http://www.rosat.mpe-garching.mpg.de/~web/ISDN.html;!br
Achtung: der dip, der mit der Suse 4.2 mitgeliefert wurde, ist defekt!
!old
Q: Ich habe mir den Internetzugang über T-Online wie in einigen Newsgruppen
beschrieben zurechtgebaut, aber leider funktioniert das chat-Skript nicht
("Connect script failed").
A: Gerhard Träger <gerhard@gt-priv.m.eunet.de>: schrieb hierzu:
!verbon
In der geschwätzigen chat-Version gibt es einen kleinen Fehler in
logf(): es wird solange in einen 256 Byte Puffer geschrieben, bis ein
Zeilenumbruch kommt. t-offline sendet aber deutlich mehr Bytes für die
Anmeldeseite ... Also entweder chat ohne -v aufrufen oder den Puffer
vergrößern (am besten mit Füllstandsüberprüfung).
!verboff
!3Raw-IP
Q: Was ist Raw-IP?
A: Bei Raw-IP wird auf die Verwendung eines Protokolles wie X.75 oder HDLC
(Modememulation, s.o.) bzw. PPP verzichtet. Es werden direkt TCP/IP
Pakete ausgetauscht.
Q: Welche Vor- und Nachteile hat Raw-IP?
A: Das eingesetzte Verfahren hat spezielle Vor- aber auch Nachteile.!br
Vorteile:
!verbon
* Kein Handshaking mehr
=> schneller Verbindungsaufbau
* Authorisierung per Caller Id
=> schnell, sicher, ohne Paßwort
* Fixe IP-Adresse
=> eine abgebrochene Verbindung kann nach Wiedereinwahl
fortgesetzt werden
* Höherer Datendurchsatz
* Hohe Stabilität (kleiner Treiber => kaum Bugs)
!verboff
Nachteile:
!verbon
* Kein Handshaking mehr
=> Konfiguration muß !u1vorher!u0 stattfinden (IP-Adressen,...)
=> sinnvoll nur für maximal einen Provider gleichzeitig einsetzbar
* Authorisierung kann nur per Caller Id erfolgen
=> Einwahl nur vom eigenen Anschluß möglich
* Fixe IP-Adresse
=> muß vorher bekannt sein, höherer Verbrauch von IP-Adressen,
keine dynamische Adreßvergabe möglich
!verboff
Aus dieser Übersicht läßt sich gut erkennen, unter welchen Rahmenbedingungen
Raw-IP sinnvoll eingesetzt werden kann.
Q: Wie kann ich nach dem Aufbau einer Raw-IP-Verbindung ein Skript ausführen
lassen?
A: Harald Milz <hm@seneca.muc.de> schrieb dazu am 28. Nov 1996:!br
Mache doch ein tail -f auf Dein syslog und hänge ein Auswerteskript dran,
z.B. (alles in einer Zeile!)
!verbon
tail -f /var/log/messages |
awk '/isdn0 connected/ { system ("ip-up") }
/hangup isdn0/ { system ("ip-down") } '
!verboff
oder eleganter in perl.!br
[Evtl. kann auch isdnlog entsprechend programmiert werden - die Red.]
!3Modememulation (Betrieb mit ttyI*-Devices)
Q: Heißt Modememulation, daß ich mein analoges Modem wegwerfen kann?
A: Nein, der Name "Modememulation" bezieht sich allein auf die Art, wie
der eigene Computer mit dem ISDN-Treiber kommuniziert. Er bezieht sich
ausdrücklich !u1nicht!u0 auf die Art und Weise, wie die Daten dann
vom ISDN-Treiber über die Telefonleitung geschickt werden - das geschieht
nämlich digital! Zu einer Nicht-ISDN-Mailbox wird deshalb auch mit der
"Modememulation" des ISDN-Treiber !u1keine!u0 Verbindung aufzubauen sein.!br
Der Name hat trotzdem seine Berechtigung, denn schließlich kann alle
Software unter Linux, die Modems ansteuern kann, über die "Modememulation"
auch den ISDN-Treiber steuern. Und das ist ja das, was wir eigentlich
wollen.
!old
Q: Welches Device soll ich für Anrufe nach draußen bzw. nach drinnen
verwenden?
A: Es sollten nur die ttyI*-Devices verwendet werden. Die cui*-Devices
sind nur aus Kompatibilitätsgründen vorhanden. Seit mgetty besteht
aber keine Notwendigkeit mehr, sie zu benutzen. Durch ihre Verwendung
würde das Locking nicht richtig funktionieren (mehrere Anwendungen
könnten gleichzeitig versuchen, das gleiche Device zu verwenden).
!old
Q: Wie schalte ich in der Modememulation von X.75 auf hdlc um?
A: Mit der Option S14=3. Also z.B. "ATS14=3".
!old
Q: Wie kann ich mit Taylor-UUCP über isdn4linux pollen?
A: Ganz normal, wie mit seriellen Schnittstellen auch. Als Device muß
einfach /dev/ttyI* verwendet werden, im Init-String der Modememulation muß
noch die richtige MSN bzw. EAZ mit "AT&E<msn/eaz>" gesetzt werden.
!old
Q: Welche Geschwindigkeit muß ich für die Modememulation wählen?
A: Egal. Der Treiber arbeitet intern sowieso immer mit der vollen
Geschwindigkeit, die ISDN bietet. Diese wird dann auch im Connect-String
genannt.
!old
Q: Ist 'init-chat "" ATZ OK AT&E4 OK ATS14=3 OK' richtig für 1TR6
(der andere hat DSS1)?
A: Prinzipiell ja, wenn die EAZ auch tatsächlich 4 ist (at&e4) und HDLC
verwendet werden soll (ats14=3).
Q: Was genau bedeutet das Register S13?
A: Fritz Elfert <fritz@wuemaus.franken.de> schrieb dazu am 1. Dez 1996:!br
Wenn eine Anwendung ein write auf das ttyI device aufruft, wird
isdn_tty_write() aufgerufen. Dort werden die übergebenen Daten
in einen Zwischenpuffer (info->xmit_buf[]) kopiert, und - falls im
Voice-Mode - DLE-Sequenzen dekodiert. Danach wird ein Zähler
(info->xmit_count) aktualisiert, der den Füllstand des Zwischenpuffers
aktualisiert. Über den Timer-Interrupt werden in der Funktion
isdn_tty_modem_xmit() zyklisch zwei weitere Routinen aufgerufen:
isdn_tty_senddown() und isdn_tty_tint(). Die Aufgabe von isdn_tty_tint()
ist es, die Daten aus dem Zwischenpuffer in sk_buffs zu packen (sk_buffs
sind die Packet-Buffer, die auch vom Networking verwendet werden) und
dabei bei Bedarf die verschiedenen Audio-Formate nach a-law zu wandeln
und - ebenfalls bei Bedarf - einen T.70 Header zu erzeugen. Das
resultierende Päckchen wird dann in eine Sendequeue (info->xmit_queue)
gestellt. isdn_tty_tint() arbeitet schlieslich diese Queue ab, und
übergibt die Packete an den jeweiligen Lowlevel-Treiber.!br
Wenn nun Bit 1 in Register 13 gesetzt ist, wird der Aufruf von
isdn_tty_senddown() und isdn_tty_tint() zusätzlich zum Timer-Interrupt
auch aus isdn_tty_write() heraus durchgeführt, also sofort beim write
aus der Anwendung heraus.
!3Async-PPP
!commenton
(Die folgenden Fragen entstammen zumeist der syncPPP-FAQ von Michael Hipp.)
!commentoff
!old
Q: pppd, ipppd, asyncPPP, syncPPP - was ist das? Was soll ich einsetzen?
A: !b1asyncPPP!b0 ist ein zeichenbasiertes Protokoll und wird gewöhnlich über
analoge serielle Leitungen geschickt. Es ist natürlich möglich, asyncPPP
über ISDN zu routen (obwohl ISDN eine Synchronverbindung bietet). Man
kann es tun, indem man ein ISDN-Modem an den Computer anschließt. Dieses
Gerät besitzt eine RS-232-Schnittstelle zum eigenen Rechner sowie eine
ISDN-Schnittstelle in Richtung Telefongesellschaft. Nehmen wir nun an, man
benutzt PPP an der seriellen Schnittstelle, dann laufen diese asynchronen
PPP-Pakete über die synchron laufende ISDN-Leitung. Damit diese Pakete
von der eigenen Linux-Maschine akzeptiert und bearbeitet werden, darf man
!u1nicht!u0 HDLC/syncPPP einsetzen, denn das würde nicht funktionieren.
Stattdessen muß man /etc/inittab editieren:
!verbon
#
# inittab This file describes how the INIT process should set up
# the system in a certain run-level.
[...]
# PPPD for asyncPPP over ISDN
i1:45:respawn:/usr/sbin/pppd -detach silent noipdefault /dev/ttyI0
!verboff
Dies teilt init mit, daß der asynchrone pppd direkt auf dem benannten
Device gestartet werden soll. Man beachte, daß mit dieser Konfiguration
ausschließlich PPP über diese Leitung gefahren werden kann.
Es gibt auch andere Wege: man startet einen getty an diesem tty, richtet
einen User ein, der den pppd startet, und so weiter. Wer mehr darüber
wissen will, sollte sich die FAQ ansehen, die mit dem Standard-pppd
geliefert wird.!br
Im Gegensatz ist !b1SyncPPP!b0 ein bitorientiertes Protokoll. Dazu kann der
originale pppd nicht verwendet werden. Michael Hipp hat eine entsprechend
angepaßte Version geschrieben, die sich ipppd nennt.!br
Der ipppd kann PPP-Pakete verarbeiten, die als HDLC-Frames ankommen.
Der PPP-Treiber in ISDN4Linux reicht alle IP-Pakete direkt an den
network layer weiter, während alle PPP-Protokollframes an das /dev/ippp*-
Device durchgestellt werden. So gesehen ist der ipppd ein einfaches
externes Netzwerkprotokoll-Programm. Wenn Sie sich mithilfe der /dev/ttyI*-
Devices in einen fremden Rechner einloggen und *dort* erst das PPP starten,
dann nehmen Sie den "alten" pppd. Wenn die Gegenstelle unmittelbar beginnt,
Frames zu senden, haben Sie vermutlich Kontakt zu einer syncPPP-Maschine
aufgenommen - nehmen Sie das Network Device aus ISDN4Linux mit der
'syncppp encapsulation' und versichern Sie sich, daß der ipppd läuft und
Kontakt zu mindestens einem /dev/ippp* hat. Bitte lesen Sie in der
Anleitung zu ISDN4Linux nach, wie man ein Network Device konfiguriert.
!old
Q: Ich möchte asynchrones PPP fahren. Kann ich dazu die Netzwerkinterface von
isdn4linux einsetzen?
A: Nein, das ist nicht möglich. Asynchrone PPP-Encapsulation ist nur mit
dem Standard-PPP-Paket (pppd) über die /dev/ttyI*-Devices möglich (siehe
letzte Frage). Das Netzwerkinterface kann einzig und allein vom ipppd für
synchrone PPP-Encapsulation benutzt werden.
!old
Q: Wie kann ich die Login-Zeit reduzieren?
A: Siehe dazu die entsprechenden Hinweise bei Sync-PPP, die ebenfalls für den
pppd angewandt werden können.
Q: Wie kann ich meinen Durchsatz mit PPP erhöhen?
A: Mit MPPP weitere Kanäle aufbauen (siehe den entsprechenden Abschnitt dazu).
Für alle, denen das zu teuer ist, und die !u1asyncPPP!u0 verwenden gibt es
noch einen kleinen Trick. Mit der Option "asyncmap 0" gibt man an, daß man
darauf verzichten möchte, alle Steuerzeichen (ASCII<32) zu "escapen" (das
ist der Defaultwert ist). Wenn die Gegenstelle mitspielt, kann das etwa 12%
mehr Durchsatz bringen.
!3Sync-PPP
!commenton
(Die folgenden Fragen entstammen zumeist der syncPPP-FAQ von Michael Hipp.)
!commentoff
Q: pppd, ipppd, asyncPPP, syncPPP - was ist das? Was soll ich einsetzen?
A: Siehe dazu die entsprechende Frage im Abschnitt "Async-PPP".
!old
Q: Wie kompiliert man isdn4linux mit syncPPP?
A: Um den Kernel mit dem syncPPP-Teil im ISDN4Linux-Teil zu compilieren, muß
man die entsprechende Frage bei "make config" mit 'yes' beantworten.
Vergessen Sie nicht, das Modul slhc.o vor dem Modul isdn.o zu laden, wenn
die VJ-Kompressionsunterstützung nicht in den Kernel eincompiliert
wurde (beispielsweise wenn man kein PPP und kein CSLIP im Kernel hat).
[Hinweis: Die Benutzung von VJ ist problematisch und funktioniert nicht
zuverlässig - trotzdem sollte die entsprechende Unterstützung im Kernel
eingetragen werden, weil es sonst zu Seiteneffekten kommen kann.]
!old
Q: Wie benutzt man isdn4linux mit syncPPP?
A: Synchrones PPP ist lediglich eine andere Einbettungsform für ISDN4Linux.
Der Name dieser Form lautet "syncppp", also zum Beispiel
!verbon
/sbin/isdnctrl encap ippp0 syncppp
!verboff
Hier ist der Name des Interfaces 'ippp0'. Ein Interface mit dem Namen
ippp0 wird immer gebraucht, um den ipppd zufriedenzustellen, denn er
checkt die PPP-Version über dieses Device. Zur Zeit müssen alle Devices
den Namen ippp* haben, wobei '*' eine Dezimalzahl ist.
Q: Wie soll ich mein Netzinterface benennen?
A: Der Name des Netzinterfaces sollte !u1immer!u0 mit "ippp" anfangen,
!u1nicht!u0 mit "syncppp" oder "isdn", da sonst die Kommunikation mit
dem ipppd nicht recht funktioniert.
!old
Q: Wie konfiguriert man eine PPP-Verbindung mit dem ipppd?
A: Sie müssen den ipppd einmal nach der Installation der Module starten. Der
ipppd kommuniziert mit dem Linklevel-Treiber von ISDN4Linux über die
Devices /dev/ippp0 bis /dev/ippp63. Ein einzelner ipppd kann alle Devices
auf einmal behandeln. Wenn Sie zwei PPP-Verbindungen gleichzeitig unter-
halten wollen, müssen Sie den ipppd an zwei Devices binden, und so weiter.
Dem ipppd wurde eine weitere Option zugefügt: 'useifip' holt für die
Verhandlung die IP-Adresse vom angeschlossenen Netzwerk-Interface (falls
sie nicht 0.0.0.0 gesetzt ist). (Auch versucht der ipppd dann, die
pointopoint-IP als Remote-IP (IP des Fremdrechners) zu verhandeln.)
BSD-Kompression muß abgestellt sein - diese Version kann damit nicht
umgehen. [Anmerkung: Auch die Van-Jacobson-Kompression sollte mit "-vj
-vjcomp" unter allen Umständen abgeschaltet sein!]
Man sehe sich die Datei etc/rc.isdn.syncppp im isdn4k-util-Paket an,
in der eine Beispiel-Konfiguration zu finden ist.
Q: Wie bringt man den ipppd dazu, eine PPP-Verbindung aufzubauen?
A: Mit dem Befehl "isdnctrl dial <interface>".
Q: Wie stelle ich fest, ob die Verbindung nicht zustande kam (Besetzt)?
A: Andreas Berg <berg@studm.hrz.uni-siegen.de> schrieb dazu am 24. Nov 1996:!br
Ich gucke einfach nach ein paar Sekunden nach, ob die defaultroute da ist,
wenn ja, dann steht auch die Verbindung.
Q: Wo gibt es jeweils die neueste Version des ipppd?
A: Die gibt es auf Michael Hipp's Homepage:!br
!link http://www.sfs.nphil.uni-tuebingen.de/~hipp/isdn/linux/;
!old
Q: Wie kann ich mehr als ein ippp*-Device verwenden?
A: Alle verwendeten ippp*-Devices müssen per "isdnctrl addif" etc. separat
konfiguriert werden. Jedes ippp*-Device sollte dabei eine andere IP-Adresse
verwenden (Routing!).!br
Es können durchaus mehrere ippp*-Devices auf dieselbe (eigene) MSN
konfiguriert werden. Dann können mehrere Anrufer parallel auf dieser MSN
anrufen und bedient werden.
!old
Q: Ich möchte auf einen entfernten Rechner zugreifen, wozu eine andere
ipppd-Konfiguration notwendig ist. Der einzige Weg dazu ist, den laufenden
ipppd zu killen und einen neuen mit einer anderen Konfiguration für die
andere Maschine zu starten.
A: Sie müssen ein Netzwerk-Interface explizit an ein ipppd-Device binden,
an welches Sie (für dieses Interface) einen individuell konfigurierten
ipppd ansetzen können. Siehe dazu die nächste Frage.
Q: Wie funktioniert der (kaum dokumentierte) "pppbind"-Befehl von isdnctrl?
A: Dazu muß man zunächst wissen, wie der ipppd seine Daten bekommt. Alle
Daten, die über die ISDN-Leitung hereinkommen, werden von den Netzinterfaces
empfangen (diese werden mit isdnctrl eingerichtet). Anschließend werden die
Daten auf eines der /dev/ippp*-Devices ausgegeben - und zwar auf eines, an
dem ein ipppd-Daemon auf Daten wartet.!br
Den Netzinterfaces erscheinen alle ipppd's gleich geeignet für die gerade
empfangenen Daten - man kann deshalb normalerweise nicht vorhersagen,
welcher ipppd nun von welchem Netzinterface seine Daten bekommt.!br
In der Praxis installiert man jedoch gerne mehrere ipppd's mit
unterschiedlicher Konfiguration. Diese sollen ihre Daten jeweils
!u1exklusiv!u0 von einem bestimmten Netzinterface bekommen (das auch
speziell konfiguriert wurde). Genau dazu dient nun der "pppbind"-Befehl.
Mit:
!verbon
"isdnctrl pppbind <interface> <Nummer>"
!verboff
wird das Interface <interface> fest mit dem Device /dev/ippp<Nummer>
verknüpft.!br
Beispiel: Um das Interface "ippp5" mit /dev/ippp2 zu verknüpfen, muß
folgende Konfiguration vorgenommen werden:
!verbon
"isdnctrl pppbind ippp5 2"
!verboff
Analog kann man mit dem "pppunbind"-Befehl diese Verknüpfung wieder
aufheben.!br
!old
Q: Ich will dynamische Adreßzuweisung benutzen. Wie muß ich das Netzwerk-
Device konfigurieren?
A: Zumindest muß ein Routing vorhanden sein, welches ein Packet an das
ippp-Interface weiterreicht, damit eine Anwahl getriggert werden kann.
Eine Defaultroute zum ippp-Device tut das. Jetzt muß eine Dummy-IP-Adresse
für das Interface angegeben werden. Wenn Sie aus irgendwelchen Gründen
keine Defaultroute zum ippp-Device legen können, dürfen Sie irgendeine
Adresse aus dem Subnetz benutzen, aus dem Sie Ihre dynamisch zugewiesene
IP-Adresse erwarten, und können dann eine "Netzwerk-Route" für dieses
Subnetz zum ippp-Interface legen. Damit die Dummy-Adresse überschrieben
werden kann, muß der ipppd mit der Option "ipcp-accept-local" aufgerufen
werden.!br
Man muß wissen, wie der ipppd die Adressen bekommt, die er konfigurieren
soll. Wenn keinerlei Option mit angeben werden, versucht der ipppd, die
lokale Hostadresse zu verhandeln! Mit der Option "noipdefault" fragt er
beim Remotehost um eine Adresse an. Mit "useifip" bekommt er die Adresse
vom Netzwerk-Interface. Oder Sie geben die Adressen in der Optionszeile an:
<a.b.c.d:e.f.g.h>. Bemerkung: die IP-Adresse des Fremdrechners muß lokal
konfiguriert werden, oder der Fremdrechner muß ihn in einem IPCP-Request
senden. Wenn die eigene Seite die IP-Adresse nach der Verhandlung nicht
weiß, wird die Verbindung abgebrochen! Das Überschreiben der Adressen
muß durch Angabe der Optionen "ipcp-accept-*" erlaubt werden, wenn die
eigene oder die fremde IP-Adresse explizit gesetzt worden ist.
Vielleicht probieren Sie diese Optionen aus, z.B.
!verbon
/sbin/ipppd :$REMOTE noipdefault /dev/ippp0
!verboff
wobei REMOTE die Adresse des Fremdrechners sein muß (des Rechners also,
der Ihnen Ihre Adresse gibt).
Q: Laut Man-Page bietet der ipppd die Option "dns-addr". Leider lehnt mein
ipppd diese Option strikt ab!
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb hierzu am 31. Dez 1996:!br
Du musst im Makefile des ipppd "USE_MS_DNS" einschalten!
Q: Wie kann ich IPX über den ipppd machen?
A: Michael Hipp <Michael.Hipp@student.uni-tuebingen.de> schrieb dazu am
4. Feb 1997:!br
So... die Frage kommt ja in letzter Zeit häufiger auf. Ich empfehle
auf alle Faelle mal den ipppd 2.2.6g (ftp.gwdg.de pub/linux/isdn/ippp/)
Dann im Makefile: 'IPX_CHANGE = 1' "einkommentieren"...!br
Das reicht aber noch nicht aus. Man muß beim Aufruf des ipppd auf
alle Faelle "+ipx" angeben, sonst wird IPX (im ipppd) nicht aktiviert.
Ansonsten muß man natürlich noch "richtige" IPX Optionen mitübergeben.
K.A. welche das im Einzelfall sind. IPX habe ich noch nie gemacht. ;)
Wenn man dann mehrere IPXCP Debug-Meldungen im Log sieht und nichts
geht würde mich selbiger Debug-Log interessieren. (Sofern man den
Fehler nicht selber analysieren kann). Erfolgsmeldungen sind natürlich
auch willkommen. (bei ungetesteter Software aber höchst unwahrscheinlich) ;)
!old
Q: Wie kann ich die Login-Zeit reduzieren?
A: Man schreibe eine Login-Session mit ("Debug-Log"), und sehe nach, welche
Optionen der Fremdrechner zurückweist. Beim nächsten Mal ist der ipppd
so zu konfigurieren, daß die Optionen nicht mehr verhandelt werden.
Ein weiterer "Seiteneffekt" ist, daß solche unnützen Optionen die
Redundanz erhöhen (z.B. wenn der Fremdrechner Bugs aufweist und die
Optionen auf falsche Weise zurückweist).
Zur Erstellung eines Log-Files siehe "Wie stelle ich mir für ipppd ein
Log her".!br
Einen zusätzlicher Tip kam von G.Richter <richter@ecos.de> am 12. Dez 1996:!br
Die Aushandlungphase mit einem CISCO, wie auch mit einem AVM MPR habe ich
drastisch beschleunigt durch die Option
!verbon
lcp-restart 1
!verboff
Der ipppd sendet anscheined das erste LCP Paket bevor es die Gegenstelle
erreichen kann und wartet dann 3 sec bis er es noch mal versucht, mit der
Option wartet er nur eine Sekunde. Danach sankt der Verbindungsaufbau bei
mir von 5 auf 2 Sekunden.
Q: Wie kann ich meinen Durchsatz mit PPP erhöhen?
A: Mit MPPP weitere Kanäle aufbauen (siehe den entsprechenden Abschnitt dazu).
Für alle, denen das zu teuer ist, und die !u1asyncPPP!u0 verwenden gibt es
noch einen kleinen Trick. Mit der Option "asyncmap 0" gibt man an, daß man
darauf verzichten möchte, alle Steuerzeichen (ASCII<32) zu "escapen" (das
ist der Defaultwert ist). Wenn die Gegenstelle mitspielt, kann das etwa 12%
mehr Durchsatz bringen.
!3ISDN4linux im Netzwerk
Q: Ich möchte mit meinem Linux-System via ISDN4Linux ins Internet. Das klappt
auch. Nun möchte ich noch zusätzlich meine Rechner am Ethernetstrang mit
vom Internet profitieren lassen, aber wie?
A: Thomas Pfeiffer <pfeiffer@pds.de> schrieb dazu folgendes am 5. Nov 1996:!br
Es gibt verschiedene Möglichkeiten, je nachdem, was du denn so alles aus
deinem LAN heraus im Internet machen möchtest. Grundsätzlich gibt es drei
Möglichkeiten:
!verbon
1. dein LAN ist ein offizielles Class C Netz mit im Internet gültigen
IP adressen.
Der Fall ist am einfachsten zu konfigurieren, du gibst jeder
Netzwerkkarte in dem Netz eine dieser IP adressen und legst eine
Default Route auf deine ISDN Karte, die ins Internet zu deinem
Provider führt.
2. Du möchtest aus deinem LAN heraus nur http ins Internet machen.
In dem fall kannst du dir für dein LAN IP adressen ausdenken,
die einzige offizielle IP Adresse ist die, die der ISDN Karte
zugewiesen wird. auf deinem linux isdn router mußt du einen
Proxy Server installieren, der bei deinen Browsern auch
eingetragen wird. Du brauchst in dem Fall keine Default Routen.
3. Du möchtest dich immer nur aus dem LAN auf deinem Linux ISDN
Router einloggen und VON DORT deine Arbeit im Internet verrichten.
Das ist noch einfacher, denn dann mußt du nicht einmal einen
Proxy Server.
!verboff
Eike Stepper <isdn@esc-net.de> ergänzt am 6. Nov 1996:
!verbon
Den drei Möglichkeiten würde ich noch eine vierte hinzufügen. Selber
hab ich es zwar noch nicht ausprobiert (da ich die erwähnte 1.
Möglichkeit bevorzuge und ein Class-C-Subnetz habe, hehe ;) aber ich
weiß von einem Freund, daß er nach einigem Tüfteln am Linux-Kernel
dann tatsächlich das IP-Masquerading hinbekommen hat.!br
Das funzt irgendwie soähnlich wie ein proxy (wenn man den
ip-versteck-effekt betrachtet). Bietet natürlich kein Caching,
maskeriert aber nach aussen hin alle internen Klau-IPs ;) mit der
einen offiziellen des ISDN-Interface. Frag mich nicht, wie da
irgendein Routing hinhaut, aber es geht...!br
Wenn ich mich nicht irre, hat mein Freund sogar mit einer dynamischen
IP maskeriert ?!
!verboff
Q: Wie funktioniert denn nun die vierte Möglichkeit, Linux + Masquerading?
A: Rainer May <r_may@khavi.desaster.heide.de> hat hierzu eine tolle Anleitung
zusammengestellt (siehe nachfolgende Frage).
!old
!commenton
Die nachfolgende Anleitung wurde von Rainer May
<r_may@khavi.desaster.heide.de> zusammengestellt.
!commentoff
Q: Ich habe ein lokales Netzwerk (LAN), in dem Rechner der verschiedensten
Plattformen - Win95, Win311, NT, Amiga (AmiTCP) und MacIntosh (MacTCP) -
über einen Linux-Router mit der Außenwelt verbunden werden sollen. In der
Linux-Maschine steckt eine ISDN-Karte. Von meinem Provider bekomme ich
dynamisch eine IP-Adresse zugewiesen, wenn die Verbindung aufgebaut wird.
Nun möchte ich aber nicht nur vom Linux-Router direkt, sondern von jedem
Rechner im LAN ins Internet kommen. Wie macht man das?
A: Die meiste Arbeit ist auf Linux-Seite zu erledigen. Zunächst einmal
braucht man einen Kernel mit eingebautem IP-Forwarding und Masquerading.
D.h., bei "make config" müssen folgende Fragen wie folgt beantwortet
werden:
!verbon
Prompt for development and/or incomplete code/drivers Y
Enable loadable module support Y
Networking support Y
Network firewalls Y
TCP/IP networking Y
IP: forwarding/gatewaying Y
IP: firewalling Y
IP: masquerading Y
PPP (point-to-point) support (wenn PPP zum Provider) Y
SLIP (serial line) support Y
Ethernet (10 or 100Mbit) (oder Arcnet oder ...) Y
ISDN support [1] M
Support synchronous PPP (wenn ipppd benutzt wird) Y
HiSax SiemensChipSet driver support M
(dann den HiSax für die ISDN Karte wählen)
([1] Wer mag, kann die ISDN-Treiber natürlich auch direkt in den
Kernel einbauen, anstatt sie als Module zu verwenden.)
!verboff
Anschließend den Kernel wie üblich mit "make dep", "make clean", "make
zImage", "make modules" und "make modules_install" bauen.
Auf das Installieren von PPP und der ISDN-Treiber wird an anderer Stelle
ausführlich eingegangen.
Hier geht es weiter, wenn folgende Voraussetzungen erfüllt sind:
!verbon
* Das ISDN-Subsystem läuft, d.h., von Linux aus kann eine Verbindung
zum Provider hergestellt werden.
* Das lokale Netzwerk (Ethernet usw.) läuft auch, vorzugsweise unter
Verwendung "freier" IP-Adressen (z.B. 192.168.xx.xx), und der Linux-
Host kann von allen anderen Rechnern im LAN erreicht werden (z.B.
per ping).
!verboff
Nun gilt es, zweierlei zu erreichen:
!verbon
* Zugriffe von einem beliebigen Rechner im LAN auf eine nicht-lokale
IP-Adresse sollen den Linux-Router veranlassen, eine Verbindung zum
Provider aufzubauen; und
* Der Linux-Router soll zwar die Rechner im LAN mit dem Provider
verbinden, diesem gegenüber aber verheimlichen, daß nicht der Router
selbst Empfänger/Absender der entsprechenden IP-Pakete ist.
!verboff
Beginnen wir mit dem zweiten Punkt. Dieses "Verheimlichen" hat nichts damit
zu tun, daß man seinen Provider hintergehen will (obwohl man auf diese
Weise auch selbst Provider spielen und seine Kunden klammheimlich über
!u1einen!u0 billigen "Privat-Zugang" ins Internet bringen kann), sondern
mit technischen Notwendigkeiten. Denn nur das Interface des Linux-Rechners,
das die Verbindung zum Provider herstellt, bekommt von diesem eine
IP-Adresse verpaßt, die der Provider auch kennt. Trägt z.B. der Router im
LAN die lokale IP-Adresse 192.168.1.1, und ein anderer Rechner die
192.168.1.2, dann kennt der Provider diese Adressen ja nicht. Er weist z.B.
dem PPP-Interface des Routers die Adresse 123.234.345.99 zu - und nur bei
Paketen aus dem Internet, die an diese Nummer adressiert sind, weiß er
auch, an wen er die Pakete schicken soll. Daher muß der Router Pakete von
anderen Rechnern im LAN "maskieren" - mit seiner eigenen, dynamisch
zugewiesenen Adresse (und dabei natürlich Buch darüber führen, was an
wen von wem kam, um die Antwort-Pakete richtig zuzustellen).!br
Zum Glück ist diese Funktion in den Linux-Kernel =>2.0.0 schon eingebaut
(s.o.) - sie nennt sich "IP-Masquerading". Vereinfacht ausgedrückt geht
das so:!br!br
Ein LAN-Rechner schickt ein Paket ab, das neben IP-Nummer und Ziel-Port des
Empfängers auch die "Absender-Adresse" in Form einer IP-Nummer und eines
Antwort-Ports trägt. Der maskierende Router nun ersetzt die Absender-IP
durch seine eigene und den Rücksende-Port durch einen freien aus seinem
Fundus. Unter dieser "freien" Portnummer werden die originalen Absender-
Daten gespeichert. Kommt nun ein Antwort-Paket aus dem Internet an diesen
Port, werden dessen Empfänger-Adresse und -Port mit der gespeicherten
Rücksende-Adresse überschrieben und an den LAN-Rechner weitergeleitet.
Paket für Paket.!br
Leicht einsehbar ist übrigens, daß dieses Verfahren nur mit Diensten
funktioniert, bei denen auch eine Rücksende-Adresse angegeben wird. Dazu
gehören u.a. telnet, http, ftp, irc (eingeschränkt), nicht aber Echo
(ping).!br
Zurück zur Praxis. Damit das Masquerading auch bei FTP und IRC
funktioniert, werden zunächst zwei Module geladen:
!verbon
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_irc
!verboff
Dann werden die Forward-Rules des Kernel zum Masquerading gezwungen:
!verbon
/sbin/ipfwadm -F -a m -P all -S 192.168.123.0/24 -D 0.0.0.0/0 -b
!verboff
Das Programm ipfwadm gibt es per Anonymous FTP unter:!br
!link ftp://ftp.xos.nl/pub/linux/ipfwadm/ipfwadm-2.3.0.tar.gz;!br
In diesem Beispiel werden im LAN die IP-Adressen 192.168.123.1 bis
192.168.123.254 benutzt. Legen wir zur Vereinfachung fest, der Linux-Router
habe dabei die Adresse 192.168.123.1.!br
Obige Zeile bewirkt, daß IP-Pakete, die von 192.168.123.x ausgehen und
an wenauchimmer gerichtet sind, maskiert werden. Das hat den Nachteil, daß
auch innerhalb des LAN fleißig drauflosmaskiert wird, was man aber durch
Einfügen weiterer Rules vermeiden kann. "man ipfwadm" sei hier zur Lektüre
empfohlen.
(Hinweis von Ralf Rudolph <ralf@artifex.de> hierzu:
!verbon
Hmm. So wie ich das sehe, passiert da gar nichts. Grund: Die Rechner im
lokalen Netz unterhalten sich ja direkt über die fake-Adressen im
192.168.123.xxx-Netz. Zum Beweis kannst Du Deine Linux-Kiste einfach
abschalten (naja OK, shutdown...), und die lokalen Rechner werden sich
weiter unterhalten können. Also wird da auch nix masqueraded.
Der Hintergrund: Masquerading ist eine FORWARD Rule im Firewall und
wird daher auch nur beim FORWARDEN (wörtlich zu nehmen: WEITERleiten)
verwendet.
Netz-intern wird nichts geforwarded und deshalb auch nichts
masqueraded, solange Du nur eine Netzwerkkarte hast. Bei mehreren
Karten hast Du jedoch recht: Hier sollte man entsprechende Routing-
und auch ipfwadm-Einträge vornehmen.
!verboff
Antwort: Ist tatsächlich etwas ungenau; schaden tut es aber nix, es sei
denn, man will unbedingt nicht maskierbare Services benutzen.)!br
Das "Verstecken" des LAN vor dem Provider haben wir nun erreicht. Jetzt
gilt es, bei Bedarf einen automatischen Verbindungsaufbau zu erzwingen.
Dafür ist es zunächst nötig, die anderen Rechner im LAN dazu zu bringen,
alle für "Außerhalb" bestimmten IP-Pakete an den Linux-Router zu
übergeben und diesem die Weiterleitung zu überlassen. Nichts leichter als
das: Sowohl bei den verschiedenen Windows-Versionen, als auch beim AmiTCP
und beim MacTCP gibt es in der Konfiguration den Stichwort "Default-
Gateway" oder nur "Gateway". Hier ist die !u1lokale!u0 IP-Adresse des
Routers einzutragen (denn die spätere Adresse, die vom Provider kommt, ist
ja erstens noch nicht bekannt und ändert sich zweitens bei jedem Anruf).!br
Letzter Schritt ist dann, das "dial-on-demand" einzurichten. In
Verbindung mit isdn4linux gibt es dafür zwei Möglichkeiten:
!verbon
* Man verwendet synchrones PPP für die Verbindung zum Provider, also
den "ipppd". Dann ist nichts weiter zu tun als dafür zu sorgen, daß
immer die Default-Route des Routers auf das entsprechende ipppx-
Interface weist. Vorsicht: Beim Verbindungsabbau löscht der Kernel
diese Route!
Sie muß also z.B. in der Datei /etc/ppp/ip-down neu gesetzt werden.
Das Risiko bei diesem Verfahren sind Programme auf den LAN-Rechnern,
die mehr oder weniger regelmäßig Nameserver-Requests, Keepalive-
Pakete oder ARP-Broadcastings erzeugen - dann stellt nämlich der
Router jedesmal eine Verbindung zum Provider her. Die Telekom wird's
danken.
Übrigens kann es passieren, daß manche aus dem LAN initiierte
Verbindungen recht lange auf Antwort warten. Ich weiß nicht, ob
Kernel oder ipppd das "auslösende" Paket verschlucken, oder die
Antwort darauf unterschlagen; ich weiß aber, daß es hilft, z.B. bei
Netscape wenige Sekunden nach Anforderung der ersten Seite auf den
"roten Knopf" zu drücken und die Seite nochmals anzufordern.
!verboff
Wie bereits erwähnt: Die Konfiguration des ipppd wird an anderer
Stelle ausführlich erklärt - siehe entsprechende Fragen sowie!br
!link http://www.lrz-muenchen.de/~ui161ab/www/isdn/;
!verbon
* Benutzt man asynchrones ppp oder gar SLIP/CSLIP für die Verbindung
zum Provider, kann man das Programm "diald" [4] verwenden. Es bietet
zudem den Vorteil, extrem stark konfigurierbar zu sein; so kann man
z.B. festlegen, daß zwischen 0900 und 1200 grundsätzlich keine
Verbindung aufgebaut wird, daß Nameserver-Anfragen eine Verbindung
zwar nicht aufbauen, aber offenhalten können u.v.m. Wer sich mit
diesen Konfigurationsmöglichkeiten nicht herumschlagen mag, braucht
das indes auch nicht - die Default-Konfiguration kann man ohne
Gefahr für Leib und Geldbörse übernehmen :-)
!verboff
So.!br
Wenn jetzt das Masquerading eingerichtet wurde,!br
wenn der Linux-Router auf allen LAN-Rechnern als Gateway eingetragen
wurde,!br
wenn ein "ping abc.edu", eingetippt auf der Console des Routers, eine
Verbindung zum Provider aufbaut,!br
!u1dann!u0 sollte damit auch für alle Rechner im LAN der Weg ins Internet
frei sein.
Q: Wie kann ich den Teilnehmern meines lokalen Netzes mit Linux-Host
ermöglichen, die ISDN Karte(n) im Linux PC mitzunutzen?
A: Rainer May <r_may@khavi.desaster.heide.de> schrieb dazu am 10. Dez 1996:!br
öh ... "modemd" auf Linux-Seite, zusammen mit der entsprechenden
Software z.B. fuer W95 (emuliert halt auf einer telnet-Verbindung
einen Comport) macht sowas doch recht schön...
Q: Wo gibt's den "modemd", und für welche Plattformen gibt es "Clients"?
A: Rainer May <r_may@khavi.desaster.heide.de> schrieb dazu am 10. Dez 1996:!br
Theoretisch (und praktisch auch) tut es jeder etwas komfortablere
telnet-Client, den man dann wie ein Terminalprogramm benutzen kann.
Auch uucicos sollte es dafür geben (unter DOS fxuucico in Verbindung
mit fxwtcp, zum Bleistift).!br
Will man generell für beliebige Anwendungen eine Art "remote COMport"
haben, gibt es (wie erwähnt) COMT für Windows (95), für Amigas
das "telser.device". Für Mac soll es auch Entsprechendes geben
(die Systemarchitektur des MacIntosh lädt ja auch dazu ein), Namen
kenne ich allerdings nicht.!br
modemd (eigentlich nur ein PERL-Einzeiler, wenn ich mich recht entsinne)
arbeitet hier jedenfalls problemlos mit COMt und telser.device
zusammen.
Q: Wo finde ich COMt?
A: Oliver Hahn <oliver@bbtt.de> schrieb dazu am 15. Dez 1996:!br
Versuch's mal auf einem Simtel-Mirror (z.B. ftp.funet.fi) im Verzeichnis
pub/simtelnet/win3/inet. Das Ding heißt comt200.zip.
!link ftp://ftp.funet.fi/pub/simtelnet/win3/inet/comt200.zip;
Q: Wie sieht der "PERL-Einzeiler" "modemd" nun genau aus?
A: Marc Neitzner <marc@zeus.han.de> schrieb dazu am 15. Dez 1996:
!verbon
#!/usr/bin/perl
select((select(STDOUT), $| = 1)[$[]);
select((select(STDIN), $| = 1)[$[]);
exec "cu","-E","''", "-l", "$ARGV[0]";
die "$0: Cant exec cu: $!\n";
!verboff
Und dann muss das Ding per inetd gestartet werden:
!verbon
modem 20006/tcp modemd # Modem service via TCP
isdn 20007/tcp modemd # ISDN service via TCP
!verboff
Nachteil: comt-2.0 ist nur für 16Bit Anwendungen "sichtbar". Der
Einsatz unter win95 und Windows NT bleibt also auch dort auf 16Bit Kram
beschränkt!
!3Isdnlog
!old
Q: Wie kann ich isdnlog dazu bringen, mir die High Layer Compatibility
(Speech, Video,...) so anzuzeigen, wie ich es gerne hätte?
A: Gernot Zander <hifi@scorpio.in-berlin.de> postete am 6. Okt 1996 einen ent-
sprechenden Patch in der Mailingliste, der isdnlog besser anpaßt.
Q: Kann man in der Ausgabe von isdnrep die Dienstekennung eines eingehenden
Anrufes sehen?
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb hierzu am 3. Dez 1996:!br
Im isdnrep indirekt schon -- sofern du alle von isdnlog ausdekodierten
Dienstkennungen in deiner "isdnlog.conf" als Alias eingetragen hast ...
Q: Warum erfaßt isdnlog neben den Gebühren nicht auch die Telefonnummer, die
meine anderen ISDN-Geräte (z.B. ISDN-Telefon) anrufen?
A: Weil die ISDN-Karte wie alle ISDN-Geräte getrennte Sende- und
Empfangsleitungen (RX bzw. TX Leitung) hat. Isdnlog müßte die auf der
Sendeleitung übermittelten Daten belauschen, um die Telefonnummer zu
erfahren. Zumindestens bei der Teleskarte ist das jedoch nicht möglich, wie
Karsten Keil <keil@temic-ech.spacenet.de> am 12. Feb 1997 schrieb:
!verbon
Das ist bei allen Karten mit 1 Siemens ISAC so, der hat (und braucht)
nur 1 Empfaenger und 1 Sender.
Theoretisch besteht eine Moeglichkeit, mit nur einem Empfaenger den
kompletten D-Kanal zu belauschen (das macht der ISAC sogar) und zwar
werden die auf der RX Leitung empfangenden D-Bits auf sogenannte Echo
Bits zeitversetzt auf die TX Leitung kopiert, darueber erfolgt die
Access Kontrolle (Kollisionserkennung) des S0 Busses.
Leider gibt es im ISAC im TA Mode keine Moeglichkeit die ECHO Bits aus
einem Register zu lesen.
!verboff
Zu möglichen Lösungen siehe nächste Frage.
Q: Wie kann ich trotzdem isdnlog dazu bringen, die Telefonnummer auch von
anderen ISDN-Geräten mitzubekommen?
A: Es gibt zwei Möglichkeiten. Zum einen gibt es von der Deutschen Telekom die
kostenpflichtige Möglichkeit, alle Daten nochmal zurückschicken zu lassen
(COLP = Connected Line Identification Presentation, ca. DM 10,- pro Monat
je Basisanschluß). Diese kann isdnlog (>=2.52) dann wieder auf der TX
Leitung lesen.!br
Alternativ dazu wird isdnlog ab der nächsten Version (aktuell ist 2.52)
die Möglichkeit bieten, mit einer zweiten, "verpolten" Teles-Karte zu
arbeiten, bei der die RX Leitung an den TX Anschluß der Karte geführt wird.
Die RX Leitung der Karte darf an keine der Leitungen angeschlossen werden!
Aufgrund der Schaltung kann die Teles-Karte für keinen anderen Zweck mehr
eingesetzt werden. Das ganze sieht dann so aus:
!verbon
B 3 -- RX+ 2a ---------------\
U 4 -- TX+ 1a -- offen ------------
S 5 -- TX- 1b -- offen ------------ Karte
6 -- RX- 2b ---------------/
!verboff
Eine theoretische dritte Möglichkeit gibt es noch für alle, die eine
eigene TK-Anlage haben, über die sämtliche weiteren Geräte angeschlossen
sind. Falls diese Telefonanlage ebenfalls alle ausgehenden Telefonnummern
protokollieren kann, könnten diese ausgelesen werden (üblicherweise über
eine serielle Schnittstelle).!br
Es gibt jedoch einen Grund, warum isdnlog das nicht schon längst
unterstützt. Um die Daten zu verwerten, müßte isdnlog diese sofort beim
RELEASE COMPLETE zur Verfügung gestellt bekommen, bevor auf dem D-Kanal
neue Informationen übermittelt werden. Leider sind die bisher getesteten
Telefonanlagen dafür zu langsam (insbesondere die weit verbreitete ISTEC).
Als einzige Möglichkeit bleibt, die Daten nachträglich zu kombinieren.
Dabei kommt es aber zur Schwierigkeit, die unterschiedlichen Uhrzeiten
zu synchronisieren. Wer das realisieren möchte, ist dazu herzlich gerne
eingeladen (ich stelle auch gerne entsprechende Logs von meiner Ackermann
Euracom zur Verfügung - Matthias Heßler <hessler@wi-inf.uni-essen.de>).
Q: Erfaßt isdnlog auch die neuen Tarife der deutschen Telekom (City Weekend,
City Plus)?
A: Da die Vermittlungsstellen der Telekom das nicht hinbekommen, werden die
Gebühreninformationen nicht korrekt übermittelt. Die nächste Version von
isdnlog (>2.52) wird das jedoch können.
Q: Wie kann ich isdnlog dazu bringen, die Gebühren nach den Regeln der
niederländischen Telefongesellschaft zu berechnen?
A: Dazu muß nur im Makefile von isdnlog "COPTS=-DISDN_NL" gesetzt und isdnlog
neu kompiliert werden.
Q: Wie kann ich isdnlog dazu bringen, die Gebühren nach den Regeln der
schweizer Telefongesellschaft zu berechnen?
A: Dazu muß nur im Makefile von isdnlog "COPTS=-DISDN_CH" gesetzt und isdnlog
neu kompiliert werden.
Q: Wie kann ich mir den Datendurchsatz grafisch anzeigen lassen?
A: Dazu gibt's "xisdnload". Clemens Perz <listperz@gwsnet.ttt.de> wußte am
6. Feb 1997 noch eine weitere Möglichkeit:!br
Ich hab auf der Sunsite ein kleines Tool Namens netload für die Console
gefunden und es auf ISDN-Interfaces angepasst. Damit kann man recht
einfach den momentanen Traffic auf der Leitung in Augenschein nehmen.
Zu finden auf:!br
!link ftp://ftp.region.trier.de/pub/unix/linux/sources/network/isdn/netload-0.92.isdn.tar.gz;!br
Einfach starten mit netload isdnxx
!3Isdnbutton
Q: Welche Skripte sollte ich nutzen, um isdnbutton herunterzufahren?
A: Markus Gutschke <gutschk@uni-muenster.de> (der Autor) schrieb dazu
am 21. Dez 1996:!br
Ich benutze hier so etwas wie:
!verbon
#!/bin/bash
#ISDNBUTTON: Disconnect ISDN
/sbin/isdnctrl list isdn0 | grep Outgoing | grep -q 0251XYZ &&
/sbin/isdnctrl delphone isdn0 out 0251XYZ
/sbin/isdnctrl hangup isdn0
exit 0
!verboff
[An die Zeile, die mit "&&" endet, muß noch die nachfolgende angehängt
werden!]!br
und
!verbon
#!/bin/bash
#ISDNBUTTON: Connect ISDN
/sbin/isdnctrl list isdn0 | grep Outgoing | grep -q 0251925020 ||
/sbin/isdnctrl addphone isdn0 out 0251925020
exit 0
!verboff
[An die Zeile, die mit "||" endet, muß noch die nachfolgende angehängt
werden!]
Q: Was bedeuten die einzelnen Zustände von isdnbutton (grün, gelb, rot)?
A: Markus Gutschke <gutschk@uni-muenster.de> schrieb dazu am 21. Dez 1996:!br
"isdnbutton" überprüft folgende Zustaende:
!verbon
GRÜN - mindestens eine ISDN Verbindung ist zur Zeit aktiv. Leider
kann ich nicht überprüfen, womit diese Verbindung aktiv
ist (siehe andere Mail in die Liste). Es muß sich also
nicht unbedingt um eine Netzwerkverbindung handeln und es
werden auch eingehende Verbindungen angezeigt (was ich in
meinem Fall aber auch ganz gut brauchen kann).
GELB - keine aktive ISDN Verbindung wurde entdeckt, aber
mindestens eines der ISDN Interfaces hat eine ausgehende
Telephonnummer fuer Demand-Dialing. Es besteht also die
"Gefahr", dass automatisch eine Verbindung aufgebaut
werden kann.
ROT - Keine der oben genannten Punkte trifft zu. In der Regel
bedeutet das, daß
a) der Kernel gar kein ISDN kennt, oder das ISDN
Subsystem nicht aktiv ist, oder
b) ISDN Auswahlverbindungen deaktiviert sind.
!verboff
!3Audio
!commenton
(Die folgenden Antworten entstammen zumeist der Anleitung zu vbox von
Matthias Heßler <hessler@wi-inf.uni-essen.de> und
Bernhard Hailer <dl4mhk@lrz.uni-muenchen.de>; man findet sie unter:!br
!link http://www.lrz-muenchen.de/~ui161ab/www/isdn/;!br
- dort "Audio!" anklicken!)
!commentoff
!old
Q: Welches Format haben eigentlich die Audio-Messages (.msg), die vbox als
Ansagetext abspielt?
A: Mit rmdgetheader kann man erfragen, welches Format die Messages haben.
Die mitgelieferten sind in Format 4 = die neueste Zyxel-Kompression (?)
gespeichert. Allerdings ist das Format frei, vboxgetty kann alle Formate
abspielen.
!old
Q: Wie kann ich eigene Ansagetexte für vboxgetty erstellen?
A: Zuerst ruft man sich selbst an und spricht die zukünftige Ansage auf
den Anrufbeantworter. Die eingegangene Nachricht benennt man dann einfach
um in *.msg (standard.msg für den Hauptansagetext) und kopiert sie in
das richtige Verzeichnis für die Ansagetexte. Beim nächsten Anruf wird
sie dann korrekt als Ansagetext abgespielt.
Natürlich kann man auch mit einem Mikrofon an der Soundkarte Ansagen
aufnehmen!
!old
Q: Wie kann man Audio-Messages lokal auf /dev/audio abspielen?
A: Am besten vbox mit Format 6 =ulaw verwenden (muß eincompiliert werden),
dann kann man die eingehenden Nachrichten einfach per
!verbon
cat xxx>/dev/audio
!verboff
abspielen.
!old
Q: Ich vboxgetty hat eine Nachricht für mich in einem Format aufgezeichnet,
das ich nicht mit "cat xxx>/dev/audio" abspielen kann. Wie kann ich die
Nachricht doch noch abhören?
A: Siehe dazu die gleiche Frage im Abschnitt "Audio" im Kapitel
"Troubleshooting".
!old
Q: Wie kann ich mit vbox aufgenommene Audio-Mitteilungen konvertieren
(z.B. von WAV nach ulaw)?
A: Das Standardtool für die Konvertierung aller Soundformate ist SOX.
SOX gibts für Unix und DOS im Source-Code. Es kann z.B. unter
!link http://www.powerweb.de/mpeg/util/msdos/sox10c.zip; gefunden werden
(auch Sourcen, die unter Linux compieren).
Q: Wie kann ich WAV nach ulaw formatieren (für meine vbox-Ansagetexte)?
A: Dazu gab uns gab Christian Stueble <stueble@ls6.informatik.uni-dortmund.de>
am 15 Jan 1997 folgenden Tip:!br
Bei mir funktioniert folgende (wenn auch etwas umstaendliche) Methode:
!verbon
sox <file>.wav -r 8000 <file>.ul rate
rmdcatheader -u <file.ul> > <file>.msg
cat <file>.ul >> <file>.msg
!verboff
Kann sein, dass man bei sox etwas andere Parameter angeben muß.
Als ersten Test kann man cat <file>.msg > /dev/audio probieren,
da müßte etwas zu hören sein.
!3Diald
!old
Q: Wie kann ich i4l mit dem diald kombinieren?
A: Wim Bonis <bonis@kiss.de> schrieb:!br
Die Patches für daild sind hier zu finden:!br
!link ftp://ftp.kiss.de/pub/linux/isdn4linux/diald-0.13-device-patch;!br
Sie laufen auch mit dem diald-0.14. Wenn's einen neueren Diald gibt,
passe ich es gerne an...
!old
Q: Gibt es Beispielscripten für den diald?
A: Ja, von Rainer May <r_may@khavi.desaster.heide.de>:
!verbon
Zuerst wird - gleich beim Booten - diald "scharf gemacht"
# /etc/rc.d/rc.diald
/usr/sbin/diald /dev/ttyI4 -m ppp
local 192.168.90.9 remote 192.168.90.1
defaultroute dynamic modem crtscts lock connect "chat -v -f
/etc/ppp/chat.provider"
(in einer Zeile!)
Datei /etc/ppp/chat.provider:
TIMEOUT 240 "" AT&E1234 OK ATD047110815 ogin: Puser sword: topsecret
Telefonnummer, Name sowie Paßwort sind natürlich gefälscht :-)
!verboff
!3Chargeint
[Achtung! Nur in älteren Konfigurationen muß der Chargeint-Patch ins Kernel
gepatcht werden. Ab Kernel 2.0.30 bzw. HiSax 2.0 ist der Chargeint-Patch
automatisch im Kernel integriert - die Red.]
!old
Q: Wie kann die ich den "chargeint"-Patch verwenden, damit i4l rechtzeitig
vor der nächsten Gebühreneinheit auflegt?
A: Sascha Ottolski <sascha@alzhimer.isdn.cs.tu-berlin.de> schrieb:
!verbon
Ich benutze den chargeint, das klappt hervorragend; Gebühren kommen
bei mir während der Verbindung, aber ich glaube, man kann das auch per
Hand justieren. Du mußt mit den beiden in
isdnlog-2.50/contrib/chargeint zum einen die Kernel-Sourcen, zum
anderen die isdn4k-utils-2.0 patchen; dann den isdnlog mit dem Flag
-Dchargeint compilieren (siehe Makefile). Kernel und isdnctrl
natürlich auch neu kompilieren.
Dann den isdnlog mit der option -hx starten, wobei x die Anzahl der
Sekunden ist, die noch zum Gebührenimpuls fehlen. Da legt der chargeint
dann auf. Im start-script für isdn wie gewohnt einen huptimeout
definieren, zusätzlich den chargeint scharf machen:
/sbin/isdnctrl huptimeout ippp0 80 # in sec;
nach Bedarf /sbin/isdnctrl chargeint ippp0
!verboff
Olav Brinkmann <olav@max.north.de> schrieb:
!verbon
Der chargeint legt immer zwei Sekunden vor dem Ende der
Gebühreneinheit auf. Der isdnlog setzt, wenn er mit -Dchargeint
compiliert wurde, mit "-h" die Dauer der Einheit (i.e. Charge
Interval) abhängig von der Tageszeit und des Datums. Ein zusätzlicher
Parameter für "-h" verkürzt diese Dauer um den angegeben Wert.
Letzteres darf man bei Verwendung des chargeint aber nicht verwenden,
da sonst der chargeint die Verbindung zu früh beendet. Der Fehler
vergrößert sich mit der Anzahl der Gebührentakte. Also: "-h0" angeben,
um das Problem zu vermeiden.
> /sbin/isdnctrl huptimeout ippp0 80 # in sec;
In diesem Anwendungsfall ruhig kürzer, ich habe 5 Sekunden angegeben.
Dann kann ich die letzte Einheit bis auf 7 Sekunden (huptimeout + 2
Sekunden "chargeint-reserve") ausnutzen.
> /sbin/isdnctrl chargeint ippp0
Nicht nötig, wird von isdnlog mit "-h" erledigt.
!verboff
Q: Für welche Treiber kann ich den Chargeint-Patch verwenden?
A: Sowohl der Teles-, als auch der HiSax-Treiber können verwendet werden.
Natürlich muß auch isdnlog einwandfrei laufen (isdnlog 2.50 muß auf 2.51
gepatcht werden, um mit dem HiSax-Treiber zu laufen).
Q: Wann es unsinnig, den Chargeint-Patch zu verwenden?
A: Es gibt vor allem dann Schwierigkeiten, wenn die IP dynamisch zugewiesen
wird. Denn eine einmal unterbrochene Verbindung kann nicht wieder
aufgenommen werden (die IP-Adresse hat sich ja geändert). Die unterbrochene
FTP-, Telnet- oder WWW-Verbindung muß dann komplett neu aufgebaut werden.
!old
Q: Wie funktioniert der Chargeint-Patch?
A: isdnctrl kann man mit dem Parameter "chargeint" mitteilen, wieviele
Sekunden eine Gebühreneinheit dauert, damit rechtzeitig aufgelegt werden
kann. Da die Länge der Gebühreneinheit von Uhrzeit, Wochentag, Feiertag
etc. abhängt, macht ein fester Parameter keinen Sinn.
Hier springt isdnlog ein. Es stellt fest, ab wann eine Verbindung
steht und rechnet abhängig von Uhrzeit, Wochentag, Feiertag aus, wie
lange eine Gebührenimpuls dauert. Diese Zeit teilt es isdnctrl mit,
damit dieses genau rechtzeitig auflegen kann. Isdnlog "justiert"
isdnctrl damit bei jedem Connect und auch während einer Verbindung
(wenn isdnlog mit dem Parameter "-w x" gestartet wurde).
isdnlog veranlaßt isdnctrl, genau 2 Sekunden vor dem Start der
nächsten Gebühreneinheit aufzulegen, solange mindestens die isdnctrl
mit dem Parameter "huptimeout" angegebenene Zeit verstrichen ist, ohne
daß Daten übertragen worden wären.
Die Übermittlung von Gebührenimpulsen wird nicht benötigt, da die
Zeitsteuerung genau genug ist. Die Gebührenimpulse während eines
Gespräches werden zudem in so schwankenden Intervallen übermittelt,
daß man sich danach nicht richten kann.
Q: Wie konfiguriere ich den Chargeint-Patch?
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb hierzu am 3. Jan 1997:
!verbon
1. Den Kernel mit "isdnlog-2.50/contrib/chargeint/patch-chargeint-2.04"
patchen, neuen Kernel backen und booten
2. Die isdn4k-utils-2.0 mit
"isdnlog-2.50/contrib/chargeint/patch-chargeint-kutils"
patchen, make clean; make install
3. In der "/etc/isdnlog/isdnlog.conf" bei den gewuenschten Gegnern
das jeweilige Interface in Spalte 4 eintragen, und noch mal
die Korrektheit der Zone-Eintraege pruefen
4. Im "Makefile" von isdnlog "-DCHARGEINT" bei "COPTS" anfuegen,
make clean; make install
5. isdnlog mit der weiteren Option "-h0" starten, fertig!
!verboff
Q: Wo finde ich eine ausführlichere Anleitung zum Chargeint-Patch?
A: Georg v. Zezschwitz <gvz@hamburg.pop.de> schrieb hierzu am 29. Nov 1996:!br
Quick und Dirty habe ich jetzt endlich eine Doku fuer den ChargeInt-
Patch geschrieben:
- Fuer wen eignet er sich?
- Wie kriegt man ihn eingebunden?
- Was macht er?
- Wie konfiguriere ich ihn gut?
Default-URL: !link http://www.provi.de/~gvz/chargeint.html;
Q: Wie kann ich sicher sein, daß der Chargeint-Patch mit der richtigen Uhrzeit
arbeitet?
A: Dazu stellt man am besten mit "isdnlog -t2" die Uhr im eigenen Computer
nach der Uhr in der Vermittlungsstelle. Zum Stellen der Uhr siehe auch im
Kapitel "Verschiedenes" die Frage: "Wie kann ich meine Rechneruhr nach ISDN
stellen".
!3Dial-In
!old
Q: Wie ermögliche ich anderen, über ISDN bei mir einzuloggen?
A: Genauso, wie bei einer normalen seriellen Schnittstelle auch. Man startet
einen getty (sehr empfehlenswert ist mgetty von Gert Doering) auf einem
der ISDN-Devices, die eine Modememulation ermöglichen (/dev/ttyI*). Der
entsprechende Eintrag in der /etc/inittab sieht so aus:
!verbon
#
# ISDN Lines
#
I0:56:respawn:/usr/local/sbin/mgetty ttyI0
I1:56:respawn:/usr/local/sbin/mgetty ttyI1
!verboff
in der mgetty.config Datei müssen nun noch der Init-String eingetragen
werden, damit der mgetty weiß, auf welcher MSN oder EAZ er "horchen"
soll. Hier ein Beispiel für Port /dev/ttyI0
!verbon
port ttyI0
modem-type data
speed 38400
init-chat "" ATZ OK AT&E0 OK AT&B512 OK
!verboff
Das Beispiel setzt die EAZ (bei 1TR6-ISDN) auf 0. Für Euro-ISDN muß die
jeweilige MSN (ohne Vorwahl) statt der 0 in "AT&E0" eingesetzt werden.
Für X.75 wird die Blockgröße auf 512 Byte gesetzt.
Alternativ kann die gesamte Konfiguration auch in einer einzigen Zeile in
die /etc/initab geschrieben werden (hier in zwei Zeilen abgedruckt!):
!verbon
i0:45:respawn:/sbin/mgetty -D -m '"" ATZ OK AT&E0 OK AT&B512 OK'
-s 38400 ttyI0
!verboff
Am elegantesten ist jedoch die Verwendung von iprofd. Dieser Dämon
realisiert den AT&W0 Befehl der i4l-Modememulation. Man startet ihn
mit einem Dateipfad als Parameter also z.B. "iprofd /etc/i4lprofile"
Danach kann man mit minicom oder einem anderen Terminalprogramm
ein ISDN-tty öffnen und die nötigen AT-Befehle von Hand eingeben.
Gibt man nun zum Schluß den Befehl AT&W0 ein, so wird iprofd vom
Kernel benachrichtigt, und schreibt die aktuelle Konfiguration
in die Datei. Von nun an genügt es, den iprofd im ISDN initscript zu
starten und das jeweilige ISDN-tty mit allein ATZ zu initialisieren.
!old
Q: Jemand will sich bei mir mit HDLC auf mgetty einwählen. Ist hier ttyI1
richtig, oder muß ich da bei ttyI0 anfangen ?
A: Nein, ist egal, hat auch nichts mit der Nummer des B-Kanals (0 oder 1)
zu tun. Man muß nur im Initstring das HDLC aktivieren (ATS14=3).
!old
Q: Gibt es mittels mgetty die Möglichkeit, automatisch beim Empfang von
LCP-Frames den pppd starten zu lassen?
A: Ja, das geht. Man muß den mgetty mit "-DAUTO_PPP" compilieren und dann
in /usr/local/etc/mgetty+sendfax/login.config entsprechend den
Erfordernissen die Zeile
!verbon
#/AutoPPP/ - ppp /usr/sbin/pppd auth -chap +pap login kdebug 7 debug
!verboff
vom Kommentarzeichen "#" befreien und editieren.
Q: Wie kann ich erreichen, daß (i)pppd die Paßwortüberprüfung bei einer
Einwahl anhand von /etc/passwd anstelle von /etc/ppp/pap-secrets durchführt?
A: G. Richter <richter@ecos.de> schrieb dazu am 17. Dez 1996:!br
In /etc/ppp/pap-secrets muß für jeden User folgende Zeile eingetragen
werden, wenn Du nur bestimmte User zulassen willst:
!verbon
<login-name> * ""
!verboff
oder, wenn alle User dürfen, einfach:
!verbon
* * ""
!verboff
[Letzteres kann auch erreicht werden, wenn die Datei pap-secrets gar nicht
existiert - die Red.]!br
Der ipppd sollten in beiden Fällen u.a. mit den Optionen "login" und
"auth" gestartet werden.
Q: Wie erreiche ich, daß sich mehrere Personen gleichzeitig bei mir einwählen
können?
A: Es müssen genausoviele gettys bzw. Netzinterfaces konfiguriert werden, wie
sich Personen gleichzeitig einwählen können. Diese gettys bzw.
Netzinterfaces können auch auf die gleiche MSN eingestellt werden, dann
können mehrere Personen auf derselben MSN einwählen (solange B-Kanäle
vorhanden sind). Es darf aber immer nur maximal ein getty auf ein
ttyI*-Device angesetzt werden. Siehe auch die Frage "Wie kann ich mehr als
ein ippp*-Device verwenden".
Q: Kann ich auf nur !u1einer!u0 MSN sowohl Kunde mit einem getty
(Modememulation) als auch welche mit dem Netzwerk bedienen?
A: Gernot Zander <hifi@scorpio.in-berlin.de> schrieb dazu am 7. Nov 1996:!br
Ja. Zum einen reicht die MSN des _Kunden_, wenn die Netz-Interfaces auf
secure on stehen, die werden zuerst bedient, und Kunden, die mgetty sehen
wollen, sind da ja nicht eingetragen.!br
Zweitens kann man mgetty auch dazu bringen, die ersten verzweifelten
ppp-Versuche zu erkennen und direkt (i)pppd loszufeuern, wobei ich jetzt
nicht weiß, ob das mit isdn auch geht, für Modem soll's jedenfalls gehen.!br
Sonst kannst du noch versuchen, isdn4linux die HLC's beizubiegen, mußt dann
aber die Kunden überzeugen, die auch richtig einzustellen. Aber erstens
wird reichen, solange du keine Leute hast, die mit einer MSN mal das eine
und mal das andere wollen.
Q: Kann man den Vorteil des Mehranlagenanschlusses (eine MSN für alle ISDN-
Ports) auch mit mehreren Mehrgeräteanschlüssen hinbekommen?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu am 7. Nov 1996:!br
Also lt. diversen Artikeln in den Newsgroups gibt es das auch für
Mehrgeräteanschlüsse, allerdings wissen das die meisten Telekomiker nicht
und es geht auch nicht bei allen Vermittlungsstellen.!br
[Das nennt sich dann !u1Bündelanschluß!u0 - Red.]
!old
Q: Wenn eine Fritz!-Card bei mir mit X.75 anruft, stürzt Linux ab. Was
kann man tun?
A: Karsten Keil <keil@temic-ech.spacenet.de> hat einen neuen Treiber (den
"HiSax-Treiber") geschrieben. Der enthält einen entsprechenden Bugfix.
Siehe auch Frage Allgemeines|HiSax und Abschnitt HiSax-Treiber.
!old
Q: Eine AVM (A1 oder B1) kann sich nicht mit X.75 bei mir einwählen, weder
unter Win95 noch unter OS/2?
A: Mit der alten Version des Teles-Treibers ist dies ein bekanntes Problem,
siehe letzte Frage. Das ist jedoch mittlerweile im HiSax-Treiber gelöst.
Von Karsten Keil <keil@temic-ech.spacenet.de> wurde schon ein Patch für
den alten Teles-Treiber gepostet.
!old
Q: Wie kann ich eine Fritz!-Karte bei mir anrufen lassen?
A: Solange weder einer der neueren HiSax-Treiber verwendet noch der Patch von
Karsten Keil <keil@temic-ech.spacenet.de> für den Teles-Treiber
eingespielt wurde: nur per hdlc - versucht die Karte, sich per X.75
einzuwählen, bleibt isdn4linux gerne hängen. Deshalb sollte man für
Fritz!-Karten auch eine eigene MSN mit hdlc bereitstellen.
Hinweis von Roland Rosenfeld <roland@spinnaker.rhein.de>: Wer seine drei
MSNs verplant hat, kann mit den Dienstekennungen tricksen, z.B. so:
!verbon
MSN Analog Digital
=== ====== =======
1 Voice + ISDN-Anrufbeantworter HDLC-PPP
2 Voice (Mutter) Netz-Interface
3 Modem/Fax X.75
!verboff
Wer Lust hat, kann bei MSN 2 auch noch einen weiteren ISDN-Anrufbeantworter
aufschalten, der einen anderen Text bringt...
!old
Q: Welche Betriebssystem-unabhängige ISDN-Router gibt es?
A: Sakari Aaltonen <sakari@picea.hut.fi>:
!verbon
Von Routern mit 1 BRI scheint es jede Menge zu geben, die wenigen mit
mehr sind recht teuer (Cisco 4000 mit vier Anschlüssen etwa DM
15000.--, Ascend Pipeline 400: ?).
!verboff
Jürgen Goeritz <juergen@bart.simpson.inka.de>:
!verbon
ISDN-Router mit 4xBRI gibt es auch noch preiswerter von einem
deutschen Hersteller - siehe !link http://www.conware.de/;
!verboff
Jochen Wiedmann <Jochen.Wiedmann@Neckar-Alb.de>:
!verbon
Ein Banzai! könnte auch helfen. Als Hardware tut's jeder beliebige PC
mit (z.B.) teles-Karten, die Software kostet so um die 800-1000 DM.
Ich persönlich mag Banzai!-Router überhaupt nicht wegen Ihrer
schlechten Diagnosemöglichkeiten, insbesondere ist Fernwartung so gut
wie nicht möglich (es sei denn, man hat die SNMP-fähige Version, aber
die kostet dann gleich einiges mehr). Aber wenn sie laufen, laufen sie
stabil und im Unterschied zu Cisco's können sie einen echten Callback.
Von Cisco gibt es als Alternative noch die Cisco 2503 für etwa 5000
DM, die zwar nur einen BRI-Port hat, aber dafür zwei serielle
Schnittstellen, an die man einen TA (je etwa 800 DM) hängen kann.
Schließlich kann man last, not least in den saueren Apfel beißen und
sich mehrere Cisco 1003 antun (ca. 2000DM pro Stück). Falls Geld keine
gar so dringende Rolle spielt, würde ich persönlich die letztere
Variante bevorzugen: Ich mag Cisco's einfach. :-)
!verboff
Winfried Haug <haug@seicom.net>:
!verbon
Also du solltest dir eben überlegen, WAS dir am wichtigsten ist:
(1) Geld sparen
(2) Zeit sparen
Für (1) gibt es 2 Lösungen:
- Banzai! (heißt jetzt übigens Flux oder Concorde..)
-> !link http://www.concorde.de/; (von cls: !link http://www.cls.de/;)
-> !link http://www.flux.de/; (von INS: !link http://www.ins.de/;).
Basiert auf mind. einem 386er und routet eben Ethernet -> ISDN,
tut mit vielen Karten, die Programmierer arbeiten m.w mit Teles.
Nachteil: nicht sauber fern-konfigurierbar, außer du kauft die SNMP
Option dazu, was die Sache aber teurer und entsprechend
unattraktiver macht..
- ISPA + PCROUTE
-> !link http://www.biochem.mpg.de/~heha/;
benötigt auch einen PC (tut auch schon mit einem 286er). Hat deutlich
weniger Optionen wie Banzei, Flux, Concorde etc. ist ebenfalls gar
nicht fernbedienbar, läuft dafür aber bombenstabil.
PCROUTE kostet gar nix, ISPA inzwischen 70.-, ggf. findest du auch
noch die Version 2.41 die auch ohne key unlimited läuft.
Beide Lösungen unterstützen so ziemlich alle ISDN Protokolle (u.a
diverse HDLC Varianten etc..). Unterstützung für SPVs (bald eh
obsolet) und D64S ist zumindest f. Teles-Karten da (kommt auch die
CAPI drauf an, nicht auf die Software). Alte PCs kriegst du ja schon
für <1.000 DM, die Teleskarte kostet nicht die Welt nur die Flux,
Concorde Software wird doch recht teuer wenn man da SNMP dazu kauft
-> du bist dann auch bald bei 2.000.- und dann kann du lieber gleich
'ne cisco1003 kaufen..
(2)
Wenn du nicht basteln willst, nimmst du entweder 4 einnzelne
Cisco1003 Router, die gibts so ab 2300.- und du bist mehr oder weniger
alle Sorgen los (mal von diverse IOS-Bugs abgesehen..). Dummerweise
können CISCO Router kein "richtiges" Callback... Und als Protokoll nur
PPP (wobei es IOS-Versionen gibt, die daß nicht sauber machen!) und
CISCO-HDLC.
Wenn du 4 BRI brauchst -> CISCO 4000, dann solltest du aber gleich
das 8-fach BRI kaufen, kostet nur knapp 2.000 DM weniger. Dann mußt
du aber deutlich mehr als 10.000.- investieren..:-(
Andere Variante: ELSA LANCOM MPR, kostet auch < 2.000 DM, kann
Callback, diverse Protokolle (HDLC, X.75, PPP) und ist recht nett zu
konfigurieren. Auf der Interop wurde ein Shiva ISDN Router mit a/b
Wandler für 1600 DM vorgestellt, damit wärst du bei 4 BRI Ports bei
etwas über 6000 DM...
Dann gibts noch etliche Hersteller die einfach BRI-Router im Programm
haben (Preistendenz unter 2.000 stark fallend..), z.B ASCEND, MIRO
usw.. Wenn du unbedingt 4fach BRI haben willst, gibts eigentlich nur
die Wahl zwischen Cisco und Ascend..
äh.. und weil du nach Ascend gefragt hast, hier habe ich noch ne
Preisliste von ascend gefunden (juli96), der max400 OHNE BRI Port
kostet schon mal 15.750.-, das 4-fach BRI schlägt dann nochmal mit
11.250 DM zu Buche... ich denke damit erübrigt sich ascend..:-(
Falls dir eine PC-Lösung nicht widerstrebt, könntest du noch netGW von
netcs verwenden (!link http://www.netcs.com;). Das ist eine Software
für SCO, AIX, Sun u.a und basiert bei PCs z.B auf den Karten von Diehl
ISDN. netGW dürfte mit weitem Abstand die meisten Protokolle und
Optionen bieten, dafür mußt du dich mit einem PC und den damit
verbundenen Probleme anfreunden. So ein SCO-Lösung mit 4fach ISDN
Karte + Software kostet aber auch so an die 10.000 DM.
Wir haben inzwischen fast alle Banzai! und Co rausgerümpelt, weil sie
auf Dauer schlecht fern-administrierbar sind und eben bei weitem nicht
die Stabilität von Cisco oder anderen Stand-alone Routern haben..
Letztendlich ist es eben eine Entscheidung ob die lieber etwas mehr
Geld ausgeben willst, und dann läuft es auf Anhieb, oder du baust dir
so einen PC Router zusammen und bastelst eben rum... daß muß jeder für
sich selber entscheiden... Wobei Teles einen echt an den Rand der
Verzweiflung treiben kann, da die CAPI Versionen oft massive Probleme
haben und man als 08/15 User an alte CAPI-Versionen nicht ohne
Probleme ran kommt. Der Support bei Teles ist nicht gerade berauschend
(0190-8er Nummer!). Dann kann man ruck-zuck 20-30 DM vertelefonieren
ohne eine Lösung des Problemes erhalten zu haben...
!verboff
Christian Kratzer <ck@toplink.net> ergänzte am 19. Okt 1996:
!verbon
Cisco ist sogar billiger als Linux wenns um PRI geht. Oder schon mal
geguckt was PRI Karten für PC's kosten. ;) Dann brauchte mann auch
noch Treiber dafür etc... Da ist mann schnell deutlich über 20k.
Eine 4000'er mit PRI bekommt man schon für 12-15kDM. Und wenn man
versucht die Sache mit einzelnen S0's zu lösen wird's erst recht
teuer...
Für Dialup bis 4 x BRI (was halt in eine kiste geht) ist Linux
allerdings vom Preis/Leistung her unschlagbar. Auch eine 2'te Kiste
macht noch Sinn.
Dann sollte man sich langsam mal nach einer PRI Lösung umsehen.
Beides läuft bei uns stabil und problemlos.
!verboff
!3Standleitungen
!old
Q: Wie funktionieren Verbindungsauf- und -abbau bei D64S ohne Signalisierung?
A: Winfried Haug <haug@seicom.net> schrieb dazu am 22. Sep 1996:
!verbon
Da werden die Daten einfach rausgeschickt! Wenn du an einer D64S oder
2MB Leitung das eine Ende abklemmst, sagt dir dein Router, daß die
Leitung selber "up" ist. Du hast - außer mit Ping o.ä. - KEINE
Möglichkeit, zu erkennen, ob die Leitung weg ist oder nicht. (Bei ISPA
z.B drehen sich die out-going "Rädchen"....)
Das Einzige was du von deiner Seite messen kannst, ist der Loop zur
nächsten Vermittlungsstelle. Wenn du statt Bchan1 auf Bchan2 gehst und
Daten rausschickst, müßten die wieder zurückkommen. Das sieht man dann
an der Statistik. Dies setzt voraus, daß die Telekom in der Vstelle den
nicht benutzen Bchan auch so geschaltet hat. Damit haben wir der
Telekom mal nachgewiesen, daß die Leitung selber einen Kabelbruch
hatte...
Was dir allerdings passieren kann, wenn du nicht automatisch davon
ausgehst, daß die Leitung da ist: wenn die Gegenseite noch nicht "up"
ist, fließen keine Daten. Bei ISPA ist die z.B der Fall, weil der mit
der Pseudo-Rufnummer 1tap bzw. 2tap und erst beim ersten Datenpaket
loswählt und das Protokoll hochfährt. Einkommende Pakete werden
schlicht ignoriert, u.a auch wegen der fehlenden Signalisierung....
Nur bei S01 oder S02 Leitungen hat du einen D-Kanal und kannst was zum
Signalisieren nehmen, die meisten mir bekannten Lösungen nutzen aber
diese 16kb ebenfalls zur Datenübertragung und fahren dann 144kb statt
128kb. Also versuch' es einfach mal, indem du die Daten losschickst,
in der Annahme die Leitung ist vorhanden :-) im schlimmsten Fall laden
die Daten im Nirvana...
!verboff
Q: Kann ich mit meiner Teles-Karte erfolgreich eine D64 Standleitung
ansteuern?
A: Ab HiSax-Treiber 1.5/2.0 unterstützt isdn4linux auch D64 Standleitungen
(mehr zum HiSax-Treiber siehe oben). Die Konfiguration erfolgt wie normal
mit folgenden Besonderheiten. HiSax wird im leased Mode betrieben, etwa:
!verbon
/sbin/telesctrl HiSax 5 0
!verboff
falls als beim Laden des HiSax "id=HiSax" angegeben wurde. Wichtig sind
nun neben der normalen Konfiguration folgende Befehle:
!verbon
# binde Interface an 1. BChannel (,1 fuer 2.)
/sbin/isdnctrl bind HiSax,0
/sbin/isdnctrl eaz isdn0 1
/sbin/isdnctrl addphone isdn0 out 2
/sbin/isdnctrl addphone isdn0 in 3
!verboff
falls "isdn0" als Interfacename genommen wurde. Das Interface muß weiter auf
"up" gesetzt werden und eine Route darauf gelegt werden. Es gibt eine
genauere Anleitung hierzu, die Karsten Keil <keil@temic-ech.spacenet.de>
in der Mailingliste schon ab und zu gepostet hat.!br
Marcus Graf <marcus@www.weinheim.de> hat seine Erfahrungen als kurze Info
auf !link http://www.weinheim.de/isdn/index.html; abgelegt.
Organization: Marcus Graf Hard- & Software
To: usenet@mail.omikron.de (news), isdn4linux@hub-wue.franken.de
Date: Sat, 25 Jan 1997 17:31:11 +0100
Q: Kann ich zwei Kisten mit einer ICN-Karte über eine D64s-Standleitung
verbinden? Wie? Wo gibt's Dokumentation?
A: Torsten Hentschel <Torsten.Hentschel@DInet.de> schrieb dazu am 2. Jan 1997:
!verbon
Das geht sicher. Haben wir hier so im Einsatz. Funktioniert
auch stabil (Kernel >2.0.26 ist notwendig, da sonst ggf.
Routerkomplettstillstand). Nur, wenn Du den Stecker des Kabels
zum Terminaladapter rausziehst und wieder reinsteckst oder
Dir die Telekom da einen Aussetzer fabriziert, dann mußt
Du auf beiden Seiten einmal (oder zweimal) auflegen lassen,
damit die Leitung wieder steht. Das kann man notfalls mit einem
"ping" und einem "isdnctrl hangup" per cron machen lassen.
Weitere Doku außer der zum Sourcecode kenne ich nicht.
Werde aber gerne bei weiteren Fragen helfen, da man mir
schliesslich auch geholfen hat.
Es gibt dabei mehrere Dinge zu beachten: LEASEDx ist die
innumber auf dem Device; eine outgoing number ist nicht
notwendig, da der Kernel (oder die Firmware, genau weiss
ich das nicht) pseudomäßige, eingehende Rufe generiert,
solange niemand "abgehoben" hat. Bei LEASEDx ist das kleine
"x" durch die Nummer des S0-Interfaces zu ersetzen.
Wir haben in den betreffenden Routern jeweils vier
Interfaces (sie werden mit 0, 1, 2, 3, ... durchgezählt),
weshalb ich auf dem letzten Interface die LEASED-line
betreibe. Das macht Sinn. Denn die anderen drei Interfaces
dienen für 6 B-Kanaele mit dial-up-Leitungen und es wird
vom Kernel bei rausgehenden Rufen immer das erste freie
Interface gesucht und dort rausgewählt. Wenn man dann
die Leased Line auf das Interface 0 legen wuerde, wäre
der zweite B-Kanal der Standleitung ja scheinbar (und
nur scheinbar) noch frei. Der Kernel merkt aufgrund der
aktiven Karte noch nichtmal, daß kein D-Kanal zum Wählen
an dem Interface dran ist und wählt und wählt und wählt.
Zur Vorsicht habe ich aus dem Grunde auch ein weiteres
ISDN-Netzinterface kreiert und exklusiv auf dem scheinbaren
zweiten B-Kanal der Standleitung gebunden, damit bei 6 belegten
Dialout-Lines nicht auch noch auf der Standleitung ein
Waehlversuch gestartet wird.
Noch ein wichtiger Stolperstrick ist, daß bereits der erste
reingehende Ruf, der pseudomäßig generiert wird, vom
ISDN-Netzinterface abgenommen werden muss (sonst klappt
wieder erst der Dritte und dann erst wieder der Fuenfte;
genau weiss ich nicht warum, habe nur so eine Vermutung
daß das an den beiden B-Kanaelen liegt, fuer die abwechselnd
ein Ruf generiert wird; eine D64s hat aber nur einen B-Kanal).
Das sofortige Abnehmen erreicht man wie folgt:
* Modul für die ICN-Karte laden und konfigurieren (firmware
laden, bus-reject, ...) ABER NOCH KEIN "icnctrl -d XXX leased"
* Netzinterfaces des Kernel generieren mit innumber LEASEDx
und allem anderen Schnickschnack (IP-Adresse, ...).
Die Bindung zum entsprechenden S0-Interface nicht vergessen.
* JETZT: icnctrl -d XXX leased
Das Netzinterface muß also schon up sein, wenn "icnctrl -d XXX leased"
abgesetzt wird. Denn mit diesem Befehl wird sofort der erste Ruf
generiert und dann kann er gleich angenommen werden - und schwup
steht die Leitung.
!verboff
G. Richter <richter@ecos.de> schrieb noch zusätzlich am 3. Jan 1997:!br
Bei uns läuft das (mit einem CISCO Router als Gegenstelle) seid fast zwei
Monaten problemlos.!br
Zu beachten ist, daß die eaz auf 1 gestellt wird und mit icnctrl die
Leitung auf leased umgestellt wird, der Rest bleibt wie bei der Wahlleitung
(außer Telefonnumer und timeouts)!br
Ein Beispielscript findet sich unter
!link http://www.rosat.mpe-garching.mpg.de/~web/ISDN.html;
!old
Q: Kann ich auf einer ISDN-Leitung den einen Kanal als Standleitung und den
anderen als Wählleitung benutzen?
A: Tomas Pospisek <tpo@spin.ch> schrieb uns:
!verbon
Ja, das geht (zumindest in der Schweiz geht's). Achtung daß man den
richtigen Kanal erwischt ;)
!verboff
!old
Q: Ich hab 'ne Standleitung mit 'ner ICN aufgebaut, jedoch sind die
ping-Zeiten zu lang.
A: Fritz Elfert <fritz@wuemaus.franken.de> schrieb dazu:
!verbon
TIMER_BCREAD = Intervall für B-Kanal-Poll (Einheit = jiffies = 20ms)
TIMER_DCREAD = Intervall für D-Kanal-Poll dito
FLAG_RBTIMER (und andere FLAG_...) entsprechende funktion aus dem
Haupt Timer dispatcher aufrufen.
!verboff
Tomas Pospisek <tpo@spin.ch> schrieb uns:
!verbon
Den BCREAD hab ich wegen der Ping-Zeiten runtergesetzt, (war vorher
auf 3) [Seit 2.0.16 auf 1 - die Red.]
Die Auflösung des timers in Linux ist nur 20ms, so daß
ICN_TIMER_BCREAD=0 nichts bringt. Außerdem ist das Problem eher
kosmetischer Natur. Beide (Sende- und Empfangs-) Routinen leeren
jeweils die Queue, d.h. wenn richtig Traffic gemacht wird, wird bei
jedem Zyklus nicht immer nur ein Fragment übertragen, sondern bis zu
16. Der Karten-Puffer faßt 16 Fragmente. Nur bei ping und Co. wird das
sichtbar. FTP (oder auch Z-Modem über ttyI) kommen mühelos auf
nahezu 8k cps. Außerdem werden bei jedem Zyklus !u1beide!u0 Richtungen
bedient, die Rechnung 20ms-receive + 20ms-send stimmt also nicht.
Abgesehen davon 40ms ist ein wirklich guter Wert. Viele ISDN-Router
(auch i4l vor der Reduzierung auf BCREAD=1) haben 60ms und mehr.
!verboff
!3SPV
Q: Was ist eine SPV?
A: SPV steht für "semipermanente Verbindung" und ist eine (auslaufende)
Spezialität der deutschen Telekom. Es ist ein Zwischending zwischen
Standleitung und Wählleitung. Wie bei einer Standleitung wird die
Gegenstelle fest eingestellt. Im Gegensatz zur Standleitung wird die
Verbindung jedoch nur bei Bedarf aufgebaut (was sehr schnell geht, viel
schneller als bei einer Wählleitung). Da die Telekom die Leitung
anderweitig verwenden kann, solange sie nicht benötigt wird, ist es
billiger als eine Standleitung.
Q: Wie lange wird es noch SPVs geben?
A: Steffen Sledz <sledz@dgroup.de> schrieb dazu am 5. Dez 1996:
!verbon
Wegen ein paar Klagen vor dem Europäischen Gerichtshof gegen
die Telekom wohl bis Ende 1997. Wurde in den ensprechenden
Newsgroups gepostet und es könnte vielleicht auch was bei
!link http://www.birch.de; zu finden sein (der klagte nämlich).
!verboff
Q: Unterstützt isdn4linux SPVs? Wie?
A: Um die Unterstützung für SPVs einzuschalten, muß vor die gewählte Nummer
ein "S" gesetzt werden. Das funktioniert (recht gut) sowohl in der
Modememulation als auch bei der Definition von Netzinterfaces.
!3Channel Bundling
Q: Channel Bundling? Was ist das und wie kann ich es einsetzen?
A: Isdn4Linux unterstützt in der aktuellen Version zwei Varianten für
Channel Bundling:!br
* !b1Raw Bundling!b0 (Konfiguration von sogenannten Slave-Kanälen)!br
* !b1MPPP!b0 (basiert auf syncPPP)!br
Beide Varianten haben z.Zt. eigene Vor- und Nachteile. Siehe dazu die
nachfolgenden Fragen.
Q: Was ist Raw Bundling?
A: Raw Bundling funktioniert wie Raw-IP, nur eben mit mehreren Kanälen.
Entsprechend erbt es alle prinzipbedingten Vor- und Nachteile von Raw-IP.
Raw Bundling benötigt für jeden benötigten Kanal ein eigenes Netzinterface.
Ein Netzinterface, das sog. Master-Interface, steuert den Verbindungsauf-
und -abbau. Für jeden weiteren Kanal wird ein weiteres, sog.
Slave-Interface konfiguriert, das bei Bedarf automatisch vom
Master-Interface dazugeschaltet wird.
Q: Wie verwende ich Raw Bundling?
A: Das Master-Interface wird wie normal mit
!verbon
isdnctrl addif <master-interface>
!verboff
erzeugt und entsprechend konfiguriert. Für alle benötigten Slave-Kanäle
werden nun entsprechende Slave-Interfaces erzeugt mit dem Kommando
!verbon
isdnctrl addslave <master-interface> <slave-interface>
!verboff
und normal konfiguriert (z.B. "isdnctrl sdelay <slave-interface> <delay>").
Q: Welche Vor- und Nachteile hat die Verwendung von Raw Bundling?
A: Raw Bundling hat zunächst alle Vor- und Nachteile von Raw-IP.
Im Vergleich zu MPPP hat Raw Bundling darüber hinaus den Vorteil, daß
isdn4linux je nach Last selbsttätig die benötigten Slave-Kanäle auf- und
wieder zumacht. Leider gibt es mit Raw Bundling z.Zt. noch erhebliche
Durchsatzprobleme. Siehe dazu die ergänzenden Fragen weiter unten.
Q: Gibt es ein funktionierendes Beispielskript für Raw Bundling?
A: Ja, der FAQ-Redaktion liegt ein entsprechendes Skript von Robert O'Kane
<okane@em.uni-frankfurt.de> vor. Es kann entweder von Robert oder von uns
bezogen werden.
Q: Wie ist der aktuelle Stand mit Raw Bundling?
A: Robert O'Kane <okane@em.uni-frankfurt.de> schrieb dazu am 27. Dez 1996:!br
After starting up 2.0.27 I have started again with channel
bundeling with a bit more success than before.
!verbon
1st: There seems to have been a change in the "BogoCharsPerSecond"
calculations. This now gives values (for me) from 60 ->101.
The values used by the isdn-net code for starting the slaves is
still set to 7000 cps! Needless to say it doesn't see these
values anymore. After setting it to 75, I get the channels
starting again.
2nd: With 1 B-channel, I get 8K /sec (full)
With 2 B-Channels, I get ~14K /sec (~88 % util.)
With 3 B-Channels, I get ~18K /sec (~75 % util.)
With 4 B-Channels, I get ~15K /sec (~50 % util.)
!verboff
All cards Teles 16.3, Euro ISDN, Linux 2.0.27, Libc-5.4.13, binutils
2.7.0.3, Pentium 100 <-> 486DX4/100.!br
This is with rawip/HDLC, 15sec slave delay/ ftp transfer of 100Mb file.
These results are not the most accurate but show the general results.
There was no apparent differnce when using the teles or the HiSax
drivers.!br
While watching the bogo-cps (isdnctrl verbose 4), I can see the
values for each B-channel holding arround 80 until the 4'th B-channel
kicks in. Then the values become erratic.!br
1 channel 101, 2nd 40, 3rd 0(!), 4th 40....!br
Question: How could I check if the isdn-net interface is being
starved or if the scheduling algorith is just not being too smart at
these bit-rates?!br
Has anyone else done/had these kinds of experiences ?
Robert O'Kane <okane@em.uni-frankfurt.de> ergänzte am 1. Feb 1997:
I now use 2.0.28 and HiSax 1.5 with NO difference in bandwidth.
(I also choose 70 for the CPS trigger and 30 seconds slave delay).
Could you also try setting isdnctrl verbose 4 and watch the bogocps
calculations for the channels during a ftp transfer. What I think you
will see is that some of the channels don't send at full speed. I think
this is a problem with the kernel/IRQ interaction not feeding the
channels enough data. Could it be that the kernel buffers are not large
enough for more that 3 channels of data? This could be an explaination
of why the user-space PPP program can get more data our and into the
kernel.
Q: Was ist MPPP?
A: MPPP oder MP oder MPP (Warnung: MP ist auch ein Acronym für 'Multi
Processor') steht für Multi Point to Point und bedeutet die Bündelung
mehrerer Kanäle zu einem logischen Strom. Es ist eine Variante des normalen
syncPPP und erbt entsprechend alle dessen prinzipbedingten Vor- und
Nachteile.!br
Da der ipppd alle Kanäle selbst verwaltet, wird - im Gegensatz zu Raw
Bundling - lediglich ein Netzinterface benötigt, das als Schnittstelle zum
ipppd dient. Anliegenden Daten verteilt der ipppd nach dem
Robin-Round-Verfahren auf alle verfügbaren Kanäle. Diese Kanäle müssen
nicht notwendigerweise ISDN-Kanäle sein, vielmehr können theoretisch auch
reine Modemverbindungen oder gar ISDN-Kanäle mit Modemverbindungen gemischt
verwendet werden. Im folgenden wird jedoch allein auf die Verwendung von
ISDN-Kanäle eingegangen.
Q: Wie benutze ich MPPP?
A: Zunächst muß für den ipppd ein (normales) Interface definiert werden (z.B.
"isdnctrl addif ippp0" usw.). Der ipppd muß beim Start mit der Option "+mp"
aufgerufen werden, damit er MPPP verwendet. Zum Aufbau einer Verbindung muß
zuerst der "Master" oder Initial-Ruf aktiviert werden (z.B. mit isdnctrl
dial). Danach können die Slave-Kanäle mit dem Kommando
!verbon
isdnctrl addlink <device>
!verboff
hinzugefügt, und mit
!verbon
isdnctrl removelink <device>
!verboff
wieder geschlossen werden (siehe i4l-Anleitung für mehr Informationen). In
der Datei etc/rc.isdn.syncppp.MPPP im isdn4k-utils-Paket findet sich
eventuell ein Beispielscript (bei einigen i4l-Versionen fehlt sie leider).
Q: Welche Vor- und Nachteile hat die Verwendung von MPPP?
A: Nachteilig ist, daß die Slave-Kanäle "manuell" aktiviert werden müssen. Der
ipppd kann nicht lastabhängig selbst Slave-Kanäle auf- bzw. wieder zumachen.
Die normalen automatischen Funktionen des ipppd funktionieren teilweise
unzuverlässig (auto hangup) oder gar nicht (auto dial).
Dies ist anders bei anderen Einbettungsverfahren (encapsulations). Dafür
ist der Durchsatz recht gut (ca. 30 KB/s bei 4 Kanäle).
!old
Q: Ich habe MPPP ausprobiert, aber es geht nicht. Im Debug-Log steht ungefähr
!verbon
...
rcvd [0][proto=0x3d] c0 00 00 00 80 fd 01 01 00 0a
...
sent [0][LCP ProtRej id=0x2 00 3d c0 00 00 00 80 fd 01
...
!verboff
A: Hier ist vergessen worden, MPPP/RFC1717-Unterstützung im ISDN-Subsystem
einzucompilieren. Recompilieren Sie den Kernel mit gesetzter Option.
!old
Q: Ich nutze MPPP. Leider hängt es, wenn nur ein einziges Packet verloren
geht.
A: Szemethy Tivadar <tiv@sch.bme.hu> schrieb dazu am 11. Okt 1996:
!verbon
Ich habe einen Schreibfehler in Kernel 2.0.20 gefunden, der jedoch auch
in neueren Kernels existiert.
Wenn man die folgende Zeile in isdn_ppp.c:
(function isdn_timer_funct())
#if (defined CONFIG_ISDN_PPP ) && (defined ISDN_CONFIG_MPP)
in
#if (defined CONFIG_ISDN_PPP) && (defined CONFIG_ISDN_MPP)
ändert, wird's mit MPP Verbindung eher klappen.
Ohne diese Änderung hängt sich MPP schon beim Verlust eines einzigen
Paketes auf.
!verboff
[Der Bugfix wird inzwischen wohl seinen Weg ins Kernel gefunden haben - die
Red.]
!2Troubleshooting
!3Allgemein
Q: Mein isdn4linux funktioniert nicht! Wie gehe ich am geschicktesten bei der
Fehlersuche vor?
A: Es empfiehlt sich folgende Vorgehensweise:
!verbon
1. Als erstes sollte überprüft werden, ob beim Booten alles
funktioniert.
Gibt es ungewöhnliche Fehlermeldungen in /var/log/messages?
Sind nach dem Booten alle Programme aktiv, die gestartet werden
sollten (mit ps überprüfen, bzw. fuser /dev/xxx)?
HiSax wird nicht starten, wenn irgendetwas nicht funktioniert.
Der alte Teles-Treiber dagegen kann durchaus scheinbar fehlerlos
gestartet werden, ohne daß er tatsächlich funktioniert.
Siehe dazu die Fragen unter Troubleshooting|Teles.
2. Als zweites ruft man sich selbst mit dem Telefon an. Die
Telefonnummer sollte in /var/log/messages angezeigt werden (in
einer Message nach dem Muster: "isdn_tty: call from XXX -> YYY
ignored"). Ansonsten wurden die Treiber vielleicht schon beim
Booten nicht korrekt gestartet?
3. Als drittes werden die eigenen Experimente mit der Modememulation
fortgesetzt. Aufgrund der unterschiedlichen Dienstekennung kann man
leider weder das eigene Fax noch das eigene Telefon zum Klingeln
bringen, wir müssen anders vorgehen. Wir öffnen auf zwei
verschiedenen Konsolen "minicom -s" als Root und setze die erste
Konsole in "Serial Port Setup|Serial Device" auf /dev/ttyI0, die
zweite auf /dev/ttyI1. Danach "Exit" anwählen und die
Modememulation jeweils mit "ATZ" und "AT&Exxxxxxx" (xxxxxxx ist die
eigene MSN ohne Vorwahl - das, was bei Schritt 2 in
/var/log/messages als YYY angezeigt wurde) initialisieren.
Jetzt kann's losgehen: auf der ersten Konsole wählt man seine
eigene Telefonnummer mit ATDxxxxxxx an. Auf der zweiten Konsole
sollten nun "CALLER NUMBER: xxxxxxx" und "RING" angezeigt werden.
Nimmt man nun den Anruf auf der zweiten Konsole mit "ATA" an,
sollte auf beiden Konsolen "CONNECT 64000/X.75" angezeigt werden,
danach kann man sich gegenseitig Zeichen auf die jeweils andere
Konsole schreiben (um auch die eigenen Zeichen zu sehen, muß man
das lokale Echo einschalten).
4. Als viertes kann man nun eine bekannte ISDN-Mailbox anwählen. Wer
keine in der Nähe hat, kann sich auch bei Gernot einwählen, siehe
Frage "Gibt es Rechner, die einen Gastzugang bieten, wo ich mein
isdn4linux testen kann?".
Bei Problemen mit der Modememulation siehe
Troubleshooting|Modememulation.
5. Als fünftes kann man sich nun an die Konfiguration der
Netzinterfaces sowie ipppd wagen. Das bereitet Anfängern (und nicht
nur denen) erfahrungsgemäß die meisten Probleme. Wer sich die Sache
etwas erleichtern will, und mit asyncPPP zufrieden ist (zur
Bedeutung von asyncPPP siehe Frage "pppd, ipppd, asyncPPP, syncPPP
- was ist das? Was soll ich einsetzen?"), kann den normalen pppd
über die Modememulation (also /dev/ttyI*) laufen lassen.
!verboff
Ansonsten empfiehlt es sich sehr, eine Howto-Anleitung/Beispielskripte zu
verwenden (siehe Frage "Wo kann ich Skripte und andere Information fuer die
Konfiguration von i4l finden?"). Zum Testen kann man den eigenen Provider
oder auch einen der Gastzugänge benutzen (siehe Frage "Gibt es Rechner, die
einen Gastzugang bieten, wo ich mein isdn4linux testen kann?"). Letzteres
hat den Vorteil, daß man sich die Logfiles sowie eine funktionierende,
stabile Konfiguration ansehen kann. Wenn z.B der Zugang mit ipppd
fehlschlägt, kann man sich per Anwahl über die Modememulation (oder gar
mit einem konventionellen Modem) darüber informieren, was auf der anderen
Seite vorgeht. Nicht jeder Provider ist so kooperativ... :-)
!old
Q: Ich habe Probleme beim Compilieren von isdn4k-utils-2.0. "ncurses.h" bzw.
"panel.h" wird nicht gefunden. Es existiert aber eine "curses.h".
A: Man muß einen Link setzen:
!verbon
ln -s /usr/include/curses.h /usr/include/ncurses.h
!verboff
Andreas Herbst <herbst@wiwi.uni-frankfurt.de> schrieb dazu:
!verbon
Ich habe allerdings keine neuere Distribution gesehen (weder Slackware
noch Debian), die ein vollständiges ncurses packet besitzt.
/usr/include/ncurses.h ist vorhanden - manchmal heist es halt
curses.h, aber das include File panel.h muß man sich trotzdem aus
einem Original ncurses Paket holen.
!verboff
Thomas Baetzler <bath0011@FH-Karlsruhe.de> antwortete darauf:
!verbon
Bei Debian sollte man halt neben ncurses auch ncurses-dev installiert
haben, wenn man selbst etwas darauf aufsetzendes compilieren will.
bash$ dpkg -S panel.h
ncurses3.0-dev: /usr/include/panel.h
!verboff
[Analog sollte man im Makefile LDFLAGS von "-lcurses" auf "-lncurses"
umstellen - die Red.]
Q: Warum klingeln weder mein Telefon, noch mein Fax, wenn ich sie mit
isdn4linux anwähle?
A: Isdn4linux setzt "digitale Daten" als eigene Dienstekennung, wenn es
irgendwo anruft. Die Vermittlungsstelle wird solche Anrufe nicht auf analoge
Geräte wie Telefon oder Fax weiterleiten.
!old
Q: Wenn i4l einen B-Kanal benutzt, ist der andere blockiert (reingehend wie
rausgehend)
A: Dieses Verhalten ist typisch für ein vertauschtes a/b-Kabeladernpärchen.
Einige NTBAs von Quante hatten eine falsche Beschriftung. Bei ihnen trat
genau das beschriebene Verhalten auf, wenn die Tk-Anlage am NTBA, die
ISDN-Karte aber über die Federklemmen angeschlossen war. Sobald ein
Gerät den Bus aktivierte, kam das andere nicht mehr zum Zuge. Siehe auch
noch nächste Frage.
Q: In der Anleitung zu meinem NTBA steht ein vertauschtes a/b-Kabeladernpärchen
hätte keinen Einfluß auf die Funktionsweise?
A: Dazu schrieb Gernot Zander <hifi@scorpio.in-berlin.de> am 21. Jan 1997:
Aber nur, wenn bei allen Geräten a/b oder a2/b2 vertauscht sind.
Wenn die Geräte jeweils einzeln gehen, ist die Zuordnung von
Sende- und Empfangs-Pärchen schonmal richtig.
Q: Wie kann ich austesten, ob bei mir ein a/b Kabeladernpärchen vertauscht ist?
A: Dazu schrieb Karsten Keil <keil@temic-ech.spacenet.de> am 21. Jan 1997:!br
Ganz einfach ich gehe vom Westernstecker aus:
4 adern sind belegt:
!verbon
| | | |
| | | |
1 2 3 4
!verboff
Dann kanst Du versuchen 1<>4 oder 2<>3 oder beides zu vertauschen..
Nie aeussere mit inneren vertauschen. [Dabei würden RX und TX Leitungen
vertauscht, und nichts ginge mehr - die Red.]!br
Gernot Zander <hifi@scorpio.in-berlin.de> schrieb zum gleichen Thema
am 21. Jan 1997:!br
Ich gehe mal davon aus, daß du die Teles nicht über die RJ45,
sondern über eine am NT angeklemmte Busleitung angeschlossen
hast. (?). Dann mach die Klappe auf, tausche a1 gegen b1.
Probieren. Geht's nicht, zurück, und a2 gegen b2 tauschen.
Geht auch das nicht, beide tauschen, wobei ich dann eher
den Verdacht hätte, daß das RJ45-Kabel vom Telefon verdreht
ist (das tauscht dann nämlich _beide_). Solange {a|b}1 und
{a|b}2 dabei erhalten bleibt, kann auch nichts kaputt gehen.
Willst du sichergehen, dann vor dem Anstecken der Geräte
zwischen Pin 4 und 5 bzw. 3 und 6 der Dose messen, dort
darf keine Spannung liegen, zwischen 3 und 4 bzw. 6 und 5
je 40 V, Plus an 6 bzw. 3.!br
Waren doch beide Geräte per RJ45 angestöpselt, dann ist eins
der Kabel verdreht. Das passiert in der Regel dann, wenn einer
der RJ45-Stecker verkehrtrum angequetscht wurde (a1/b1 liegen
innen, a2/b2 außen, die Zuordnung Sende-/Empfangspärchen bleibt
also erhalten), dann brauchst du nur einen neuen Stecker und
natürlich die Quetschzange für RJ45, alten ab, neuen andersrum
drauf.!br
Selbstverfreilich kannst du mit der Kabel-FAQ auch einfach
alles mit einem Multimeter durchprüfen.
!old
Q: Trotz deaktiviertem Anklopfen bekommt ein Anrufer bei mir kein Besetzt,
obwohl weder i4l noch ein anderes Gerät auf diese MSN eingestellt ist.
Selbst wenn alle verfügbaren B-Kanäle durch isdn4linux oder durch einen
anderen Nutzer vergeben sind, bekommt ein weiterer Anrufer kein Besetzt.
Das ist auch dann so, wenn ich den Audio-Support von isdn4linux ausschalte.
A: isdn4linux sendet "ungezogenerweise" als Reaktion auf hereinkommende
Anrufversuche ein ALERT an die Vermittlungsstelle. Dieses wird auch
nicht später durch ein RELEASE zurückgenommen. Deshalb gibt die
Vermittlungsstelle immer ein Freizeichen statt einem Besetztzeichen.
Dazu schrieb Karsten Keil <keil@temic-ech.spacenet.de> am 11. Okt 1996:
!verbon
Da ich gerade keinen Patch zur Hand habe, erklär ichs mal so: in
linux/drivers/isdn/teles/callc.c nach CC_ALERTING_REQ suchen und
diese Zeile auskommentieren. Das sollte dann so aussehen:
if (((chanp->chan & 1) + 1) & chanp->para.bchannel) { /* \
chanp->is.l4.l4l3(&chanp->is, CC_ALERTING_REQ, NULL); */
FsmChangeState(fi, ST_IN);
if (chanp->debug & 1)
Das ist die saubere Lösung. Für Datenverbindungen wird kein ALERT
benötigt oder erwartet. Für die Voice Anwendungen ist das Alert nur
dann wichtig, wenn man mehrere "Klingelzeiten" abwarten möchte.
!verboff
Inzwischen hat Karsten dem FAQ-Team geschrieben (14. Okt 1996):
!verbon
Es gibt [bei HiSax-Versionen<1.2 - die Red.] kein Alerting mehr.
!verboff
Ein verbesserter HiSax ist herausgekommen (Version 1.2). Dieser hat
ein funktionierendes Alerting.
!old
Q: Wenn der Router aktiv ist, bekommen anrufende Kunden ein Freizeichen, auch
wenn gerade ein Supportgespräch geführt wird. Dies erweckt den Eindruck,
daß die Mitarbeiterin nicht ans Telefon geht.
A: Von Jan den Ouden <denouden@groovin.xs4all.nl> wurde dazu vor kurzem ein
Patch geposted. Man suche im Archiv oder wende sich an Jan.
!old
Q: Warum kann ich meine ISDN-Module nicht mehr entladen ("isdn: Device or
resource busy"), obwohl ich alle ISDN-Anwendungen geschlossen habe?
A: Greift noch irgend ein Programm auf ein ISDN-Device zu?
Sind auch alle Getty's entfernt?!br
Läuft noch isdnlog, imon, iprofd etc?!br
Vielleicht liegt noch ein Route auf dem Interface und ist noch nicht
mit "route del xxx" gelöscht?!br
Eventuell wurde aber auch das Interface ippp0 nicht auf down
gesetzt und konnte deswegen nicht entfernt werden. Das kann daran liegen,
daß der ipppd nicht auf das Signal 15 reagiert und mit "kill -9
<ipppd pid>" beendet wurde. Dabei bleibt vermutlich das interface ippp0
im Zustand "up".!br
Hier ist auch ein "fuser -v /dev/isdn* /dev/ippp* /dev/cui* /dev/ttyI*"
sehr aufschlußreich. Dieses hilfreiche Programm zeigt an, welcher Prozeß
die angegebenen devices verwendet.!br
Q: Ich habe jetzt sicher alle ISDN-Anwendungen beendet. Trotzdem kann ich
manchmal meine ISDN-Module nicht mehr entladen ("isdn: Device or resource
busy")?
A: Solche sporadischen Fehler kann man durch das Einfügen einiger Sleep's
zwischen den Entladebefehlen in den Griff bekommen.
Q: Es klappt immer noch nicht mit dem Entladen. Ich setzt Callbacks ein.
A: Siehe dazu die Frage "Irgendwie kommt der Module-Count bei Callbacks
durcheinander. Wie kann ich jetzt meine ISDN-Modul entladen?" im Abschnitt
"Callback" im Kapitel "Troubleshooting".
!old
Q: Meine Gebührenimpulse Typ A werden nicht korrekt übermittelt, obwohl die
Telekom sagt, daß sie geschaltet seien.
A: Peter Gramlich <peter.gramlich@wiwi.uni-karlsruhe.de>:
!verbon
Manche hatten schon das Problem, daß die Telekom die Gebühren-Info nur
für bestimmte Dienste aktiviert haben. Die müssen das offensichtlich
für jede Dienstart (Voice, Daten, G4-Fax,...) getrennt machen.
!verboff
Q: Meine TK-Anlage erzeugt etwa jede Stunde einen Bus-Reset des internen
S0-Busses, danach nimmt isdn4linux nicht mehr ab?
A: Ab HiSax 1.5 übersteht auch isdn4linux den Bus-Reset.
!old
Q: Meine Ascotel PBX bringt i4l (am internen Bus) zum Absturz.
A: Herbert Rosmanith <herp@wildsau.idv.uni-linz.ac.at> schreibt hierzu:
!verbon
Ich denke, ich habe den Grund dafür gefunden, warum die Ascotel PBX
Linux abschießt. Es ist kein übergroßer "FACILITY"-Frame, wie ich
früher mal schrieb, sondern ein Frame eines unbekannten Protokolls
(0x44, während EDSS1=0x08 und DIS_N0=0x40, DIS_N1=0x41).
[...]
Jan den Ouden <denouden@groovin.xs4all.nl> hat dafür ja schon einen
Patch gemacht, welcher solche Frames einfach mißachtet. Ja, ich *habe*
diesen Patch ausprobiert... aber entweder habe ich irgendwas
fürchterlich falsch gemacht (z.B. Module nicht richtig geladen?) oder
es gab einen anderen Grund für den Crash. Und wieder weiß ich nicht
mehr weiter :-( Ich habe gerade den 2.0.18 ausprobiert und versucht,
einfach einen Hexdunp der unbekannten Frames zu machen anstatt sie zu
interpretieren - und jetzt stürzt die Maschine nicht mehr ab. Und
genau jetzt habe ich 2.0.20 probiert und sie ist auch nicht
abgestürzt. *Schulterzuck*, Konfusion...
Egal, wenn das wirklich nicht der Grund des Crashes ist, denke ich
immer noch, daß Jan's Patch in den ISDN-Standardtreiber eingebaut
werden sollte. Es ist keine gute Idee, daß Frames, die nicht vom Typ
1TR6 sind, voreinstellungsmäßig als EDSS1-Frames interpretiert werden.
Anmerkung: Der Patch, der hierzu gepostet wurde, hat noch einen bösen
Bug: X.75 geht damit nicht mehr!
!verboff
[Mittlerweile sollte der HiSax-Treiber (>=1.5) mit solchen Problemen
zurechtkommen - die Red.]
Q: Meine Teles 16.3 funktioniert hinter einer Quante IS-2 (baugleich
zur Ackermann Euracom 181) nach einem Reset nur, wenn ich:
!verbon
1. TK-Anlage ausstecken
2. PC abschalten
3. TK-Anlage einstecken
4. PC anschalten
!verboff
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu am 13. Jan 1997:!br
Das sollte ab HiSax 1.5 weg sein. (Tei remove Problem).
!old
Q: Ich hänge hinter einer alten TK-Anlage, und bekomme beim Versuch
rauszuwählen immer wieder eine Ablehnung mit Cause 64?
A: Wolfgang Hamburg <wh@jumping.baltic.de> schrieb am 8. Okt 1996:
!verbon
Cause 64 bedeutet "invalid information element contents" und ist aus
dem 12TR7 Protokoll, das von Anlagen (bei uns Octopus-M) intern
gefahren wird. 12TR7 beinhaltet 1TR6. Mehr weiß ich dazu nicht. Die
Quelle ist ein netter Telekommensch. Dort gibt es "Richtlinien", die
die Protokolle beschreiben.
!verboff
Q: Ich bekomme meine TK-Anlage, eine proprietäre Siemens Hicom, nicht zum
Laufen?
A: Sven Engelhardt <sven@sik.de> schrieb hierzu am 20. Jan 1997:!br
Die Techniker haben an digitalen Nebenstellen immer etwas länger zu
basteln. Tip: Es gibt eine Einstellung fuer die Nebenstelle, nennt sich
"DSS1 mit EAZ", die kann aber nur ein Techniker einstellen. Damit
funktioniert ISDN meistens mit geladenem DSS1-Treiber. Zumindest unter
WIN/DOS. Die Defaulteinstellung der Anlage ist meist "1TR6 mit MSN" (don't
flame me, it's real).!br
(Meine letzten Erfahrungen mit SIE* TA sind allerdings schon ein gutes Jahr
alt, seitdem mach' ich um die Dinger einen Bogen. Laß Dich trotzdem nicht
unterkriegen, es gibt ein paar tausend Software-Patches fuer die HiComs,
die Techniker müssen nur wollen. Manchmal hilft's, mit dem Techniker
zusammen ins Programmierhandbuch zu schauen und ihm die Seite mit den
Einstellungen für digitale Nebenstellen rauszusuchen.)
!old
Q: isdnctrl liefert einen "buserror" wenn ich mir meine Konfiguration ansehen
will?
A: Christian Kratzer <ck@toplink1.toplink.net> lieferte einen Patch:
!verbon
diff isdnctrl.c.dist isdnctrl.c
240c240
< if (strlen(cfg.slave))
---
> if (cfg.slave && strlen(cfg.slave))
!verboff
[Dürfte mittlerweile längst gefixt sein - die Red.]
!old
Q: Nach einem Hangup erscheint in der Ausgabe von /dev/isdnctrl ein
"no routine". Wurde die Leitung nun freigegeben oder ist noch ein Bug im
Treiber?
A: "no routine" bedeutet nicht immer, daß im Treiber etwas nicht
funktioniert. Manchmal sendet das Link-Level-Modul überflüssige
Kommandos, die der Teles-Treiber nicht benötigt und mit einem "no routine"
beantwortet.
!old
Q: Ich bekomme lauter "HSCX RME out of buffers" Meldungen ins syslog.
A: Original-Antwort von Jan den Ouden <denouden@groovin.xs4all.nl>:
Die "HSCX RME out of buffers"-Meldung bedeutet, daß der Treiber keine
Empfangspuffer mehr übrig hat. Empfangene Frames werden alle paar
Millisekunden bearbeitet, und in der Zwischenzeit müssen die Frames
gepuffert werden. Voreinstellung sind 6 Puffer. Jeder Frame benötigt
einen Puffer, ganz egal wie groß er ist. Wenn eine Anzahl von sehr
kleinen Frames in schneller Folge gesendet wird, kann es passieren, daß
die Puffer überlaufen. Scheint jedenfalls so, daß das passiert. In
teles.h sind drei Zeilen, die die Anzahl und Größe der Puffer festlegen:
!verbon
#define HSCX_RBUF_ORDER 1
#define HSCX_RBUF_BPPS 2
#define HSCX_RBUF_MAXPAGES 3
!verboff
Die Größe der einzelnen Puffer ist in etwa
!verbon
(4096<<HSCX_RBUF_ORDER)/HSCX_RBUF_BPPS
!verboff
Die obigen Angaben führen etwa zu Puffern der Größe 4k. Die Anzahl
der Puffer ist HSCX_RBUF_BPPS*HSCX_RBUF_MAXPAGES, was im Normalfalle 6
ergibt. Diese Zahl kann man erhöhen, indem man HSCX_RBUF_MAXPAGES
vergrößert. Dieser Wert ist lediglich ein Limit, die Puffer werden nicht
alloziert, wenn sie nicht gebraucht werden.!br
[Das gleiche kann man bei "HSCX RFP out of buffers"-Meldungen machen - die
Red.]!br
Andreas Kool <akool@Kool.f.EUnet.de> ergänzt noch:
!verbon
Diese Fehler passieren gerne mit schlechten Sound-Karten bzw.
Sound-Treibern, die die Interrupts zu lange disablen!
!verboff
Q: Mein pppd bzw. ipppd hat Probleme mit der PAP bzw. der CHAP
authentification.
A: Siehe dazu die entsprechenden Fragen im Abschnitt "Sync-PPP".
!old
Q: Ich bekomme den Fehler "SIOCADDRT: Invalid argument", wenn ich route
mitteile, daß es auf isdn0 weiterrouten soll.
A: <tpo@spin.ch> schrieb dazu am 8. Okt 1996:
!verbon
Ich hatte den gleichen Fehler, bis ich die korrekte Netmask angab.
!verboff
Q: Wo finde ich eine Übersicht aller causes?
A: Klaus Kämpf <kkaempf@progis.de> schrieb hierzu:
Spontan fällt mir da die ISPA Dokumentation ein. Schau doch mal in
!link ftp://ftp.biochem.mpg.de//pc/isdn;.
Q: Bei meiner ELSA-Karte blinkt öfters die LED, die den Verlust der TEI
anzeigt. Meine Verbindungen sind leider auch öfter gestört...
A: Jens Ey <jens@jeyhh.shnet.org> schrieb am 29 Dec 1996:!br
Diese blinkende LED wird oft verursacht durch schlechte Kabel oder einen
zu langen oder unterminierten S0 Bus. Das hat mir ELSA mitgeteilt nachdem
ich mich bei denen über das gleiche Problem beschwert hatte. Ein neues
Kabel - und schon lief alles wunderbar.!br
Paul Slootman <paul@wau.mis.ah.nl> schrieb dazu am 2. Jan 1997:!br
Jan den Ouden vermutete (in einer niederländischen Newsgruppe), daß die
niederländische Telefongesellschaft manchmal nachts "ein TEI wegwirft".
Q: Mein ISDN-Treiber stürzt mir ab! Da ich es als Modul konfiguriert habe,
ändern sich die Adressen bei jedem Laden. Wie finde ich heraus, wo der
Treiber abstürzt?
A: Der Treiber wird dazu mit dem Befehl "insmod -m" geladen. Die Ausgabe wird
muß noch etwas bearbeitet werden, um ihn in eine Form analog zu System.map
umzuwandeln.!br
Fritz Elfert <fritz@wuemaus.franken.de> schrieb dazu am 17. Okt 1996:
!verbon
insmod -m isdn.o | sort | sed -e 's/ / T /g' |
egrep '.* T [a-z,A-Z,_]+' > /etc/isdn/isdn.map
cat /System.map /etc/isdn/isdn.map > /iSystem.map
!verboff
[Die Zeile, die mit "|" endet, muß mit der nachfolgenden zusammengefaßt
werden!]!br
iSystem.map sollte nun anstelle von System.map zur Fehlersuche verwendet
werden.
Q: Meine Festplatte wird sehr aktiv, wenn isdn4linux läuft. Wie kann ich das
abschalten?
A: Mit "isdnctrl verbose 0", sowie Entfernen der "debug"-Option für den ipppd.
!3Teles-Treiber
!old
Q: Woran erkenne ich, daß meine Teles-Karte (oder eine kompatible Karte)
vom Teles-Treiber korrekt erkannt wurde?
A: Beim Booten muß eine Meldung wie "kernel: HSCX version A:5 B:5" sowie
"kernel: channels 2" in /var/log/messages eingetragen werden. Auch
"A:4 B:4" ist o.k. Alle anderen Werte (insbesondere A:0 B:0 und A:f B:f)
zeigen an, daß die Karte nicht richtig erkannt wurde.
Q: Welches ist der Name meines Teles-Treibers (insbesondere wenn eincompiliert
im Kernel)?
A: Der Name ist das, was (beim Laden als Modul) mit "teles_id" angegeben wurde.
Wurde lilo verwendet, dann ist der Name ebenfalls das, was mit "teles_id"
angegeben wurde. Wurde der Teles-Treiber in den Kernel fest eincompiliert,
dann ist der Name ein einfaches "" (zwei mal Anführungsstriche oben).
Der Name kann auch durch ein "cat /dev/isdninfo" herausgefunden werden,
er wird bei "idmap" angezeigt.
!old
Q: Ich bekomme beim Booten "HSCX version A:5 B:5", habe aber trotzdem den
Eindruck, daß meine Teleskarte nicht korrekt erkannt wird. Was kann
ich noch überprüfen?
A: Wilhelm Schulte <schulte@wrds1.urz.uni-wuppertal.de> schrieb dazu:
!verbon
Am besten überprüfen, ob der Interrupt korrekt registriert ist. Mit
"cat /proc/interrupts" kann man das testen. Folgender Eintrag weist
auf einen Fehler hin:
11: 0 + teles
Die 11 ist korrekt, solange die Teleskarte auf Interrupt 11
konfiguriert wurde. Die 0 jedoch bedeutet, daß die Teleskarte keine
Interrupts akzeptiert, und damit nicht funktioniert. Das ist der
bekannte "Busy"-Bug, er kann durch das Entladen und Neuladen der ISDN-
Module wieder behoben werden. Der IRQ-Zähler muß nicht unbedingt auf 0
stehen, auch niedrige Werte ungleich 0 weisen auf das selbe Problem
hin. Man kann das relativ einfach testen:
1. cat /proc/interrups, Zählerstand merken
2. Mit dem Telefon den Rechner anrufen.
3. Nochmal cat /proc/interrupts, der Zähler muß sich nun
gravierend vom ersten Wert unterscheiden.
!verboff
Siehe auch "Ich bekomme immer BUSY wenn ich meine ISDN-Mailbox anwähle".
Analog kann man natürlich auch mit "cat /proc/ioports" die IO-Ports
überprüfen.
!old
Q: Warum sollte ich nach Möglichkeit IRQ 12 und 15 für die ISDN-Karte
vermeiden?
A: Gernot Zander <hifi@scorpio.in-berlin.de> schrieb hierzu:
!verbon
Bei PCI-Boards niemals IRQ 12 benutzen. Der wird manchmal von der
Busmaus benutzt (auch dann, wenn man gar keine hat und für sie den
IRQ nicht aktiviert hat), daher geht der IRQ manchmal verloren, und
man bekommt es mit Fehlern zu tun.
Bei PCI-Boards niemals IRQ 15 benutzen. Der wird manchmal vom IDE 2
benutzt (auch dann, wenn man den gar nicht nutzt und für ihn den
IRQ nicht aktiviert hat), daher geht der IRQ manchmal verloren, und
man bekommt es mit Fehlern zu tun.
!verboff
Es sei erwähnt, daß dies nicht für *alle* PCI-Boards gilt! Aber viele
Boards spucken einem hier doch gerne in die Suppe...
!old
Q: Meine Teles-Karte wird beim Booten falsch erkannt, wenn ich LILO die
entsprechenden Parameter mitgebe.
A: Leider ist die Reihenfolge der Kernel-Parameter für irq, mem, io-base,
protokoll nicht identisch mit der Reihenfolge der Parameter, wenn sie
als Modul-Parameter angegeben bzw. eincompiliert werden.
Modulparameter (insmod): mem,irq,base,type
Kernelparameter (LILO): base,irq,mem,type
!old
Q: Starte ich erst DOS und den mitgelieferten Teles-Treiber und dann Linux per
Loadlin, funktioniert alles einwandfrei. Starte ich aber direkt Linux per
LILO, reagiert der Teles-Treiber nicht korrekt.
A: Statt dem Telestreiber den HiSax ausprobieren.
!old
Q: Nach einem Reset wird meine Teleskarte nicht richtig initialisiert.
A: Andreas M. Kirchwitz <isdn4linux-mlist@zikzak.snafu.de> schrieb:
!verbon
Versuch mal statt eines "reboot" (per Kommando) oder "Ctrl-Alt-Del"
einen Reset per Reset-Taster ("Hard-Reset") am PC.
Bei manchen Motherboards (was nicht zwangsweise Schuld des
Motherboards sein muß) werden bei einem "Soft-Reset" die
Karten nicht wieder in ihren Grundzustand versetzt, so daß
manche Treiber dann Probleme haben, die Karten anzusprechen.
!verboff
Hinweis: Natürlich muß man vor dem harten Reset den Rechner geordnet
herunterfahren ("reboot" eingeben oder "Ctrl-Alt-Del" drücken)! Erst dann
darf die Reset-Taste gedrückt werden.
!old
Q: Der teles-Treiber erkennt meine 16.3-Karte als eine 16.0.
A: Wenn man eine 16.3 besitzt, muß man als Speicherbereich "0" setzen.
Wenn eine 16.0 erkannt worden ist, hat man hier versehentlich einen
anderen Wert übergeben.
!old
Q: Ich verwende isdn4linux mit dem Telestreiber. In regelmäßigen
Abständen hängt sich der Treiber auf, und ich muß ihn neu laden.
A: Du verwendest eine alte Version des Teles-Treibers. Ab Version 0.4a sind
diese Hänger verschwunden. Bezugsquellen siehe Frage "Wo gibt es
isdn4linux?"
!old
Q: Meine Maschine stürzt immer wieder ab. Auf der Konsole erscheint dann in
Sekunden-Abständen
!verbon
l1state 4
l1state 8
l1state 13
ph_command 9
l1state 4
l1state 0
ph_command 0
l1state 7
ph_command 9
!verboff
A: Hier könnte ein Kabel defekt sein. Die DOS-Diagnose-Software zur Teles
kann das erkennen.
!old
Q: Beim Telestreiber wird immer "isdn0: Chargesum is 0" angezeigt, obwohl
ich von der Telekom Gebühreninformationen bekomme.
A: Der Telestreiber unterstützt keine Auswertung der Gebühreninformationen,
da der Autor, Jan den Ouden, in den Niederlanden wohnt und dort die
Gebühreninfo anders übermittelt wird, als in Deutschland [soviel zu
"Euro"-ISDN :-( ]. Die Meldungen können also ignoriert werden.!br
Allerdings ist isdnlog in der Lage, anhand der von isdnctrl weitergereich-
ten Q.921-Informationen die Gebühreninformationen auszuwerten.
Es gibt sogar einen Patch, damit isdnlog eine Verbindung rechtzeitig vor
dem Eintreffen der nächsten Gebühr zu beenden. Ein weiterer Patch
ermöglicht isdnlog die Gebühreninformationen an eine Postgres95-Datenbank
weiterzuleiten. Diese Patches werden wohl in der nächsten Version von
isdnlog einfließen.
!old
Q: Mein Teles-Treiber funktioniert nicht mehr unter 2.1.x!
A: Christian Mock <cm@kukuruz.ping.at> hat am 7. Okt 1996 einen entsprechenden
Patch gepostet, der bei ihm oder in den Archiven der Mailingliste zu
finden ist. Ein weiterer Patch für 2.1.1 wurde von Markus Gutschke
<gutschk@uni-muenster.de> ebenfalls am 7. Okt 1996 gepostet.
Aufgrund der vielen grundlegenden Änderungen und Anpassungsschwierigkeiten
sollten nur Entwickler zum jetzigen Zeitpunkt auf 2.1.x wechseln.
!old
Q: Ich habe zwei Teles in meinem Rechner, allerdings scheint nur eine
verwendet zu werden!
A: Dazu schrieb am 6. Okt 1996 Christian Kratzer <ck@toplink.net>:
!verbon
Klarer Fall von IRQ-Problemen. Gerade der 11 macht auf manchen Boards
Probleme. Obwohl man denkt, daß manche IRQ's frei sind, werden sie dann
doch vom BIOS irgendwie reserviert.
Gut für einen Schuß sind immer IRQ 5 und IRQ 9. Falls Ihr keine Mäuse
und Modems habt, könnt Ihr es auch mit 4 und 3 probieren. Damit klappts
auch auf obskuren Boards.
!verboff
Q: Beim Kompilieren des Teles-Treibers gibt es einige undefinierte Symbole
(nur Kernel 2.0.26)?
A: Beim Patch ging leider die Datei proto.h verloren. Das muß drin stehen:
!verbon
#ifndef PROTO_H
#define PROTO_H
#define PROTO_EURO 0x08
#define PROTO_DIS_N0 0x40
#define PROTO_DIS_N1 0x41
#endif
!verboff
!3HiSax-Treiber
Q: Woran erkenne ich, daß meine ISDN-Karte vom HiSax-Treiber korrekt erkannt
wurde?
A: Beim Booten erscheint im Log-File eine Meldung in z.B. folgender Form:
!verbon
HiSax: Teles 16.3 found,irq:5 isac:a80 cfg:e80
HiSax: hscx A:280 hscx B:680
Teles3: HSCX version A: V2.1 B: V2.1
!verboff
Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu am 12. Dez 1996:!br
Beim HiSax brauchst Du Dir auch keine Gedanken darüber machen, wenn er
geladen wird, kann die Hardware angesprochen werden und generiert auch
entsprechende Interrupts, wenn nicht wird das Modul nicht geladen.
Das heist zwar nicht, daß dann auch alles funkt (z.B Kabeldreher,
Kabelunterbrechung, Terminierung), aber die Karte ist richtig im Rechner
installiert, keine Hardware-Konflikte.
!old
Q: Die Teleskarte stürzt immer wieder ab, und im Log erscheint folgende
Fehlermeldung:
!verbon
<date> <time> foo kernel: HSCX B EXIR 10
<date> <time> last message repeated <n> times
!verboff
A: Die CPU schafft es nicht, den FIFO zu leeren. Ist eventuell eine Soundkarte
im Rechner eingebaut, die die Interrupts zu lange für sich behält o.ä.?
Q: Meine AVM-Karte erzeugt extrem viele Interrupts mit dem HiSax-Treiber. Ist
das normal oder ein Problem mit dem HiSax-Treiber?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu am 12. Nov 1996:!br
Das ist normal. AVM (und auch ELSA) haben einen Timer auf der Karte.
Da AVM nicht koorperiert weiss ich nicht wie der abzustellen ist.
Bei Elsa weiss ich es zwar, mache es im Moment aber nicht, da hier kaum was
an Performance verloren geht und ich die Interrupts momentan bei der ELSA
fuer die Statusanzeige nutze (war vor allem bei der Entwicklung sehr
hilfreich, sobald der Treiber stand, blinkte nichts mehr ;-) ).
Spaeter werd ich ihn wahrscheinlich abschalten oder nur bei Verbindung
benutzen.
Q: Die PNP-Tools funktionieren nicht mit meiner Teles-16.3-PNP-Karte!
A: Wahrscheinlich ist es gar keine Plug'n Play-Karte - obwohl Teles
mittlerweile auf alle Karten/Verpackung PNP draufschreibt. Der Unterschied
ist einfach zu erkennen: eine echte Teles PNP-Karte hat nicht mehr die
(winzigen) DIP-Schalter auf der Karte, mit der man die IO-Adresse einstellen
kann.
!3ICN-Treiber
!old
Q: Bei meiner ICN gehen manchmal beim Verbindungsaufbau Pakete verloren.
A: Dies ist bei neueren Versionen von i4l (ab Kernel 2.0.26) behoben worden.
Torsten Hentschel <Torsten.Hentschel@DInet.de> hatte einen Patch für
Kernel 2.0.21 gebaut, mit dem nachweislich keine Pakete mehr verloren
gingen, der jetzt aber obsolet ist (nicht mehr anwenden!).
!3Zusammenarbeit mit anderen Gegenstellen
!old
Q: Ich habe Probleme, mit einem ELink Verbindungen aufzubauen.
A: Daniel Moeller (danny@rsun.lfn.unterland.de) schrieb dazu 1996 in der
Mailingliste:
!verbon
Ich hatte schon vor einigen Wochen über meine Probleme, mit einem
EL 310 zu connecten berichtet. Es kam keine Connect-Meldung für den
Daten-Kanal vom ISDN. Das problematische Elink hängt an einem 1TR6
Anschluß und hat identische Settings wie ein anderes Elink an einem
Euro-ISDN Anschluß, mit dem ich nie Probleme hatte. Seit ca. 2
Wochen funktioniert das jetzt plötzlich einwandfrei, ohne daß lokal
oder remote etwas geändert wurde.
Schlußfolgerung: Die Software in den Vermittlungsstellen scheint da
eine Rolle zu spielen....
!verboff
Q: Ich habe Probleme, eine Verbindung zu einem Netblazer Router aufzubauen.
A: Michael Hipp <Michael.Hipp@student.uni-tuebingen.de> schrieb dazu im
Okt 1996:!br
deine Gegenseite meint wohl, sie dürfe komprimierte Pakete schicken
(obwohl kein Kompressionsverfahren ausgewählt wurde). Schmeiß mal in
main.c die Zeilen:
!verbon
{ PPP_CCP, ccp_init, ccp_input, ccp_protrej,
ccp_printpkt, ccp_datainput, "CCP" }
!verboff
raus und kompilier' den ipppd neu durch. Dann müßte er das ganze CCP
Protokoll ablehnen und das versteht dann hoffentlich auch der Netblazer..
(ist nicht der erste Bug des Netblazers.. das Teil scheint generell nicht
sonderlich conform zu sein .. komischerweise haben andere diese Problem
nicht, eventuell sollte man mal eine neue Softwarerelease einspielen)!br
[Dasselbe Problem kann auch bei asyncPPP auftreten. Es funktioniert dort
dieselbe Methode (evtl. ist sogar eine Kompilieroption für das
Entfernen des CCP-Protokolls vorhanden). Ab pppd 2.3 beta 3 soll es die
Option "noccp" geben, die ohne Neukompilation dasselbe bewirkt - die Red.]
!commenton
Weitere Hinweise finden sich im gleichnamigen Abschnitt im Kapitel
"Konfiguration"!
!commentoff
!3Raw-IP
!old
Q: Ich bekomme die Fehlermeldung "Protocol error, unspecified".
A: "Protocol error, unspecified" heißt, daß dort Messages oder Teile von
Messages zu einem Zeitpunkt angekommen sind, wo sie nicht erwartet
wurden oder der Inhalt der Messages nicht decodierbar ist.
Dazu schrieb Torsten Hentschel <Torsten.Hentschel@DInet.de>:
!verbon
Gerade die ersten Pakete des Protokolls können verloren gehen, wenn
sie sofort nach der Connect-Meldung auf dem B-Kanal rausgefeuert
werden. Ich hatte das Problem bei raw hdlc, daß Pakete verloren
gingen, aber nur wenn man von einer bestimmten Seite aus anrief.
!verboff
Bei neueren Versionen von isdn4linux (ab Kernel 2.0.26) ist das behoben
worden. Ein früherer Patch von Torsten hierzu ist deshalb nun obsolet und
darf nicht mehr angewendet werden!
!3Modememulation (Betrieb mit ttyI*-Devices)
!old
Q: Wenn ich mit "ATD..." wähle, kommt immer ein "NO CARRIER".
A: Man muß vor dem ersten Wählen ein "AT&E123456" eingeben (wenn 123456 die
eigene MSN ist; bei 1TR6 wird die einstellige EAZ angegeben).
!old
Q: Meine Modememulation/pppd erkennen nicht, wenn ein Anruf ankommt.
A: Wahrscheinlich wurde der Modememulation nicht mit AT&E mitgeteilt, welche
MSN sie entgegennehmen soll. Also z.B. "AT&E123456", wenn die MSN 123456
ist.
!old
Q: Bei eingehenden Rufen erscheint kein RING, obwohl die EAZ/MSN richtig
gesetzt wurde.
A: Wenn man einen Getty auf ein cui*-Device ansetzt, kommt niemals ein RING
an. Das liegt nicht am isdn4linux, sondern am Kernel. DRINGENDE
EMPFEHLUNG: Grundsätzlich immer nur /dev/ttyI*-Devices verwenden!
Seit mgetty besteht keine Notwendigkeit mehr, hereinkommende und
herausgehende Verbindungen auch mit den Devices zu unterscheiden. (Das
gleiche gilt übrigens auch für die normalen /dev/ttyS* und /dev/cua*
Devices der seriellen Schnittstellen).
Q: Warum kann ich nicht mit der Modememulation mein eigenes Telefon oder Fax
anrufen/anklingeln?
A: ISDN unterscheidet nach der Dienstekennung. Alle Anrufe nach draußen mit
Hilfe der Modememulation erhalten die Dienstekennung "Digital Data". Das
ist jedoch inkompatibel zu einem Telefon oder Fax - weshalb der Anruf
gar nicht durchkommt.
!old
Q: Die Verbindung in meine ISDN-Mailbox klappt nicht recht.
A: Leider gibt es da unterschiedliche Protokolle, die möglich sind. Neben
hdlc und X.75 gibt es für X.75 noch unterschiedliche Paketlängen. Diese
kann man der Modememulation mit "AT&B" mitteilen. Für die verbreiteste
Paketgröße 2048 Bytes also: "AT&B2048". Der Teles-Treiber kann keine
längeren Pakete als 2048 Bytes verarbeiten (ICN kann bis 4000). Es kann
auch eine kürzere Paketgröße erforderlich oder nützlich sein, etwa 512
Bytes. Dann also: "AT&B512".
!old
Q: Ich habe sicher die richtigen Parameter für meine ISDN-Mailbox verwendet.
Es klappt aber immer noch nicht, ich bekomme immer nur "BUSY", obwohl ich
sicher weiß, daß die Mailbox nicht besetzt ist.
A: Manchmal kommt es zu "Verklemmungen" in i4l in Zusammenhang mit den
Teles-Treibern. Das ist ein altbekanntes Problem.
Workaround: Konfiguration als Module. Diese werden dann beim
Booten erst geladen (insmod/modprobe), dann wieder entladen (rmmod) und
sofort wieder geladen (insmod/modprobe). Dann sollte es gehen...!br
Dr. Peter Schrammel <Dr.Peter.Schrammel@t-online.de> schrieb dazu:
!verbon
Vielleicht ist es auch ein Problem mit dem verwendeten Kabel...
!verboff
!old
Q: Meine Modememulation hängt. Wie kann ich die Karte zwingen, aufzulegen?
A: Emil Stephan <ste@esqhen.su.eunet.de> schrieb am 13. Okt 1996:
!verbon
Wenn da wirklich kein Prozeß mehr drauf läuft, versuch mal:
cu -l /dev/ttyI0 dir
+++
ath0
~.
Vor und nach dem "+++" ist eine Sekunde Pause einzuhalten, sonst wird
es von der Modem-Emulation nicht als Escape-Sequenz erkannt (wie echte
Modems). Achte mal auf Prozesse, die mit "ps -ax" in der zweiten
Spalte einen Eintrag der Art "I0" oder "I1" haben, die haben nämlich
ein ISDN-Terminal als controlling terminal. Eventuell mußt Du diese
mit kill abschießen.
!verboff
Q: Ich bekomme während einer tty-Verbindung vom Kernel die Meldung
"teles_writebuf: channel not open". Es werden dann keine Eingaben mehr
für diese Verbindung angenommen.
A: Fritz Elfert <fritz@wuemaus.franken.de> schrieb dazu am 18. Nov 1996:!br
Meist verträgt dann die Gegenseite die grossen Frames von i4l nicht und
macht mitten im Transfer den B-Kanal dicht. Probier mal mit AT&B512 vor
dem Wählen die Frames kleiner zu machen.
Q: Wenn ich uucp mit X.75 mache, bekomme ich laufend Übertragungsfehler!
A: Andreas Gutzwiller <andy@hippo.proxyon.imp.com> schrieb dazu am 5. Dez 1996:
!verbon
Ich mußte das bei mir folgendermassen einstellen. Sonst bekam ich auch
nur Fehler.
# Prot
protocol-parameter g packet-size 512
protocol-parameter g short-packets y
protocol-parameter g window 7
protocol-parameter g remote-window 7
protocol-parameter v packet-size 512
Damit komme ich bei großen Paketen auf ca 7300 cps
!verboff
Holger Burbach <holly@cthulhu.pfalz.de> kam am 5. Feb 1997 zu einer anderen
Lösung:
!verbon
Bei mir pollen auch einige XP-Benutzer, wohl auch ohne Probleme. Ich
habe folgendes gemacht: Zum einen habe ich die Send-Packetsize vom
ttyI? auf 1024 gesetzt ("AT&B1024") und zum setze ich die
Paketgrößen für das g-Protokoll beim UUCP:
protocol-parameter g packet-size 2048
protocol-parameter g remote-packet-size 0
Wie gesagt, damit läuft hier alles prima.
!verboff
Q: Mein iprofd läuft nicht mehr mit HiSax 2.0. Ich bekomme die Fehlermeldung
"Version of kernel modem-profile (3) does NOT match version of iprofd (1)".
Wie bekomme ich iprofd wieder zum Laufen?
A: Fritz Elfert <fritz@wuemaus.franken.de> schrieb dazu am 17. Feb 1997:
In iprofd.c die Zeile mit!br
!verbon
#define DATA_VERSION 1
!verboff
in
!verbon
#define DATA_VERSION 2
!verboff
ändern, den iprofd neu compileren, und (WICHTIG) die gespeicherte
profile Datei löschen.
!3Async-PPP
Q: Wie stelle ich mir ein Log für pppd her?
A: Siehe dazu die entsprechende Frage für Sync-PPP, das Verfahren funktioniert
in gleicher Weise auch für den pppd.
Q: Der Verbindungsaufbau klappt wunderbar, leider hängt sich der pppd nach
kurzer Zeit auf (d.h. die ersten Bytes gehen durch, danach steht jedoch
alles)?
A: Joachim Gassen <joachim@fb4-1112.uni-muenster.de> schrieb dazu am 8. Jan
1997:!br
Das Problem hatte ich auch mal. Es liegt höchstwahrscheinlich an einer
falschen Blockgröße auf Deiner Seite. Versuch mal, ein &B512 im
"Init-String" Deiner isdn-Karte einzufügen. Dann dürfte es klappen.
!3Sync-PPP
!old
Q: Wie stelle ich mir ein Log für ipppd her?
A: Man kann das PPP-Log auf eine Extra-Datei umlenken, damit man leichter
eventuelle Fehler suchen kann. Dazu editiert man die Datei /etc/syslog.conf
und fügt folgende Zeile an (Anmerkung: KEINE Leerzeichen, nur Tabulatoren
benutzen!):
!verbon
daemon.* /var/log/ppp-log
!verboff
Damit wird alles, was der PPP-Dämon an Informationen abgibt, in der Datei
/var/log/ppp-log abgelegt.
Emil Stephan <ste@esqhen.su.eunet.de> schrieb zu diesem Thema:
!verbon
Entferne das Kommentarzeichen aus der folgenden Zeile
in /etc/syslog.conf:
#*.=debug /tmp/debug
Nach Änderung der Datei kannst Du mit "kill -1 <pid vom syslogd>" den
syslogd zum restart bringen.
Der in /tmp/debug erzeugte output ist auch geeignet, um das Aushandeln
von Optionen zwischen den Gegenstellen zu optimieren.
!verboff
Q: Mein ipppd will nicht, er bringt immer die Fehlermeldung "PPP driver 0.0.0
is out of date".
A: Ari Biel <aribiel@sun14.hrz.th-darmstadt.de> schrieb hierzu am 3. Okt 1996:
!verbon
Das hatte ich auch! (S.u.S.E. 4.2 Kernel 2.0.0, isdn4k-utils 3.91 mit
patch). Als ich dann den Kernel neu kompilierte u. ppp als Modul
konfiguriert hatte, konnte ich ipppd starten. Da gibt's wohl
Versionsprobleme.
!verboff
!commenton
(Die folgende Frage entstammt der syncPPP-FAQ.)
!commentoff
!old
Q: Wenn ich den ipppd starte, bekomme ich die Fehlermeldung "this systems
lacks PPP support".
A: Man checke, ob mindestens das Device 'ippp0' existiert (das kann man zum
Beispiel mit dem Programm 'ifconfig'). Der ipppd *braucht* dieses Device
unter *diesem* Namen. Wenn es nicht existiert, muß man es definieren:
!verbon
isdnctrl addif ippp0
isdnctrl encap ippp0 syncppp
... (siehe isdn4linux-Doku für weitere Informationen) ...
!verboff
Vielleicht haben Sie den ipppd mit dem Verzeichnisbaum eines anderen
Kernels, als Sie gerade benutzen, compiliert...!br
Siehe auch die Frage "Wie soll ich mein Netzinterface benennen?"
im Abschnitt "Sync-PPP" im Kapitel "Konfiguration".
!old
Q: Wie kann ich meinem Kernel 1.2.13 den PPP-support einschalten (für
den ipppd benötigt)?
A: Stefan A. Muehlenweg <Stefan.A.Muehlenweg@samhh.hanse.de> schrieb dazu:
!verbon
Bei 1.2.13 sagt man dem Kernel, daß er *keinen* ppp-support
haben soll, compiliert den Kernel, und macht *anschließend* ein
'make modules', sowie ein 'make modules_install'. Damit wird dann
alles(!), was nicht in den Kernel konfiguriert wurde, aber als module
geladen werden darf, zum Zuladen mittels insmod vorbereitet. 'modprobe
ppp' beim Booten (im geeigneten rc.xxx Skript) lädt dann das ppp-Modul
und alle dafür nötigen Module (slhc etc.).
Voraussetzung für ipppd mit 1.2.13: Installiere ppp-Version 2.2.0c.
Auch in den Kernel-Sources (ppp-2.2.0c.tar.gz). Und Du brauchst dafür
modutils 1.2.8 (modules-1.2.8.tar.gz).
!verboff
!old
Q: Wenn ich den ipppd starte, dann bekomme ich nur Fehlermeldungen vom
i4l-Treiber.
A: Wenn der ipppd gestartet wird, ruft er Funktionen auf, die ein Netzwerk-
Paket triggern können (z.B. gethostbyname()). Ohne den ipppd (derzeit auch:
wenn er noch nicht vollständig gestartet ist) kann dieser Netzwerkzugriff
nicht abgearbeitet werden. Man versuche, die für den ipppd notwendigen
Hostnamen in der lokalen Datei /etc/hosts oder in sonst einer Weise, die
dem System eine Auflösung des Namens ohne einen Zugriff auf ein ISDN/ippp-
Interface ermöglicht, zu definieren.
!old
Q: Wenn ich versuche, ipppd zu starten, meldet es "Can't find usable ippp
device"
A: Frank Meyer <fm@textware.k.eunet.de> schrieb:
!verbon
Ich hatte das gleiche Problem auch. Bei mir war es so, daß nach ca.
5 Minuten erst - nachdem mehrere dieser Meldungen in den messages
erschienen - der ipppd meldete: "started". Dann lief's aber!
Naja, ich habe dann mal ein paar test-prints in den ipppd-Source
gestreut und habe dann das Problem einkreisen können:
Der ipppd berechnet bei der Initialisierung eine Zufallszahl (ich weiß
nicht mehr wo), und benutzt dafür gethostid(). Das führt aber wohl zu
einem DNS-Lookup. Daraufhin versucht die Kiste, den in /etc/resolv.conf
angegebenen Nameserver anzusprechen.
Da aber der ipppd noch gar nicht vollständig durchgestartet hat, kann
der Nameserver nicht erreicht werden. Das führt dann zu den Meldungen.
Die Lösung war ganz einfach:
Ich habe in /etc/hosts meinen Rechner nicht nur mit dem Kurznamen (z.B.
isdn) eingetragen, sondern auch noch den kompletten Namen inkl. der in
/etc/resolv.conf angegebenen Domain, also z.B.
x.x.x.x isdn isdn.wer.weiß.wo
Danach war Ruhe und es lief!
Noch etwas früher wird in main() die Funktion setipdefault()
aufgerufen, welche (in options.c) gethostbyname() ausführt.
Dieses führt natürlich auch zu einem DNS-Lookup und verursacht ebenso
die Meldung "isdn_ppp_bind: Can't find usable ippp device"
Es wären also 2 Stellen im Source zu ändern, um einen DNS-Lookup zu
vermeiden.
Einfacher ist es, in /etc/hosts den eigenen Namen einzutragen, ich
hab's mit der IP-Adresse der eingebauten Ethernet-Karte gemacht.
!verboff
Carlos Heller <carlos@mable.webtrek.de> schrieb hierzu:
!verbon
Es gab eine Änderung in patch-2.0.16, die das Problem verursacht haben
könnte. Bis zum offiziellen Fix kann man den inoffiziellen Patch von
!link ftp://ftp.gwdg.de/pub/misc/isdn/linux/ippp/isdn.diff; versuchen.
Der bei meiner Suse-Distribution mitgelieferte ipppd war bei mir
defekt. Das Paket i4l-43b2.tar von !link ftp://ftp.suse.de/; hat mir
geholfen.
!verboff
!commenton
(Die folgende Frage entstammt der syncPPP-FAQ.)
!commentoff
!old
Q: Ich bekomme keinen Connect. Wie bekomme ich heraus, wo das Problem liegt?
A: Eine gute Hilfe ist der Output des ipppd... Man checke, ob man dort finden
kann:
!verbon
- nur einige wenige "LCP-conf-req SENT"-Meldungen (weniger als zehn)
und dann ein "Term-REF:
-> nachsehen, ob die ISDN-Karte richtig konfiguriert worden ist, denn
es scheint, daß der Rechner nicht wählt (IRQ, IO, Protokoll oder
ähnliches Problem)
- nur wenigstens ein paar "RECV"--Medungen
-> gut: die Karte wählt und die Gegenstelle versucht, zu
kommunizieren.
Vielleicht klappt nur die Authentifizierung nicht. Die ipppd-
Konfiguration nochmals prüfen!
- den Hinweis, daß der ipppd aus irgendwelchen Gründen beendet wird
-> nicht gut... Man checke /var/log/messages und /var/adm/daemon.
Das könnte ein Bug im ipppd sein.
!verboff
!old
Q: ipppd stürzt bei einem Einwahlversuch ab (mit Kernel 2.0.14...2.0.25).
A: Dazu schrieb Michael Hipp <Michael.Hipp@student.uni-tuebingen.de>:
!verbon
Bitte auf Kernel 2.0.14 downgraden ... In späteren Versionen (seit
2.0.16) gibt es einen kleinen Bug, der den ipppd beendet, wenn keine
Verbindung zustandekommt. (Das sollte eigentlich gut gehen, wenn man
immer Verbindung bekommt.) Ein "quick and dirty hack" ist möglich,
wenn man ein paar Zeilen im ipppd entfernt, aber es ist schon besser,
bei 2.0.14 zu bleiben, bis der Bugfix seinen Weg in die neuen Kernels
gefunden hat.
!verboff
(Anmerkung: dies ist seit 2.0.26 der Fall.)
!old
Q: Ich bekomme die Meldung "IP frame delayed" - und die Verbindung klappt
nicht.
A: Hier ist offenbar vergessen worden, ein "isdnctrl dial ippp*" abzugeben,
bevor ein Netzkommando (telnet, ping etc.) gegeben wurde. Siehe dazu auch
die folgenden Fragen.
!old
Q: Ich kann nicht mit "isdnctrl dial ippp0" rauswählen, die Route scheint dem
ipppd zu fehlen, obwohl ich sie ausdrücklich gesetzt hatte ("network
unreachable"). Mit meinem alten Kernel < 2.0 funktionierte aber alles
einwandfrei!
A: In den neueren Kernels ist es erforderlich, "route" als letzte Anweisung
direkt vor die Anweisung zum Wählen plazieren. Sonst löscht der Kernel
die Route von sich aus. Siehe dazu auch die nächste Frage.
!old
Q: Nach automatischem Dial durch ipppd wird meine Default-Route gelöscht.
A: Daran ist der Kernel schuld. Neuere Kernel (ab 2.0) greifen intensiv in die
Routenlegung ein (?). Abhilfe: ein Script /etc/ppp/ip-up installieren:
!verbon
#!/bin/sh
/sbin/route add default ippp0
!verboff
Wer seine Verbindung manuell aufbaut, kann stattdessen etwa folgendes
Script (/sbin/isdn) einsetzen:
!verbon
#! /bin/sh
case $1 in
on)
/sbin/isdnctrl dial ippp0 # Verbindung herstellen
sleep 5 # warten, bis Leitung offen
/sbin/route add default ippp0 # Route setzen
;;
off)
/sbin/isdnctrl hangup ippp0 # Verbindung abbrechen
/sbin/route del default # und Route wieder löschen
;;
*)
echo -e "\a Usage: 'isdn on' or 'isdn off'"
;;
esac
!verboff
Q: Beim Rauswählen des pppd bekomme ich die Meldung "pppd: peer authentication
required but no authentication files accessible." - was heißt das?
A: Wahrscheinlich wurde irrtümlich die Option "auth" angegeben. Damit
wird von der !u1anderen!u0 Stelle verlangt, sich zu authentifiziert.
Q: Ich bekomme keine Verbindung aufgebaut - diese wird von der Gegenstelle
abgelehnt. In den Log-Files finde ich eine Meldung, die ungefähr so
aussieht: "sent [0][LCP ConfReq id=0x1 <mru 1500> <auth pap>
<magic 0xcd12e9c4>"
A: Wie bei der letzten Frage wurde eine Option angegeben, die von der
!u1anderen!u0 Stelle verlangt, sich zu authentifiziert. Diese Option
darf nicht angegeben werden. Kandidaten hierfür: "+pap" sowie "+chap".
Q: Ich bekomme keine Verbindung aufgebaut - diese wird von der Gegenstelle
abgelehnt. In den Log-Files findet sich eine Meldung, die ungefähr so
aussieht: "sent [0][LCP ConfRej id=0x1 <auth pap>"
A: Dein Rechner lehnt ab, sich per Username (z.B. XXX) und Paßwort (z.B. YYY)
auszuweisen. Das klappt nur mit den Authorisierungsoptionen "user XXX" und
"remotename YYY" in Verbindung mit einer korrekten (!) /etc/ppp/pap-secrets
Letztere sollte bei einem Paßwort von ZZZ idealerweise so aussehen:
!verbon
XXX YYY ZZZ
!verboff
Wenn's nicht gleich klappt, kann man auch Wildcards einsetzen, etwa:
!verbon
* * ZZZ
!verboff
Dann bekommt !u1jede!u0 Gegenstelle das Paßwort ZZZ vorgesetzt. Wird
chap zur Authorisierung verlangt, muß /etc/ppp/chap-secrets korrekt
eingerichtet werden. Achtung: das Format weicht von dem der pap-secrets ab!
Unbedingt die entsprechenden README's konsultieren, oder auch:
!link http://www.lrz-muenchen.de/~ui161ab/www/isdn/;
!old
Q: Ich habe Probleme mit der PAP bzw. CHAP authentification - die klappt nicht,
obwohl ich garantiert die Paßwörter etc. richtig eingetragen habe.
A: Stefan A. Muehlenweg <Stefan.A.Muehlenweg@samhh.Hanse.de> schrieb hierzu
am 4. Okt 1996:
!verbon
Ich hatte genau das gleiche Problem bzw. die gleiche Meldung.
Verursacht war es bei mir dadurch, daß ich in chap-secrets bzw.
pap-secrets drei Einträge pro Zeile hatte (für client, server,
secret), aber keinen vierten (IP adresses), JEDOCH: nach dem dritten
Eintrag bis zur Position des vierten noch BLANKS standen.
Nach dem Entfernen aller schleppenden BLANKS und/oder TABS lebt
(i)pppd äußerst zufrieden mit meinen auth-files.
!verboff
Eine weitere Fehlerquelle kann das Paßwort selbst sein. Enthält
es das Zeichen "#", dann wird alles, was danach kommt, als Kommentar
verstanden. Analog gibt es natürlich Probleme, wenn es ein Leerzeichen oder
einen Tabulator enthält (geht das?). Abhilfe: Paßwort in Hochkommas setzen!
!old
Q: Ich bekomme immer wieder die Fehlermeldung "hscx_empty_fifo: incoming
packet too large"?
A: Wahrscheinlich wurde eine der Kompressionen aktiviert, die isdn4linux
nicht beherrscht. Siehe auch die nächste Frage.!br
Es kann auch sein, daß die Karte einer IRQ-Unverträglichkeit zum
Opfer gefallen ist - siehe Frage "Warum sollte ich nach Möglichkeit
IRQ 12 und 15 für die ISDN-Karte vermeiden?" unter "Teles-Treiber".!br
Eine weitere Fehlerquelle berichtete Immanuel Derks <broedtsk@xs4all.nl>
am 3. Jan 1997:
!verbon
Mein PAP Skript war verkrüppelt, da ich ein "#" in meinem Paßwort
hatte! Nachdem ich das Paßwort sauber gequotet hatte (z.B. mit
Anführungszeichen) war das Problem gelöst.
!verboff
!old
Q: Meine Verbindung mit ipppd scheint erst zu klappen, aber irgendwann
stürzt sie ab.
A: Es kann daran liegen, daß eine Kompression eingeschaltet ist, die i4l
nicht richtig beherrscht. Gängiger Fehler: "-vj" muß unbedingt
zusätzlich zur Option "-vjccomp" angegeben werden (ersteres schaltet
die VJ-Komprimierung ganz aus) - in den mitgelieferten Beispielskripten
fehlt diese wichtige Option.
Auch andere Kompressionsarten (bsd, pccomp) können zu Problemen führen.
Q: Der ipppd macht (erst dann) Schwierigkeiten, wenn die Verbindung stark
belastet wird. Dann hängt alles. Woran kann das liegen?
A: Hierzu schrieb Sven Engelhardt <sven@sik.de> am 12. Dez 1996:
!verbon
Wir sind ISP hier in Dresden und setzen u.a. Linux für unsere Zugänge
ein (sowohl I4L mit hisax als auch externe Terminaladapter) Wir haben
das Problem vor allem mit Windows-95 und NT-Kunden, die die
"eingebaute" (DFÜ-Netzwerk)-Software benutzen. Dabei ist es völlig
egal, ob sich der Kunde mit async oder sync-PPP einwaehlt. Auch ist
egal, welche Modememulation er auf seiner Seite benutzt. Allen Fällen
ist gemein, daß die Einbindung über Microsoft-DFÜ-Adapter+Microsoft-
PPP erfolgt. (ein Kollege erzählte mir neulich von einem ähnlichen
Problem mit einem Macintosh-Kunden)
Da es bei PPP ziemlich egal ist, wer Server ist und wer Client, frag
mal deinen ISP über welche Technik Du dich einwählst. (mit
Linux-Kunden und Trumpet-Winsock-Nutzern z.B. haben wir >>null<<
Probleme (Ich schließe daraus einen Bug in MS-PPP)
Folgender Workaround hilft bei uns aber in der Regel: (ist kein
Heilmittel, hilft aber die Schmerzen zu lindern...)
* Verringern der Max-MTU auf 576 oder gar (296)
* Verringern des DefaultRcvWindow auf 2144
Auf der Windows-95-Seite sind das zwei Registry-Einträge, auf der
Linux-Seite kannst Du mal "mtu 576" und "mru 576" in den ppp-Optionen
eingeben.
(ffs. !link http://www.windows95.com/connect/trouble.html;)
!verboff
Erik Corry <ec@sign-tronic.dk> ergänzt am 16. Dez 1996:
!verbon
Also, bei mir haben weder PPP-compressions-options geholfen, noch
mru/mtu auf 296. Was aber gut geholfen hat, war der AT-Befehl:
AT&B512
der die maximal verschickten Pakete auf 512 Bytes begrenzt.
!verboff
Q: Mein ipppd funktioniert, aber ich bekomme immer wieder die Meldung
"pppd[104]: ioctl(SIOCSIFMTU): Invalid argument"?
A: Andreas Steffan <deas@rrz.uni-hamburg.de> schrieb hierzu am 11. Dez 1996:!br
Lange habe ich rumspielen muessen bevor ichs schließlich gefunden habe.
Ich mußte in /etc/ppp/options.ippp0 noch eine Zeile
!verbon
mtu 1024
!verboff
einfuegen. Komisch ist es allemal, aber jetzt habe ich endlich Ruhe.
[wird mtu nicht angegeben, dann wird als default-Wert u.U. "0" angenommen -
was natürlich nicht funktionieren kann... - die Red.]
!old
Q: Beim automatischen Dialout und dynamischer Adreßvergabe geht das erste
IP-Paket verloren.
A: Dial-Out-Probleme tauchen im Zusammenhang mit syncPPP auf, wenn die
dynamische IP-Vergabe benutzt wird. Bei automatischer Anwahl in
Verbindung mit dynamischer Addreßvergabe tritt nämlich ein Wechsel der
IP-Adresse ein, während Pakete zum Versand anstehen. Pakete, die
vor dem Adreßwechsel herausgeschickt wurden haben damit eine falsche
IP-Adresse als Absender - und werden niemals die Antworten ihres Gegenübers
erhalten!!br
Workaround:!br
Vor dem Verbindungsaufbau mit einem Netzbefehl (telnet, ping...) muß
man manuell wählen: "isdnctrl dial ippp*"!br
Stefan A. Muehlenweg <Stefan.A.Muehlenweg@samhh.Hanse.de> schrieb dazu:
!verbon
Gestern habe ich eine feste IP-Adresse bekommen, und seitdem läuft der
automatische Verbindungsaufbau über ipppd phantastisch problemlos.
Ebenfalls über eine normale serielle Schnittstelle mit async. PPP über
V.120 und diald (per ELSA Microlink ISDN/TLpro --- wie auch über
V.34-Modem) funktioniert das Ganze jetzt. Die Ausfallerscheinungen
waren da ja vorher die gleichen.
Resumee: Wer automatisches(!) ppp-Dialing benötigt, benötigt zwingend
eine feste IP-Adresse. Wer seine Verbindung manuell(!) hochzieht und
auch manuell wieder abbaut, kann wunderbar mit dynamischer
Adreßzuweisung leben.
Es wäre sicher an der Zeit, ppp in seiner Funktionalität soweit zu
erweitern, daß es verbindungsinitiierende Pakete nicht nur zurückhält,
sondern auch auf die abgehende IP-Adresse hin überprüft, diese nach
erfolgtem Verbindungsaufbau korrigiert, und das Paket erst dann
abschickt.
Dasselbe ebenfalls für die Pakete, die nach dem initiierenden kommen
bevor die Verbindung schon steht.
Ebenso müßte der diald diese Funktionalität bekommen, wenn der den
Verbindungsauf- und -abbau steuern soll.
IP ist eben vom Konzept nie für dynamische Adressen vorgesehen gewesen,
und stehende Verbindungen wie telnet oder ftp kann man über
Verbindungsabbau und -wiederaufbau (mit neuer IP-Adresse) dann ohnehin
nie mehr recover'n.
!verboff
Ein Lösungsvorschlag kam am 5. Jan 1997 von Erik Corry <erik@arbat.com>:
!verbon
1) Keine lokale Name-Server/Name-Server-Cache
2) Lokale Squid Proxy-WWW-Server (und Netscape muss ihn benutzen).
3) positive_dns_ttl auf 1 setzen in /usr/local/squid/etc/squid.conf
damit Squid nicht die IP-Adressen cachet
Jetzt wird die Verbindung immer gestartet mit der DNS-
Anfrage, der immun ist gegen IP-Adresse-Änderungen (weil er
mit UDP und nicht TCP laueft?). Wenn du andere Programme
hast, die IP-Adressen cachen, musst du dir ueberlegen wie
das umgangen werden kann. Normalerweise wird ein Program
die IP-Adresse chachen, wenn es 2 mal zur selben Server
connectet. Das ist natürlich kein Problem, wenn die
beiden Verbindungen so kurz nacheinander erfolgen, daß
die Dial-On-Demand-Verbindung noch die selbe ist.
!verboff
[Der pppd soll ab Version ebenfalls dial-on-demand unterstützen - vielleicht
wird es dann besser - die Red.]
Q: Beim Ausführen von "isdnctrl mapping <line> <MSN>,..." kommt es zum Fehler
"bad address".
A: Bernd Oerding <erni@nukleus.escape.de> schrieb dazu am 9. Nov 1996:!br
Grund für den Fehler: im Kernel wird ein 255 Byte grosser Block aus dem
Userspace erwartet, dieser muß jedoch nicht vorhanden sein, wenn der
Pointer auf argv0 zeigt. Der angehängte Patch fixed das Problem auf
USER-Ebene, nicht schön aber tut.
!verbon
*** 1.14 1996/06/06 22:08:46
--- isdnctrl.c 1996/09/04 19:13:39
***************
*** 498,504 ****
}
printf("MSN/EAZ-mapping for %s:\n%s\n",argv[2],nstring);
} else {
! iocts.arg = (unsigned long)argv[3];
if ((result=ioctl(fd,IIOCSETMAP,&iocts))<0) {
perror(argv[2]);
exit(-1);
--- 498,506 ----
}
printf("MSN/EAZ-mapping for %s:\n%s\n",argv[2],nstring);
} else {
! char buf[400];
! strncpy(buf, argv[3], sizeof(buf)-1);
! iocts.arg = (unsigned long)buf;
if ((result=ioctl(fd,IIOCSETMAP,&iocts))<0) {
perror(argv[2]);
!verboff
[Es wurde auch schon berichtet, daß das Anhängen von "/sbin" an den Pfad
(Environment) geholfen hat. Zum Debuggen von cron-Skripten läßt sich
übrigens vortrefflich "set -x" einsetzen - die Red.]
Q: Was hat es mit der Meldung "No phone number, packet dropped" auf sich?
A: Michael Engert <michi@bello.wor.de> schrieb dazu im Nov/Dez 1996:!br
Das bedeutet, daß Dein Computer ein IP-Paket für jemanden hat, der vor
einigen Sekunden eingeloggt war, aber mittlerweile die Verbindung
beendet hat. Dein Computer versucht nun dieses Packet weiterzuleiten und
findet die geeignete Route. Das Interface isdn[0|1|...] kann jedoch nicht
die Gegenstelle erreichen, weil es keine Telefonnummer zum Wählen hat.
Q: Warum wählt mein ipppd eine Null zuviel ("isdn0: dialing 0 089XXXXXX...")?
Ich habe doch gar keine Nebenstellenanlage!
A: Die erste Null wird gar nicht gewählt. Sie zeigt lediglich an, welcher
Kanal zum Wählen verwendet wurde.
!commenton
(Die folgende Frage entstammt der syncPPP-FAQ.)
!commentoff
!old
Q: Wenn ich mit ifconfig die Netzwerk-Devices aufliste, hat mein ISDN-
Device HWaddr und IRQ=0 und Base address = 0
A: Dieses Device ist ein gefaketes Ethernet-Device. Ignorieren Sie IRQ
und baseaddr. Sie benötigen nur die HWaddr für die Ethernet-
Encapsulation.
!3ISDN4linux im Netzwerk
!old
Q: xosview zeigt seit der Installation von i4l keine Netzwerkaktivitäten
mehr an.
A: Peter Hettkamp <Peter.Hettkamp@kassel.netsurf.de> schrieb dazu:
!verbon
xosview reagiert, jedenfalls in meiner Version 1.4, auf das ip-
Accounting des Kernels. Also einkonfigurieren, ggf. neuen Kernel
bauen, dann anknipsen mit
ipfwadm -A -a -S your-ip-address-here -D 0.0.0.0/0
ipfwadm -A -a -D your-ip-address-here -S 0.0.0.0/0
Wie's mit variablen IP-Adressen geht, weiß ich nicht, ich habe eine
feste.
!verboff
!commenton
Rainer May <r_may@khavi.desaster.heide.de> hat einige Fragen und Antworten
zum Thema "i4l und Masquerading" zusammengestellt:
!commentoff
!old
Q: Wenn ich z.B. von der Win95-Kiste aus mit Netscape eine Seite aufrufe,
bekomme ich als Antwort nur "unknown host".
A: Was ist denn auf der "Win95-Kiste" als Nameserver eingetragen? Sofern auf
dem Router kein eigener Nameserver läuft, muß natürlich auf allen
LAN-Rechnern der Nameserver des Providers eingetragen sein.
!old
Q: Die Adressen werden jetzt aufgelöst, aber statt der gewünschten Seite
bekomme ich die Meldung "no route to host".
A: Bitte prüfen:
!verbon
* Ist auf dem LAN-Rechner der Linux-Router als Gateway eingetragen
(manche "Betriebssysteme" muß man komplett resetten, bevor Sie da
eine Änderung mitbekommen)?
* Liegt auf dem Router die Default-Route auf dem "Bereitschafts-
Interface" zum Provider (z.B. auf ippp0 bei synch. PPP, oder auf
sl0 bei diald (auch wenn die "echte" Verbindung nachher per ppp0
geht - diald benutzt ein SLIP-Interface als "Türklingel")?
* Erzwingt der Provider die Verwendung von Proxies? Dann müssen die
IP-Adressen der Provider-Proxies auch in den entsprechenden
Programmen der LAN-Rechner eingetragen sein!
!verboff
Q: Nach dem Booten ist mein lokales Netzwerk nicht mehr erreichbar. Ich
verwende das Netzinterface ippp0 mit ifconfig 0.0.0.0; die Defaultroute
zeigt auf ippp0.
A: Wolfgang Barth schrieb dazu am 5. Jan 1997:
!verbon
Mir ist dabei aufgefallen, dass nach dem ersten Verbindungsaufbau via
ippp0 das lokale Netzwerk wieder erreichbar ist. Dann steht auch in
ifconfig ippp0 nicht mehr die 0.0.0.0 drin, sondern eine zugewiesene
IP-Adresse aus dem Pool der Gegenstelle, die bei einem neuen
Verbindungsaufbau neu gesetzt wird.
In de.comp.os.linux.networking wurde der Thread bereits diskutiert,
und es kam eine Lösungsmöglichkeit:
Einfach auf ippp0 eine Dummy-IP-Nummer aus dem Pool setzen. Das
lokale Netzwerk hat auch direkt nach dem Booten trotz default route
keine Probleme mehr, und die IP-Nummer in ifconfig ippp0 wird sowieso
überschrieben.
!verboff
!3Isdnlog
!old
Q: Mein isdnlog funktioniert nicht mehr seit ich HiSax installiert habe?
A: Isdnlog muß entsprechend gepatcht werden, den Patch findet man überall dort
wo man auch HiSax findet (Achtung: beim Patch von 2.50 auf 2.51 steht dann
immer noch 2.50 als Versionsnummer drin!).
Q: Ich habe isdnlog gepatcht, aber es funktioniert trotzdem nicht mit HiSax
zusammen (Isdnlog startet mit den üblichen Meldungen, es passiert aber
nichts)?
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb dazu am 6. Jan 1997:
!verbon
Ist bei den "üblichen Meldungen" auch ein
"(HiSax driver detected)"
dabei?
Falls nein:
- hast du die Version 2.52 auch gestartet - nicht nur compiliert?
- hast du das "telesctrl <DriverID> 1 4" auch nicht vergessen?
- ISDN-Verbindungen funzen ansonsten schon?
Falls ja: Melde dich mal bei mir (isdnlog@Kool.f.EUnet.de) mit
den entsprechenden Log-Files (mit "isdnlog -v7" erstellt).
!verboff
Q: Isdnlog (>=2.52) zeigt mir für einem Anrufer !u1zwei!u0 Telefonnummern an!
Welche gilt denn jetzt?
A: Der Anrufer hat wahrscheinlich das (kostenpflichtige) Feature CLIP
(= Calling Line Identification Presentation, no screening) aktiviert, mit
dem er eine beliebige Telefonnummer übermitteln kann. Siehe dazu die Frage
"Ich habe gehört, es werden eigentlich zwei Caller Id's übermittelt?".!br
Andreas Kool <akool@Kool.f.EUnet.de> schrieb weiterhin am 26. Jan 1997:!br
Reinlegen kann man damit allerdings nur Software/Telefonanlagen,
die den Screening-Indicator nicht auswerten - isdnlog ab Version 2.52
zeigt die richtige, *und* die gefakte Telefonnummer an.!br
...eigentlich gedacht ist CLIP, no screening z.B. für die Übergänge von
firmeneigenen Telefonnetzen in das öffentliche Netz.
!old
Q: Bei Anrufen erhalte ich einen "Internal error: wrong structure".
A: Wahrscheinlich stimmt die Konfiguration in isdnlog.cf nicht. Auch gleiche
MSNs mit unterschiedlicher Dienstekennung müssen separat gezählt werden
(für den Eintrag unter MYMSN).
Steffan Henke <henker@Informatik.Uni-Bremen.de> schrieb dazu auch:
!verbon
Mein Problem mit isdnlog 2.50 und dem "wrong structure error" lag nur
darin, daß ich keine führende 0 bei den Aliases angegeben habe.
Beispiel:
017201234567 Handy 1 -
Bei mir sah es vorher so aus:
*17201234567 Handy 1 -
Damit scheint alles behoben zu sein.
!verboff
!old
Q: Isdnlog stürzt immer mit einem "segmentation fault" ab.
A: Dirk Lutzebaeck <lutzeb@wadk-berlin.de> schrieb dazu:
!verbon
Bei mir schmierte isdnlog immer ab, weil im /etc/services isdnlog
nicht eingetragen war.
!verboff
Q: Ich habe mir Skript angelegt, das Sounds per cat auf /dev/sound oder
ein anderes Device abspielt. Wenn mehrere Ereignisse eintreten, dann gibt es
einen Fehler: "Can't open output file '/dev/sound': Device or resource busy"
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb dazu am 6. Nov 1996:!br
Dagegen hilft nur, eine obere Instanz zu schaffen, die das koordiniert.
Ich persönlich verwende NAS (Network-audio-system), das "rplay" Zeuch
sollte jedoch genauso gut verwendbar sein!
Q: Isdnlog soll ein Programm mit Ausgabeumleitung ausführen (z.B.
"play anruf.au 2>/dev/null" ). Warum meldet isdnlog "Can't start
'/usr/local/bin/play anruf.au 2>/dev/null' with execvp()"?
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb dazu am 6. Nov 1996:!br
Weil isdnlog keine (Bourne) Shell ist ;-) isdnlog kann nur "echte"
Programme starten.!br
Kurz und knapp: Obiges Beispiel muß als ausführbare Datei (-> chmod +x)
mit folgendem Kontext abgespeichert werden:
!verbon
#!/bin/sh
/usr/local/bin/play anruf.au 2>/dev/null
!verboff
Q: Warum beendet sich isdnlog bei einem "kill -1", laut Doku sollte nur die
isdnlog.conf neu eingelesen werden.
A: Andreas Kool <akool@Kool.f.EUnet.de> schrieb dazu am 6. Nov 1996:!br
Ist ein echter Bug in isdnlog-2.5x, der schon behoben wurde.
isdnlog-2.60 (comming soon ;-) kann das besser!
!commenton
(Die folgende Frage/Antwort schickte uns Andreas Kool <akool@Kool.f.EUnet.de>
!commentoff
!old
Q: Isdnlog-2.4x beansprucht 100% der CPU-Zeit.
A: isdnlog-2.4x hatte 2 Möglichkeiten, die gesamte CPU-Zeit in Beschlag
zu nehmen oder sogar komplett die Arbeit zu verweigern:
!verbon
- direkt beim Start von isdnlog oder isdnrep:
Hier haben sich die beiden Programme beim Einlesen der "isdnlog.conf"
vertüddelt.
Abhilfen:
- nie Blank's in der Alias-Spalte verwenden!
(z.b.: "Meine MSN")
- nie "#" in der Alias-Spalte verwenden!
(z.b.: "MSN#3")
- nie "\" in der Alias-Spalte verwenden!
(z.b.: "MSN\#3") (Danke, Holger Wirtz <chick@midips.snafu.de>)
- nie "*" als Eintrag in der Flags-Spalte angeben!
(Danke, Werner Wiethege <ww@slarti.frankfurt.netsurf.de>)
- auch die "START=" Zeile benötigt als Angabe, !u1wann!u0 gestartet
werden soll, also z.b.
START=IOH=auplay hangup.au
und !u1nicht!u0
START=auplay hangup.au
(Danke, Dirk Staneker <zxmjy04@student.uni-tuebingen.de>)
- beim Einsatz der "-S" Option zum Starten von externen Programmen.
Hierbei hat sich isdnlog leider im Code für den X11-Client "xisdn"
verlaufen, und fing zum einen an, in sich selbst zu loopen, zum
anderen hinterließ er gerne Zombies - dies wurde durch isdnlog-2.50
korrigiert.
!verboff
[Der Fehler sollte ab 2.50 behoben sein - die Red.]!br
[Eine hohe CPU-Zeit kann auch auf zu hohe Debug-Werte für isdnlog oder
den Hardware-Treiber (z.B. HiSax) hindeuten - die Red.]
!old
Q: Die Telekom erstattet mir (laut isdnlog/isdnrep) 12 Pfennige für jede
Verbindung?
A: Denkste... Christian Bruehe <oblomow@cs.tu-berlin.de> schrieb dazu
am 24. Okt 1996:
!verbon
Ich hatte neulich den gleichen Effekt, was bei mir nur daran lag, daß
ich aus Versehen zwei mal isdnlog gestartet hatte.
!verboff
Q: Laut isdnlog kostet mich jedes "Besetzt" 45 Einheiten?
A: Das ist ein Bug der älteren isdnlog-Versionen (z.B. 2.41) im Zusammenhang
mit dem ISDN-Merkmal Rückruf bei Besetzt. Natürlich kostet dieses Besetzt
nicht wirklich 45 Einheiten.
Q: Ich habe Probleme, isdnlog mit libc 5.4.7 zum Laufen zu bekommen!
A: Christian Schlittchen <corwin@amber.hb.north.de / corwin@zfn.uni-bremen.de>
schrieb am 8. Okt 1996:
!verbon
Isdnlog habe ich inzwischen gepatcht. Das Problem ist der strftime()-
Aufruf in Zeile 264 in isdnlog.c. Dort muß das "%e" durch ein "%d"
ersetzt werden, dann geht wieder alles.
!verboff
Q: Beim Rauswählen wird immer kurz der Bildschirm schwarz?
A: Roger F. Brand <roger@rz.uni-frankfurt.de> schrieb dazu am 12. Feb 1997:
Ich denke, das liegt am isdnlog. Wenn Du ihn mit der Option -t 1
oder -t 2 gestartet hast, wird eine Synchronisation mit der Uhrzeit
der digitalen Vermittlungsstelle durchgeführt. Dabei kommt es
zur kurzfristigen Ausblendung des Bildschirms.
!3Audio
!commenton
(Die folgenden Antworten entstammen zumeist der Anleitung zu vbox von
Matthias Heßler <hessler@wi-inf.uni-essen.de> und
Bernhard Hailer <dl4mhk@lrz.uni-muenchen.de>; man findet sie unter:!br
!link http://www.lrz-muenchen.de/~ui161ab/www/isdn/;!br
- dort "Audio!" anklicken!)
!commentoff
!old
Q: Mein vboxgetty hebt bei hereinkommenden Anrufen nicht ab.
A: vboxgetty benötigt die Datei ".vboxrc" im Homeverzeichnisses des Nutzers,
für den es konfiguriert wurde. Dort wird die Anzahl der Rings geregelt.
!old
Q: Mein vboxgetty hebt schon beim ersten Klingeln ab, obwohl ich die Anzahl
der Rings auf 4 gesetzt habe.
A: Die RINGS werden von einem Timer im isdn-modul erzeugt, der nicht unbedingt
akkurat verzögert.
Konfiguriert man vboxgetty für 30 Rings, wird etwa zum 5. Klingeln abge-
hoben.
!old
Q: Mein vbox 1.1 arbeitet nicht korrekt mit dem HiSax-Treiber zusammen.
A: HiSax >=1.2 verwenden. Diese Treiberversion verfügt über korrektes Alerting.
!old
Q: Ich vboxgetty hat eine Nachricht für mich in einem Format aufgezeichnet,
das ich nicht mit "cat xxx>/dev/audio" abspielen kann. Wie kann ich die
Nachricht doch noch abhören?
A: vboxgetty kann alle Formate abspielen. Hilfsweise kann man daher einfach
die eingegangene Nachricht als Ansagetext verwenden, und sich selbst
anrufen... :-) (und hinterher nicht vergessen, wieder auf den originalen
Ansagetext umzustellen :-) ).
Q: Am Anfang einer von vboxgetty aufgezeichneten Nachricht befindet sich
oft noch ein Teil meiner Ansage?
A: Das ist ein bekannter Bug, der irgendwie beim Umschalten zwischen Abspielen
der Ansage und Aufzeichnung des Anrufers sein Unwesen treibt. Bisher ist
noch kein echter Workaround bekannt.
!3Dialout On Demand
Q: Wie kommt es zum Gebühren-GAU?
A: Dazu gibt es mehrere Möglichkeiten.!br
1. Es wurde "Bridging" ins Kernel eincompiliert (siehe dazu die
entsprechende Frage weiter unten).!br
2. Broadcasts der Interfaces werden per ISDN weitergeleitet (siehe dazu die
entsprechende Frage weiter unten).!br
3. Sind noch IP-Verbindungen beim Schließen der Leitung offen, dann ist bei
dynamischer Vergabe der IP-Adressen der Gebühren-GAU vorprogrammiert. Es
wird eine neue Leitung aufgebaut mit dem Ziel, die noch offenen
IP-Verbindungen abzubauen. Wegen der unterschiedlichen IP-Adressen können
diese jedoch nicht abgebaut werden - die Leitung wird wieder geschlossen.
Dann sind die IP-Verbindungen immer noch offen, es wird wieder neu
gewählt... usw. (siehe dazu die entsprechende Frage weiter unten).
Q: Seitdem ich einen neuen Kernel installiert habe, baut mein Rechner dauernd
ISDN-Verbindungen auf, ohne Daten zu übertragen (Kosten!).
A: Vielleicht wurde versehentlich die Kerneloption "Bridging" aktiviert?
Q: Mein Router möchte ständig rauswählen (tut er auch) aber es werden
!u1KEINE!u0 Daten übertragen, weder ipfwadm -Al noch tcpdump -i isdn0
zeigen etwas an.
A: Michael Pieper <michael@nexus1.tng.oche.de> schrieb hierzu am 10. Nov 1996:!br
ARP-Requests oder Broadcasts? Du solltest das ifconfig für die
ISDN-Devices mit den Optionen -arp und -broadcast durchführen, um
Verbindungsaufbauten dadurch zu vermeiden.
Q: Nach dem Schließen der Leitung entdecke ich per "netstat -nt", daß noch
IP-Verbindungen offen sind. Wie kann ich diese manuell schließen?
A: Gernot Zander <hifi@scorpio.in-berlin.de> schrieb hierzu am 18. Jan 1997:!br
Du kannst das Interface erst "down" und dann wieder "up" setzen. Wenn Du das
tust, wird es versuchen hinauszuwählen. Wenn Du dann die ausgehende
Telefonnummer entfernt hast, dann wird "no outgoing number..." in syslog
angezeigt, und sobald das interface "up" ist, scheinen alle Verbindungen
geschlossen zu sein.
Q: Wie kann ich Dialout on Demand sicher abstellen?
A: Gernot Zander <hifi@scorpio.in-berlin.de> schrieb hierzu am 10. Jan 1997:!br
Ich lösche die Telefonnummer des Interface [bzw. setze eine ungültige - die
Red.]. Dann sehe ich an der Beschwerde im Syslog auch gleich noch, ob und
wann ein Prozeß Pakete in die Welt schicken wollte.!br
Sascha Ottolski <sascha@alzhimer.isdn.cs.tu-berlin.de> ergänzte
am 28. Okt 1996:!br
Also bei mir passiert genau das, was Du möchtest: Wenn das ISDN-System
"down" ist, meldet Netscape sofort einen Fehler a la "the Server doesn't
have a DNS entry" oder ähnlich. Vermutlich mußt Du die route löschen, damit
das passiert. Bei mir läuft das so:
!verbon
/sbin/route del default
/sbin/isdnctrl system off
/sbin/ifconfig ippp0 down
!verboff
Und damit's dann wieder läuft:
!verbon
/sbin/isdnctrl system on
/sbin/ifconfig ippp0 up
/sbin/route add $GATE-IP dev ippp0
/sbin/route add default ippp0
!verboff
[Die letzte Methode hat jedoch den Nachteil, daß kein Dial-In mehr möglich
ist! - die Red.]
Q: Wie kann ich sonst noch den Gebühren-GAU verhindern?
A: In der nächsten Version kann isdnlog (>2.52) als Watchdog fungieren und
solche Dialouts abwürgen (notfalls über ein Reboot des Rechners).
Q: Kann es passieren, daß trotz abgestürztem Rechner eine ISDN-Verbindung
aufrechterhalten wird (und damit Gebühren kostet)?
A: Karsten Keil <keil@temic-ech.spacenet.de> schrieb dazu am 11. Feb 1997:
Ich vermute, man will mit diesen Status enquiry [in der Schweiz - die Red.]
einfach sicherstellen, daß wenn was auf der Userseite abgestürzt ist, die
Verbindung getrennt wird. Das ist zusätzlich zur Layer 2 Ueberwachung und
nicht ganz sinnlos, da bei vielen Karten/Endgeräten der ISAC im Automodus
gefahren wird und damit ein Rechnerabsturz die Verbindung aufrechterhalten
würde.!br
Bei i4l wird der ISAC allerdings im nonauto Mode betrieben, d.h. wenn keine
Interrupts mehr bearbeitet werden, wird die Verbindung spätestens nach ca.
1/2 Minute getrennt. Der NonAuto Mode hat zwar einen anderen Grund, ist aber
auch ein Sicherheitsfeature ;-), was aber nicht heißt, daß ein Gebühren-Gau
unmöglich ist.
Q: Wie komme ich unerklärlichen dialouts auf die Spur?
A: Dirk Lutzebaeck <lutzeb@wadk-berlin.de> schrieb dazu am 5. Nov 1996:
!verbon
Leider gibts meines Wissens nach für tcpdump noch keinen patch für sync
ppp encapsulation. Wenn du ipppd benutzt bleibt Dir deshalb nur die
Möglichkeit, konsequent einen daemon nach dem anderen abzuschalten und
sehen ob Ruhe im Karton ist. Insbesondere named, sendmail aber auch
smbd (Samba) sind Kandidaten, die gerne Verbindungen aufbauen.!br
!verboff
[Zu tcpdump siehe die entsprechende Frage im Abschnitt "Allgemein" im
Kapitel "Konfiguration". Zu named und sendmail siehe die nachfolgenden
Fragen - die Red.].!br
Christoph Trautwein <trautw@fzi.de> schrieb weiterhin am 5. Nov 1996:
!verbon
Ich habs auch nur durch Killen verdächtiger Prozesse rausgefunden.
Genaueres zum Suchen der Prozesse und wie man sie still bekommt gibts
unter:
!link http://www.fzi.de/sim/people/trautw/i4l/index.html;
!verboff
Herbert Rosmanith <herp@wildsau.idv.uni-linz.ac.at> schrieb noch am
24. Nov 1996:
!verbon
Probier mal rauszufinden, welche Anfrage das auslöst, und zwar mit
"isdnctrl verbose 3". dann sollte in der kernel-message-queue (siehst
Du wenn Du "dmesg" tippst) ein Eintrag a'la:
OPEN: 141.76.60.54 -> 193.171.67.253 TCP, port: 1686 -> 540
aufscheinen. das obige beispiel heisst, dass unser rechner auf port 540
post abholen will (uucp over tcp/ip over isdn).
!verboff
[geloggt wird aber immer nur das auslösende Packet - die Red.]!br
Stefan Luethje <luethje@sl-gw.lake.de> schrieb weiterhin am 27. Nov 1996:
!verbon
Ein kleiner Tip noch. Es gibt viele Daemons auf der Linux-Seite, die
Broadcast auf allen Interfaces versenden. Das führt auch häufig zum
Autodial.
Da kann man die broadcast-Adresse auf das dummy0-Interface umlenken.
Ist zwar nicht sauber, aber tut.
!verboff
Siehe zu diesem Thema auch die letzte Frage.
Q: Kann es sein, daß mein am Netz angeschlossenes Win95 irgendwie die
unmotivierten Herauswahlen verursacht?
A: Stefan Luethje <luethje@sl-gw.lake.de> schrieb dazu am 27. Nov 1996:
!verbon
Wenn beim Wintel der Nameserver des Providers eingetragen ist, und
Sinnlos3.11/95 gestartet wird, muß (warum weiß nur Bill Gates) er
sich unbedingt mit dem Nameserver unterhalten.
!verboff
Q: Ich habe einen lokalen DNS-Nameserver eingerichtet. Warum kommt es immer
noch zu unerwünschten Herauswahlen durch den Nameserver? Wie finde ich den
Übeltäter?
A: Jens Ey <jens@jeyhh.shnet.org> schrieb dazu am 29. Nov 1996:!br
Schalte mal Debug-level 1 beim named ein und schau Dir das Logfile
in /var/tmp an.!br
Bei mir finden sich da regelmäßig DNS-Anfragen von Windoof-Mühlen.
Problem dabei ist, daß gerne nach so Sachen wie WORKGROUP.domain.de gefragt
wird u.ä. Es werden also Namen gefragt, die der DNS beim besten Willen
nicht kennen kann. Ich nehme mal an, dass der Sinnlos-Rechner auf der Suche
nach seinem Masterbrowser ist oder einen Domainen Controller finden will.!br
Das ganze hat mich in einem Netzwerk mit Internet-Zugang bei Linux mal so
genervt, dass ich einen externen Terminaladapter eingesetzt habe, einen
Proxy-Server eingerichtet habe und diald dann so konfiguriert, dass
DNS-Anfragen nur noch vom Linux-Rechner durchgeführt werden dürfen.
Damit wird die Verbindung dann nur noch aufgebaut, wenn sie wirklich
gebraucht wird. Der (cachende) lokale DNS kommt dann nur noch zum Einsatz,
wenn die Verbindung schon oben ist.
Q: Wie kann ich die DNS-Anfragen meines Win95-Rechners nach WORKGROUP.xxx
abschalten?
A: Eike Stepper <isdn@esc-net.de> schrieb dazu am 30. Nov 1996:
!verbon
Warum stellst du nicht einfach das Windows-Setting im Netzwerksetup:
"Use DNS for Windows Names Resolution" (oder ähnlich)
auf No?
Dann müßte Ruhe sein, zumindest bei mir ist es so.
!verboff
Q: Wie bringe ich sendmail dazu, von sich aus keine Verbindungen mehr
aufzubauen, ohne daß lokale Mail liegenbleibt?
A: Zunächst muß man sendmail dazu bringen, keine DNS-Verbindungen mehr
aufzubauen. Dazu sollte man folgende Features angeben: "nodns",
"nocanonify".!br
Falls man einen Rechner als smarthost einträgt, muß man dafür sorgen, daß
dieser Name nicht zu einem Aufruf des Nameservers führt. Dazu trägt man
entweder nur die IP-Adresse direkt ein, oder man ergänzt den Namen in
/etc/hosts (/etc/host.conf sollte entsprechend "order hosts bind"
enthalten)!br
Weiterhin erklärt man alle nicht lokalen Mailer als teuer/expensive
("define(SMTP_MAILER_FLAGS, e)"), und verbietet sendmail mit
"define(`confCON_EXPENSIVE', `True')", teure Mailer von sich aus
anzuwählen. Der Aufruf von Sendmail darf für die Option "-q" keine
Zeitangabe mehr enthalten (z.B. also nur "-bd -os -q"). "-os" bedeutet,
daß alle Mail gequeued wird (was nicht verhindert, daß lokale nicht
auch sofort zugestellt wird). Einziger Haken: beim Booten will sendmail
evtl. vorhandene Mail versenden, obwohl das Netzwerk noch nicht oben ist.
Dazu sollte man beim Booten vor dem Start alle zuzustellende Mail aus
/var/mqueue entfernen - um diese nach dem Start von sendmail wieder
zurückzuschieben.!br
Mail an teure=entfernte Mailer wird nun nur noch beim expliziten Aufruf
von "sendmail -q" zugestellt.
Q: Das Samba-Paket löst bei mir dauernd Herauswahlen aus. Wie kann ich das
unterbinden?
A: Andreas Glahn <andreas@tao.westfalen.de> schrieb dazu am 31. Jan 1997:
Hatte ich auch mal. Bei mir habe ich dann beim Aufruf des Samberdämons
die interne IP-Adresse, welche ich nur zu Hause verwende, mitübergeben.
Seitdem wird ein SambaRequest nicht mehr auf default geschickt, sondern
bleibt im Haus.!br
Mal die Konfiguration mit netstat und TCPDUMP ansehen. Mit TCPDUMP bekommt
man schnell heraus, mit welcher IP Samba versucht, eine Verbindung
aufzubauen.!br
Bei mir hat mein InternerLinuxRechner z.B.: 192.168.99.99!br
Mein Win95-Rechner: 192.168.99.88!br
Auf dem Linuxrechner habe ich dann Samba mit:
!verbon
nmdb -S -B 192.168.99.255 -I 192.168.99.99
!verboff
gestartet.!br
Siehe auch die Frage oben: -broadcast und evtl. -arp bei der Definition der
Interfaces angeben!
Q: Wie gewöhne ich Netscape ab, beim Start eine Herauswahl zu initiieren?
A: Wahrscheinlich wurde in den Einstellungen eine Homepage eingetragen, die
nicht lokal vorliegt. Nur eine, die Netscape sofort laden kann, (z.B.
"file://localhost/xxx") verursacht keine sofortige Herauswahl. Alternativ
kann man auch einen Cache-Daemon einrichten, der haeufig benoetigte Seiten
speichert.!br
Ein angegebener Proxy sollte keine Herauswahl verursachen, auch wenn der
komplette Rechnername eingetragen ist. Lediglich bei der Neueintragung
versucht Netscape, die IP-Adresse einmalig via DNS abzufragen (und kann in
diesem Sonderfall eine Herauswahl verursachen).
!3Chargeint
!old
Q: Die Verbindung endet nach einem Time-Out nicht. Mein Service-Provider
setzt einen Cisco-Router ein, der alle zehn Sekunden ein "keep-alive"-
Paket sendet, so daß die Verbindung nie endet.
A: Winfried Haug <haug@seicom.net> schrieb:
!verbon
Wenn man die keep-alive-Packets nicht beantwortet, beendet die Cisco
das routing! Das passiert in der Regel nach dem 4. oder 5. keep-alive-
Packet, das der eigene Router nicht beantwortet.
Die beste Lösung ist es, dem Provider mitzuteilen, daß man keine
keep-alive-Pakete haben will (no keepalive in der Cisco-Konfiguration).
Gerade zwischen zwei Cisco-Routern und gemieteten Leitungen gibt es
!u1keinen!u0 Grund, keep-alive zu verwenden.
!verboff
!old
Q: Mein Service-Provider will die "keep-alive"-Pakete nicht für mich aus-
schalten. ipppd legt nie auf.
A: Dirk Melchers <dirk@merlin.nbg.sub.org> schrieb dazu:
!verbon
LCP-Messages werden als Verkehr betrachtet und halten die Leitung
offen. Es gab da einen kleinen Patch gegen Linux-2.0.21 mit
dem patch-chargeint-2.04 für isdnlog-2.50-Benutzung. Mit diesem Patch
werden *alle* syncPPP-LCP-Daten bei der Berechnung des Hangup-Timers
ignoriert, so daß der Hangup auch dann funktioniert, wenn der Provider
alle paar Sekunden LCP-Echo-Requests sendet.
Warnung: Der Code funktioniert bei *mir* (mit meinem Provider), ich
weiß aber nicht, ob er auch bei *euch* geht! Einfach mal versuchen!
!verboff
Wer den Patch benötigt, maile an Dirk Melchers.
Q: Der "lcp-keep-alive"-Patch klappt nicht - ipppd hängt immer noch nicht auf.
A: Es kann sein, daß nicht die LCP-Pakete eine Verbindung offenhalten, sondern
OSPF-Routing Updates. Das Verschicken dieser Updates kann entsprechend nur
auf der Cisco ausgeschaltet werden. Eddy PE1CIG <eddy@sys2.pe1cig.ampr.org>
schrieb dazu folgenden Tip am 27 Dez 1996:
!verbon
Nach einigen Experimenten kam ich zu einer Lösung auf der Cisco
(IOS 11.0.7), das "snapshot routing" genannt wird. Ich konfigurierte
"snapshot server" auf dem BRI-Interface. Das bedeutet es wird nur dann
Routing Updates verschicken, wenn es diese auch durch dieses Interface
empfängt.
!verboff
!3Dial-In
Q: Ich bekomme immer wieder die Meldung "isdn_tty: call from XXX -> YYY
ignored". Warum ignoriert isdn4linux (syncPPP) den Einwahlversuch?
A: Dafür kann es zwei Erklärungen geben. Entweder wurde die eigene MSN (hier:
YYY) nicht richtig per "isdnctrl eaz <interface> YYY" gesetzt. Oder es
wurde "isdnctrl secure <interface> on" gesetzt, ohne die hereinkommende
Nummer (hier: XXX) mit "isdnctrl addphone <interface> in XXX" zu erlauben.
!old
Q: Ich habe mehrere ippp*-Devices konfiguriert. Jeder hereinkommende Anruf
"verbraucht" ein Device, bis dann irgendwann keines mehr verfügbar ist.
A: Das ist ein bekannter Fehler. Es gibt einen entsprechenden Patch, um diesen
Verbrauch an Devices zu verhindern.
Manfred.Dill <manfred.dill@bmw.de> schrieb dazu:
!verbon
im Modul isdn_net.c (Zeile 1720) gibt es den Kommentar "/* if this
interface is dialing, it does it probably on a different device, so
free this device */" und es wird die Funktion isdn_free_channel
aufgerufen.
[...]
Das ganze sieht jetzt folgendermaßen aus:
#ifdef CONFIG_ISDN_PPP
if (p->local.p_encap == ISDN_NET_ENCAP_SYNCPPP)
ippp_table[lp->ppp_minor]->state = IPPP_OPEN;
#endif
!verboff
Es ist damit zu rechnen, daß das in einen verbesserten ipppd einfließen
wird.
Q: Ich habe mit "isdnctl pppbind" eine exklusive Bindung hergestellt. Leider
löscht sich diese bei einem hereinkommenden Anruf.
A: G. Richter <richter@ecos.de> schrieb dazu an Michael Hipp
<Michael.Hipp@student.uni-tuebingen.de> am 2. Nov 1996:
!verbon
> ... ich habe den Code mal durchsucht und tatsaechlich
> eine moegliche Fehlerquelle bei reinkommenden Anrufen
> ausgemacht. Trifft das auf dein Szenario zu?
> Wenn ja, mal die Zeile: (isdn_net.c, etwa Zeile 1730)
> p->local.pppbind = -1;
> in der Funktion isdn_net_find_icall() rauswerfen.
Ich habe die Zeile rausgeschiessen und siehe da es geht.
!verboff
!commenton
(Die folgende Frage entstammt der syncPPP-FAQ.)
!commentoff
!old
Q: Eine SunISDN versucht, auf mein i4l-System zuzugreifen, aber es geht nicht.
A: Die Sun versucht, mit asynchronem PPP zu kommunizieren. i4l kann das nicht.
Man versuche, die ttyI*-Devices in Zusammenhang mit dem Standard-PPP
(pppd) zu benutzen.
!3Callback
!old
Q: Ein hereinkommender Anruf wird von meinem i4l mit reject abgewiesen. i4l
führt danach einen Callback durch. Der reject wird aber von der
Gegenstelle nicht erkannt. Diese versucht dann weiterhin, mein i4l anzu-
rufen.
A: Die meisten Probleme im Zusammenhang mit Callback lassen sich durch das
Anpassen der Callback-Verzögerung mit "isdnctrl cbdelay" lösen.
1 Sekunde hat sich als meist brauchbarer Wert erwiesen.!br
Jakob Lemler <Jakob.Lemler@tg.fh-giessen.de> schrieb dagegen am 9. Jan 1997:
Es funkt, wenn ich auf der Station, die den CB auslösen soll, ein cbdelay
von 2 Sek. eintrage. Auf der angerufenen Seite sind 3 Sek. eingestellt.
Unter 2 Sekunden läufts nicht und wenn die Differenz zwischen der
anrufenden Station und der Station, die den Callback machen soll, zu groß
wird, funkts auch nicht....
Q: Der Callback klappt nicht recht, wieviele ippp*-Devices benötige ich
mindestens?
A: Manfred Dill <manfred.dill@bmw.de> schrieb dazu am 18. Dez 1996:!br
Man sollte ein zweites Device ippp1 verwenden, das für den Callback
benutzt werden kann. Wegen eines Fehlers in i4l wird das erste Device
benutzt für den Callback und nicht wieder freigegeben. Wenn die Verbindung
beendet ist wird das dritte Device (falls es existiert) geöffnet und damit
schließt sich der Kreis. Zum Devices-Verbrauch siehe auch die entsprechende
Frage im Kapitel Dial-In.
Q: Callback klappt immer noch nicht recht, kann es am Telestreiber liegen?
A: Karsten Keil <isdn4@temic-ech.spacenet.de> schrieb dazu am 10. Jan 1997:
Beim Teles-Treiber gibt es Probleme mit Callback. Nimm HiSax 1.5 (1.4 hat
bei Callback auch einen Bug).
!old
Q: Wenn ich Callback mit Euro-ISDN versuche, wird der Ruf nicht
zurückgewiesen.
A: Karsten Keil <keil@temic-ech.spacenet.de> hat das inzwischen in seinem
"HiSax"-Treiber gelöst.
Siehe auch Frage Allgemeines|HiSax und Abschnitt HiSax-Treiber.
!old
Q: Irgendwie kann mein isdn4linux keinen Callback auf einen Anruf einer
Cisco erwidern?
A: Torsten Hentschel <Torsten.Hentschel@DInet.de> schrieb hierzu am 3. Okt 1996:
!verbon
Ein Cisco wählt unter Umständen so heftig, daß kein ipppd eine Chance
hat, einen Callback zu starten.
Ciscos sind so programmiert (definitive Aussage eines Cisco-
Entwicklers):
Wenn ein Cisco ein Paket empfängt, das über ein "dial on demand"
ISDN-Interface herausgeroutet werden soll, auf dem noch keine
Telephonverbindung besteht, und wenn gleichzeitig ein D-Kanal zum
Herausrufen frei ist, dann wird sofort herausgerufen.
Wenn also (so ist die Situation bei Delta Internet ein halbes Jahr
gewesen) ein Cisco auf der anderen Seite steht, der locker 8 D-Kanäle
zur Verfügung hat und wenn jemand einen simplen "ping <RemoteIP>"
startet, dann benutzt der Cisco (im schlimmsten) Fall alle seine 8
D-Kanäle, um das Gegenüber anzurufen. Sicher kann er nicht ein und
dieselbe Telephonnummer mit zwei D-Kanälen gleichzeitig anrufen (gäbe
ja sofort besetzt). So dumm programmiert ist er auch nicht, aber er
macht den nächsten D-Kanal schon zum Herauswählen (Blockwahl)
startklar, bevor der Ruf auf dem vorherigen D-Kanal als gescheitert
betrachtet wird.
So ein Cisco funktioniert also wie ein Maschinengewehr bezüglich des
Herausrufens. Und kein Linux bekommt für einen Callback einen freien
D-Kanal, wenn es der Cisco nicht will.
Das Dumme ist: Ein Cisco erwartet, selbst wenn er auf "callback client"
konfiguriert ist (Linux ruft zurück), immer, daß wenigstens einmal
abgehoben wird, dann im Einvernehmen wieder aufgelegt wird und danach
der Rückruf geschieht. Denn bei Verwendung von PPP muß immer, bevor ein
Rückruf passieren darf, einmal der Username und das Paßwort
ausgetauscht werden, um sicher zu gehen, daß derjenige, der den
Callback wünscht, überhaupt dazu autorisiert ist. [...]
!verboff
Torsten Hentschel <Torsten.Hentschel@DInet.de> schrieb weiterhin am
20. Nov 1996:
!verbon
Selber habe ich das Callback über PPP mit zwei CISCOs oft genug
probiert. Versuche mit der Kombination CISCO <-> Linux sind jedoch,
nach meiner Erkenntnis, zum Scheitern verurteilt.
Denn ein CISCO handelt den Callback-Request stets über PPP aus.
Dafuer muss also die Seite, die die Aufforderung zum Rückrufen
bekommt erstmal abnehmen und alles aushandeln (Authentisierung,
...), dann wird aufgelegt und zurückgerufen.
isdnctrl-Kommandos von Linux beeinflussen nur das Netzdevice
des Kernels und haben bezüglich des Callback wenig bis gar
keine Einflüsse auf den ipppd. Der bekommt gar nicht mit,
dass er erwarten soll, dass die Gegenstelle zurückruft.
Entsprechend beantwortet er auch Angebote des CISCO
über das PPP, dass der CISCO auch zum Zurückrufen bereit wäre,
mit einer Abweisung. Das veranlasst den CISCO zu der Annahme,
daß er dann doch nicht zurückrufen soll. Denn wenn er nicht
im Laufe der Initialisierung über PPP erfährt, daß der Anrufer
zurückgerufen werden will (er muss explizit sagen: "Ich will"),
tut er das auch nicht.
Der Cisco wird Dir das bestätigen, wenn Du Dich auf Deinem
Cisco einloggst und mit den Befehlen
deb ppp chap
deb ppp negotiotion
deb ppp error
term mon
ansiehst, was er zu den Einwählversuchen Deines Linux-Rechners
sagt, die dann, wenn sie zeitgleich geschehen, durch Debug-Meldungen
kommentiert werden. Mach das bitte nicht auf der Console, sondern
über einen Telnet, sonst kommt der CISCO mit dem Loggen über die
serielle Schnittstelle nicht nach.
!verboff
Q: Callback von Ascend aus klappt nur wenn ich im Ascendmenue "Active=Yes"
setze; dann ruft der Ascend mich jedoch dauernd an, selbst wenn meine
Maschine abgeschaltet ist.
A: Ulrich Klein <ulik@hprc.tandem.com> schrieb dazu am 14. Dez 1996:!br
Irgendwo in den Ascend-Menus kann man "dial broadcast" auf "no" oder "off"
setzen. Ansonsten waehlt das Ding bei jedem Broadcast. Das hat zumindest bei
mir damals geholfen. Falls tatsaechlich jemand aus dem Netz, in dem die
Ascend haengt, eine Verbindung aufbauen will, helfen nur die merkwuerdigen
Filter. Ich glaube da gab es einen, mit dem man erreichen kann, dass die
Kiste nur fuer Callback rauswaehlt.
Q: Wie kann ich einen Banzai! per Callback zurückrufen?
A: Jan-Olaf Droese <jano@layla.RoBIN.de> schrieb dazu am 31. Jan 1997:!br
Auf Banzai-Seite sollte ein `c' an die ausgehende Nummer angehängt
werden, damit das Teil auf den Rückruf vorbereitet ist. Zur
Sicherheit kannst Du noch die Anwahlversuche beim Banzai auf 1
stellen, damit es nicht zu call-collisions kommt.
Auf i4l-Seite habe ich folgendes eingestellt:
!verbon
isdnctrl callback isdn0 in
isdnctrl cbdelay isdn0 1
!verboff
Q: Irgendwie kommt der Module-Count bei Callbacks durcheinander. Wie kann ich
jetzt meine ISDN-Modul entladen?
A: Karsten Keil <keil@temic-ech.spacenet.de> hat als vorläufigen Workaround
zwei "geheime" telesctrl-Kommandos eingeführt:
!verbon
telesctrl <id> 3 1 ---> dec module_count
telesctrl <id> 4 1 ---> inc module_count
!verboff
Bitte mit entsprechender Vorsicht handhaben!
!3MPPP
!old
Q: SyncPPP klappt problemlos über einen Kanal. Die Verwendung von MPPP
scheitert allerdings an Problemen bei der Verständigung zwischen meinem
ipppd und der Gegenstelle.
A: Michael Hipp <Michael.Hipp@student.uni-tuebingen.de> schrieb am 11. Okt 1996:
!verbon
Zuerst mal kurz zum Fehler: deine Gegenseite mag die MP-MRU von 0x5dc
nicht sondern will eine kleinere (0x5d7) .. das übernimmt allerdings
der ipppd nicht (Bug) .. Probier einfach mal von vorneherein 0x5d7 als
MP-MRU auszuhandeln.
Wenn die MP-MRU nicht ausgehandelt wird, schaltet sich kein MPPP ein ..
daher wohl auch die Folgefehler.
!verboff
!2Nationale Besonderheiten
!3Deutschland (1TR6)
!old
Q: Welche EAZ soll ich für i4l verwenden?
A: Es können alle EAZ verwendet werden. Allerdings haben zwei EAZ eine
besondere Bedeutung und können Probleme bereiten:
!verbon
EAZ 0: globaler Ruf (alle Telefone klingeln)
EAZ 9: globaler Ruf (aber kein Telefon klingelt)
!verboff
Gernot Zander <hifi@scorpio.in-berlin.de> schrieb dazu am 6. Jan 1997:
!verbon
0 würde ich nicht nehmen, da bestünde für meinen Geschmack zu
sehr die Möglichkeit, daß sich i4l alle Gespräche klaut.
!verboff
Q: Ich verwende 1TR6 an einer Nebenstellen - die Durchwahl ist aber
mehrstellig (z.B. 206). Welches ist meine EAZ?
A: Jens Ey <jens@jeyhh.shnet.org> schrieb dazu am 10. Jan 1997:!br
Die EAZ bei Nebenstellenanlagen ist meist die letzte Ziffer der Nebenstelle.
Als EAZ müßtest Du demnach für den Linux-Rechner eine '6' eintragen.
!old
Q: Die State-Machine bleibt bei 1TR6 hängen.
A: Karsten Keil <keil@temic-ech.spacenet.de> hat das inzwischen in seinem
"HiSax"-Treiber gefixt.
Siehe auch Frage Allgemeines|HiSax und Abschnitt HiSax-Treiber.
!3Niederlande
Q: Wie sieht unsere MSN aus?
A: In den Niederlanden umfaßt die MSN (im Gegensatz zur deutschen
Telekom) !u1auch die Vorwahl!u0. Wäre die eigene Telefonnummer etwa
01234-56789, dann müßte diese folgendermaßen konfiguriert werden:
!verbon
* Modememulation:
"AT&e123456789" (ohne Null am Anfang)
* Netzinterfaces:
"isdnctrl eaz <interface> 123456789" (ohne Null am Anfang)
Für Testanrufe an sich selbst:
"isdnctrl addphone <interface> in 123456789" (ohne Null am Anfang)
"isdnctrl addphone <interface> out 0123456789" (mit Null am Anfang)
!verboff
Q: Wie kann ich isdnlog dazu bringen, die Gebühren nach den Regeln der
niederländischen Telefongesellschaft zu berechnen?
A: Siehe dazu die gleiche Frage unter "isdnlog" im Kapitel "Konfiguration".
Q: Gibt es sonstige Besonderheiten?
A: Es wird vermutet, daß die niederländische Telefongesellschaft nachts
manchmal eine TEI verliert. Siehe dazu die Frage "Bei meiner ELSA-Karte
blinkt öfters die LED, die den Verlust der TEI anzeigt. Meine Verbindungen
sind leider auch öfter gestört..."
!3Österreich
!old
Q: Wir haben hier weder eine MSN noch eine EAZ, sondern lediglich eine
normale einfache Telefonnummer. Was müssen wir für i4l verwenden?
A: Bernhard Kruepl <b.kruepl@ieee.org> schrieb dazu:
!verbon
In Österreich muß als eingehende MSN/EAZ immer "0" für die
erste (oder einzige) Rufnummer verwendet werden. Alle weiteren
MSNs sind normal zu setzen.
!verboff
!old
Q: Anrufe hinaus und hinein klappen nicht / "incoming call without CPN"
A: In Österreich werden ISDN-Anschlüsse (anders als in Deutschland)
standardmäßig !u1ohne!u0 MSN bereitgestellt. Das heißt, wenn jemand die von
der Post vergebene ISDN-Nummer wählt, wird dem Gerufenen ein sogenannter
"Global Call" signalisiert. i4l sagt dann "incoming call without CPN" --
"CPN" bedeutet Called Party Number.
Lösung: eingehende "MSN" (es ist in Wahrheit keine) auf "0" setzen, dann
reagiert i4l auf den Global Call. Sonst wartet es auf die Signalisierung
der von Dir gesetzten Rufnummer, und das passiert nie (nur bei den
zusätzlich vergebenen MSNs).
Abgehend sollte man sehr wohl die Nummer ohne Vorwahl setzen -- wenn man
etwas Falsches hinschreibt, ersetzt das Amt das allerdings für einen.
!old
Q: Warum geht mein getty nicht an die gewünschte EAZ, wenn jemand die "0",
die Broadcast-Nummer wählt? Im Logfile steht "Incoming call without CPN,
assuming '0'".
A: CPN=Called Party Number, die Nummer auf der eigenen Seite. Die fehlt. Daher
nimmt i4l die 0 an. Wenn der getty auf eine andere Nummer als "0"
eingestellt ist, geht es nicht ran. Man lasse jemanden mit Telefon auf die
EAZ des gettys anrufen und sehe nach, ob dann auch alle Telefone klingeln
oder nur das, das vorher auf die EAZ des gettys gestellt wurde. Kann ja
auch ein Telekom-Fehler sein.
!3Schweiz
!old
Q: Wir haben hier weder eine MSN noch eine EAZ, sondern lediglich eine
normale einfache Telefonnummer. Was müssen wir für i4l verwenden?
A: Herbert Rosmanith <herp@wildsau.idv.uni-linz.ac.at> schrieb:
In der Schweiz muß als MSN/EAZ die !u1letzte Nummer!u0 der Rufnummer angegeben
werden (also "6" für die Rufnummer "123456").
!old
Q: Ich kann nur für 184 Sekunden Verbindung mit i4l fahren, danach wird die
Verbindung mit dem Grund "Temporary failure" abgebrochen, seit die
Vermittlungstelle eine neue Software bekommen hat.
A: Das ist ein Problem mit i4l - Q.931 schreibt vor, daß eine Antwort auf
ein "STATUS ENQUIRY" frame geliefert werden muß. Das ist in i4l jedoch
noch nicht realisiert.
Karsten Keil <keil@temic-ech.spacenet.de> hat das inzwischen in seinem
"HiSax"-Treiber gefixt. Für den Teles-Treiber gibt es einen Patch
namens STATUS.
Siehe auch Frage Allgemeines|HiSax und Abschnitt HiSax-Treiber.
Q: Wie kann ich isdnlog dazu bringen, die Gebühren nach den Regeln der
schweizer Telefongesellschaft zu berechnen?
A: Siehe dazu die gleiche Frage unter "isdnlog" im Kapitel "Konfiguration".
!3Portugal
Q: Was müssen wir als MSN setzen?
A: Solange nicht mehrere Telefonnummern bzw. MSNs beantragt wurden, wird
von der Telefongesellschaft keine Telefonnummer übermittelt. Entsprechend
muß "0" als MSN verwendet werden. Wurden mehrere MSNs beantragt, so sind
diese normal zu setzen.
!3Nordamerika
Q: Können wir isdn4linux in Nordamerika einsetzen?
A: Ja, die Firma "Spellcaster" hat für ihre eigenen Karten entsprechende
isdn4linux-Treiber geschrieben. Nähere Informationen gibt es bei:
!verbon
Ian James
Customer Service Manager
SpellCaster Telecommunications Inc.
73 Laird Drive, Suite 206
Toronto, Ontario
Canada M4G 3T4
Phone: 1 (800) 238-0547
Fax: (416) 425-0854
E-mail: ipj@spellcast.com or sales@spellcast.com
http://www.spellcast.com
!verboff
Q: Warum kann ich keine europäischen ISDN-Karten in Nordamerika einsetzen?
A: In Europa stellt üblicherweise die Telefongesellschaft den Netzabschluß zur
Verfügung (NTBA). In Nordamerika muß sich üblicherweise !u1der Kunde!u0 ein
solches Gerät (NT-1) besorgen! Die meisten ISDN-Karten bieten deshalb einen
integriertem NT-1 an.!br
Zudem gibt es weitere Unterschiede. Während z.B. in Europa ein PRI (Primary
Rate Interface) 30 B-Kanäle umfaßt, sind es in Nordamerika nur 23.
Q: Welches Protokoll wird in Nordamerika gefahren?
A: Es wird NI-1 verwendet - ein Verwandter von DSS1. Beide gehören zu den
Q.931 Protokollen, realisieren aber unterschiedliche Funktionsbereiche und
sind deshalb nicht zueinander kompatibel.
!2Verschiedenes
!old
Q: Wie kann ich meine Rechneruhr nach ISDN stellen?
A: isdnlog bietet genau das mit der Option "-t" an. Allerdings werden durch
ISDN keine Sekunden übermittelt, und die Zeit ist auch nicht sehr
genau - je nach Vermittlungsstelle können sich mehrere Minuten (!)
Abweichung ergeben. Sinnvoll ist das nur beim Einsatz des
Chargeint-Patches.!br
Um eine genaue Uhrzeit einzustellen fährt man wesentlich besser, wenn man
sich eine PC-Funkuhr besorgt und z.B. mit xntp auswertet. Man kann auch
einen Timeserver über das Internet anrufen und mit "netdate" oder "rdate"
abfragen. Einen Server findet man zum Beispiel in Köln:
time.rrz.uni-koeln.de, es gibt aber noch viele mehr.
Q: Wo gibt's Informationen zu den Dipschaltern meines NTBA?
A: !link ftp://novix.oih.rwth-aachen.de/pub/ntba.zip; (ca. 170kB)
Q: Kann ich zwei ISDN-Geräte direkt mit einer Art "Null-Modemverbindung"?
A: Nein, das ist nicht möglich. Die Konzeption von ISDN schließt soetwas aus.
Es wird immer ein NTBA oder eine TK-Anlage mit internem Bus benötigt.
!old
Q: Wo finde ich Unterlagen zu den HSCX und ISAC Bausteinen von Siemens?
A: Alexander List <alex@ag.or.at> schrieb:
!verbon
!link http://www.siemens.de/;, gibt's einen Haufen PDF-Files drauf.
Wenn Dir eine CD-ROM schriftlich genug ist: Technical Product Information
for Siemens Semiconductors, Best.Nr. B192-H6641-X5-X-7400
Siemens AG, Semiconductor Group, Balanstr. 73, Pf. 801709, D-81617
München, Fax 089-4144-3952.
!verboff
Beat Doebeli <beat@castle.swill.org> schrieb:
!verbon
(Zitat aus dem Siemens Handbuch)
Richten Sie bitte Ihre Bestellung an:
Siemens AG
LZF Semiconductor Book Shop
Postfach 2352
90713 Fürth-Bislohe
Tel (0911)3001-220/224
Fax (0911)3001-238
Preisgruppen (1994)
I DM 5.-
II DM 10.-
III DM 20.-
IV DM 30.-
ISAC S PEB 2085; PEB 2086 ISDN Subscriber Access Controller
Best-Nr. B115-H6485-G1-X-7600, 328 Seiten Preiskat. IV
HSCX - High Level Serial Communication Controller Extended
Best-Nr. B115-H6520-G1-X-7600, 140 Seiten Preiskat. III
oder als CD-ROM
Technical Product Information for Communication ICs (Edition 1, Jun
95)
Best-Nr. B193-H6905-X-X-7400, Preis ?
!verboff
!old
Q: Wo finde ich das "Fledermaus"-Buch zur Konfigurierung von sendmail?
A: Dietmar <dietmar@highway.bertelsmann.de> schrieb am 8. Okt 1996:
!verbon
Zitat O'Reilly Katalog 1997 (frisch von der Buchmesse):
"Buchhändler erzählen uns, daß einige Bücher manchmal so stark mit den
Tieren identifiziert werden, daß Kunden z.B. gar nicht mehr nach dem
eigentlichen Titel, sondern z.B. einfach nur nach dem 'Kamel-Buch'
(Programming Perl) fragen."
!verboff
In einer !u1guten!u0 Buchhandlung solltest Du also das folgende finden
können:
!verbon
Titel: sendmail (3. Auflage 9/94)
Autor: Costales, Allman, Rickert
ISBN: 1-56592-056-2
Kosten: 66.-- DM
!verboff
Näheres unter
!verbon
!link http://www.ora.com/catalog/sendmail/noframes.html;
!link http://www.lob.de/;
!verboff