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: 18-Mar-97 URL: http://www.lrz-muenchen.de/~ui161ab/www/isdn/ !1FAQ für isdn4linux - Version 1.3.2 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 , (c) 1995!br Umfassende Überarbeitung und Erweiterung (1996, 1997):!br Matthias Heßler ,!br Bernhard Hailer ,!br Scott Hanson (Übersetzung in's Englische),!br Michael Hipp (viele syncPPP-Fragen)!br Rainer May (i4l im Netzwerk)!br !br Die Übersetzung der FAQ in's Englische wurde koordiniert von!br Scott Hanson !br wobei mitwirkten:!br Sven Tervoort und!br Matthias Hessler .!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 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. 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-/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 ". Im Feld 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 . Man gibt im Feld 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 - holt das File !verboff Die Archive heißen "archiv.", 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 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 Italien 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 , 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 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 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 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 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 : !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 : !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 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 CVSROOT auf oldhades.think.de:/i4ldev (z.B. export CVSROOT=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 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 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 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 AOC-x, CLIR, COLP, CVS, HDLC, HSCX, ISAC, TEI...? A: Hier ein kleines Glossar:!br !b1AOC-D!b0 !verbon AOC-D ist die "Gebühreninformation während der Verbindung". !verboff !b1AOC-E!b0 !verbon AOC-D ist die "Gebühreninformation nach der Verbindung". Dieses Dienstemerkmal ist in Deutschland im "Komfort-Anschluß" enthalten. !verboff !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 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 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 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 ) !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,

,,," 4 - PNP-Karte

- Protokoll: 2 - für Euro-ISDN (normalerweise) 1 - für 1TR6-ISDN (deutscher Vorgänger von Euro-ISDN) - der in /etc/isapnp.conf bei INT0 eingetragene Wert - der in /etc/isapnp.conf bei IO0 eingetragene Wert - 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 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 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 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 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 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 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 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 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 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 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 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 " !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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 : 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 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 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 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 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 : !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 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 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 hdlc isdnctrl l3_prot trans isdnctrl encap cisco-h !verboff ist der Name des IP-Interfaces, das zuvor mit !verbon isdnctrl addif !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 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 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 Thomas Stinner schrieb uns zusaetzlich: !verbon Es gibt auch eine weitaus besser besuchte Mailingliste zum Ascend. Diese ist allerdings in englisch (dafuer schreiben und lesen dort auch Ascend-Techniker mit). Anmelden kann man sich unter majordomo@bungi.com Im Body dann: subscribe ascend-users !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 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 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&X1 OK ATD01910 CONNECT . "[?25h" \c "[?25h" "" "[?25h" "" "[?25h" "[?25h" *53#\c "[?25h" *190144100#\c "[?25h" 19\c "STATUS OK" LIN "" "OK" Darin müssen natürlich einige "Platzhalter" ersetzt werden: ist die MSN, mit der man in die weite Welt hinauswill. : Das meist mit "000..." beginnende Zahlenmonster, welches die Telekom einem genannt hat. : 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" entsprechend anpassen (gibt man eine Mitbenutzernummer der Art "0003" an, sollte z.B. die Zeile !u1vor!u0 "[?25h" 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 : 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 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" 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 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 ". Q: Wie stelle ich fest, ob die Verbindung nicht zustande kam (Besetzt)? A: Andreas Berg 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 " !verboff wird das Interface fest mit dem Device /dev/ippp 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: . 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 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 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 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 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 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 hat hierzu eine tolle Anleitung zusammengestellt (siehe nachfolgende Frage). !old !commenton Die nachfolgende Anleitung wurde von Rainer May 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 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 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 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 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 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 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 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 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 ). 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 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 (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 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 und Bernhard Hailer ; 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 am 15 Jan 1997 folgenden Tip:!br Bei mir funktioniert folgende (wenn auch etwas umstaendliche) Methode: !verbon sox .wav -r 8000 .ul rate rmdcatheader -u > .msg cat .ul >> .msg !verboff Kann sein, dass man bei sox etwas andere Parameter angeben muß. Als ersten Test kann man cat .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 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 : !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 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 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 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 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 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 * "" !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 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 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 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 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 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 : 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 : !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 : !verbon ISDN-Router mit 4xBRI gibt es auch noch preiswerter von einem deutschen Hersteller - siehe !link http://www.conware.de/; !verboff Jochen Wiedmann : !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 : !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 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 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 in der Mailingliste schon ab und zu gepostet hat.!br Marcus Graf 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 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 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 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 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 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 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 !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 !verboff und normal konfiguriert (z.B. "isdnctrl sdelay "). 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 vor. Es kann entweder von Robert oder von uns bezogen werden. Q: Wie ist der aktuelle Stand mit Raw Bundling? A: Robert O'Kane 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 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 !verboff hinzugefügt, und mit !verbon isdnctrl removelink !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 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 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 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 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 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 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 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 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 " 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 : !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 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 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 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 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 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 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 : 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< 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: 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 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 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 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 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 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 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 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 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 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 : !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 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