Inhalt

1. Einführung
2. Voraussetzungen
2.1. Allgemeines
2.2. Hardware
2.3. Software
2.3.1. Kernel
2.3.2. Treiber
3. Konfiguration
3.1. Die Datei rc.isdn
3.2. Weitere wichtige Dateien
4. Der Betrieb
5. Weitere Utilities
Literatur
Herkunft dieser Anleitung
Eine Bitte..


1. Einführung

Das Protokoll (genauer: ein Satz von Protokollen) zum Informationsaustausch im weltweiten Netzverbund, dem Internet, ist TCP/IP (Transmission Control Protocol/Internet Protocol). Anwendungen wie Telnet (Login an einem anderen Rechner), FTP (File Transfer Protocol, Transfer von Dateien), oder Netscape und Mosaic (Programme zur Nutzung des weltweiten, vernetzten Informationssystems World Wide Web 'WWW' und der USENET News) basieren auf TCP/IP. Diese Anwendungen werden auch als TCP/IP-Clients bezeichnet.

Um über ein Modem Verbindung zum Außenwelt aufzunehmen, benutzt man oft ein Terminalprogramm. Dieses arbeitet jedoch nicht auf der Basis von TCP/IP, da TCP/IP typischerweise von Rechnern benutzt wird, die über eine Netzkarte direkt in ein Netz eingebunden sind. Abhilfe schafft hier z. B. PPP (Point to Point Protocol). PPP erlaubt die Benutzung von TCP/IP auch über ein Modem. Die PPP-Funktionalität muß von der angewählten Gegenseite, hier dem RZ, zur Verfügung gestellt werden. Um PPP nutzen zu können, erhalten Sie vom RZ beim Aufbau der PPP-Verbindung eine eigene IP-Adresse für Ihren PC. Diese dient zur eindeutigen Identifizierung Ihres PC im gesamten Internet für die Dauer der Verbindung. Eine permanente feste IP-Adresse für den PPP-Zugang wird nicht vergeben.

Das RZ der Ruhr-Universität bietet derzeit einen ISDN-Zugange an, der von einem Ascend MAX 4000 verwaltet wird. Der Server ist unter der Rufnummer 0234/97865 erreichbar und hat die IP-Adresse 134.147.214.21.

Diese Informationsschrift beinhaltet keine Einführung in Telnet, FTP, Netscape, Mosaic, WWW oder News. Sie beschreibt lediglich die technischen Voraussetzungen zur Nutzung dieser Dienste.

Eine weitere Beschreibungen zu PPP-Linux-Modem ist in Vorbereitung. - Vorläufig k önnen Sie sich mit folgender Anleitung behelfen:

 
  Zugang über Modem/Linux (RZ Ruhr-Universität Bochum)

2. Voraussetzungen

2.1. Allgemeines

Zwingend notwendig ist eine Zugangsberechtigung zu den Internet-Diensten. Diese erhalten Sie im Service Center (10:00-12:00 Uhr und 14:00-15:30 Uhr).

2.2. Hardware

Sie benötigen eine ISDN-Karte. Die hier beschriebene Software unterstützt Karten der Firma Teles (Teles S0/16.0 und S0/16.3) sowie ihre Lizenznachbauten von Creatix (16-S0) und Dr. Neuhaus (Niccy 1016), ferner werden Karten von Thinking Objects (ICN-Karten) sowie die PCBIT-Karten von Octal (Portugal) unterstützt. Soweit Hardware angesprochen ist, beschränkt sich diese Beschreibung auf den Teles-Typ.

2.3. Software

Aus praktischen Gründen wird hier das Paket "ISDN4Linux" ("i4l") von Fritz Elfert als Treibersammlung verwendet. Es gibt daneben aber auch andere Pakete wie beispielsweise U-ISDN von Matthias Urlichs. ISDN4Linux bietet aber derzeit als einziges Paket kernelinterne Treiberteile.

Wer über die Entwicklung dieses Software-Paketes auf dem Laufenden gehalten werden will, sollte sich in der entsprechenden Mailingliste eintragen lassen (Aufkommen ca. 30 Mails pro Tag). Dazu schickt man eine email mit dem Inhalt "subscribe isdn4linux <eigene@email.adresse>" an majordomo@hub-wue.franken.de (ohne Subject).

2.3.1. Der Kernel

Dringend muß davor gewarnt werden, i4l mit der früheren Produktionsversion 1.2.13 zu "verheiraten". Die Installation ist schwierig, und der Umgang mit den älteren i4l-Versionen weniger erfreulich. Die aktuellen Versionen sind jedoch ziemlich stabil. Da die neue Linux-Produktionsversion 2.0.0 da ist, sollte diese oder eventuell eine neuere verwendet werden.

Zunächst muß man für einen korrekt gebauten Kernel sorgen. Derzeit empfiehlt sich ein Kernel ab 2.0.0. Die Fast-2.0-Kernel "pre2.0.6" bis "pre2.0.9" waren brauchbar, die ab "pre2.0.10" waren für i4l nicht zu empfehlen. (Die neueren Kernel hatten die Zählung 1.3.1,.., 1.3.99, 1.3.100, pre2.0.1 (alias 1.99.1),...pre2.0.14 (alias 1.99.14). Erst seit Kernel 1.3.69 ist der Einsatz von kernel-internen ISDN-Treibern überhaupt möglich, und erst ab 1.3.97 laufen die Treiber hinreichend stabil).

Also: eine Kernel-Quelle mit der Bezeichnung "linux-2.0.x.tar.gz" von einem Ftp-Server besorgen, z.B.:

ftp.uni-wuppertal.de/pub/linux/kernel/v2.0/linux-2.0.tar.gz-split
(Eine Spezialität dieses Ftp-Servers ist, daß das gepackte Tar-File des Kernels in fünf Teile part01, ..., part05 aufgesplittet ist, die jeweils auf eine DOS-Diskette passen. Diese müssen mit z.B. "cat part0? > linux-2.0.tar.gz" wieder zu einer Datei zusammengefügt werden. Dann wird die Kernel-Quelle entpackt mit "tar xzf linux-2.0.tar.gz -C /usr/src" und findet sich anschließend in /usr/src/linux.)

Zusätzlich sollte man sich folgenden Kernel-Patch besorgen:

  ftp.uni-wuppertal.de/pub/linux/isdn4linux/v2.0/isdn4kernel-2.0-patch1+2.gz
Dieser offizielle Patch ist zwar nicht zwingend notwendig, i4l läuft dann aber "runder".

Der Kernel sollte also noch folgendermaßen "gepatcht" werden:

  cd /usr/src/linux; make clean 
  cd /usr/src; gunzip isdn4kernel-2.0-patch1+2.gz
  patch -p0 < isdn4kernel-2.0-patch1+2
Die erste Zeile ist für den Fall gedacht, daß die Kernelquellen schon einmal compiliert wurden.

Noch ein Hinweis für "Aufsteiger" von älteren Linux-Versionen (z.B. Slackware 3.0): Sie sollten vor der Kernel-Compilation folgende neuere Produkte installieren: GCC 2.7.2, libc 5.2.18, libg++ 2.7.1.4, termcap 2.0.8, ncurses 1.9.9e, ld.so 1.7.14, binutils 2.6.0.14, modules 2.0.0, make 3.74, procps 0,99a, sysvinit 2.62, util-linux 2.5 (nur teilweise!), gpm 1.09. Einzelheiten dazu stehen in der Datei "/usr/src/linux/Documentation/Changes". Unbedingt lesen! Die Newsgroups sind derzeit voll mit Anfragen, die genau hier beantwortet werden! Diese Datei verrät auch, wie man an die Quellen bzw. zum Teil an fertige Binaries kommt. - Nicht daß die neuen Kernel sonst nicht booten, aber die nicht passenden Produkte erzeugen eventuell häßliche Fehlermeldungen. Mit älteren Compiler-Versionen bekommen Sie den Kernel und die ISDN-Utilities eventuell nicht übersetzt! Der Lohn für die Umstellung: ein moderneres und deutlich schneller laufendes Linux-System.

Einzelheiten, wie man einen Kernel baut, finden sich im Kernel-HOWTO, zu finden auf jedem Sunsite-Mirror, z.B. unter

  ftp.dfv.rwth-aachen.de/pub/linux/sunsite/docs/HOWTO/Kernel-HOWTO.gz
Vor dem Compilieren muß folgendes bei "make config" (bzw. seinen graphischen Verwandten "make menuconfig" oder "make xconfig") eingestellt werden:
Sektion "General Setup":
  Networking support: Yes
Sektion "Floppy, IDE and other block devices":
  Loopback device support: Yes
Sektion "Networking options":
  TCP/IP networking: Yes
  alle anderen je nach Bedarf.
Sektion "Network device support":
  Network device support: Yes
  PPP (point-to-point) support: Yes  
  alle anderen je nach Bedarf
Sektion "ISDN subsystem":
  ISDN support: Yes
  Support synchronous PPP: Yes
  Use VJ compression with synchronous PPP: Yes
  Support generic MP (RFC 1717): Yes
  Verwendete Karte eintragen.
Wer mag, kann die Fragen nach PPP und ISDN statt mit "Yes" auch mit "Module" beantworten (wo möglich, sonst Y) und so zuladbare PPP- und ISDN-Module erzeugen. Falls es Probleme gibt, oder beim ersten ISDN-Versuch, ist die Verwendung eines statisch gebundenen ISDN-Kernels eventuell sicherer. Andererseits erhät man durch die Verwendung von Modulen einen ca. 90 KB kleineren Kernel (komprimiert), was z.B. für die Erstellung von "Save-and-Rescue-Disks" günstiger ist. Für den ISDN-Betrieb braucht man den zusätztlichen Speicherbedarf letztlich doch.

2.3.2. Die ISDN-Treibersoftware

Ferner muß man sich noch die aktuelle Version von Fritz Elferts "isdn4kernel-Utilities" holen:
  ftp.uni-wuppertal.de/pub/linux/isdn4linux/v2.0/isdn4k-utils-2.0.tar.gz
 
(Hinweis: der Original-i4l-Server ftp.franken.de/pub/isdn4linux/.) wird täglich gespiegelt.

Man kopiert sich diese ins Verzeichnis /usr/src und entpackt sie per "tar xzf isdn4k-utils-2.0.tar.gz". Im Verzeichnis

  /usr/src/isdn4k-utils-2.0
findet man jetzt alle zum Betrieb notwendigen Dateien nebst einer leider zur Zeit ziemlich dürftigen Dokumentation. Zunächst müssen die Programme erzeugt werden. Man übersetzt sie mit "make", erzeugt anschließend die neuen ISDN-Gerätedateien mit "make devices" und installiert zum Schluß die ausführbaren Programme mit "make install" im Verzeichnis /sbin sowie die man-Seiten dort, wo sie hingehören. (Ein Hinweis: Die Version isdn4k-utils-2.0 darf nur mit dem "gepatchten" Linux 2.0 verwendet werden. Zuwiderhandlungen werden garantiert mit Übersetzungsfehlern bestraft...)

2.3.3. Die Kartenparameter

Die müssen auch noch eingestellt werden - hierzu ist die ISDN4Linux-Anleitung
  /usr/src/linux/Documentation/isdn/README
zu Rate zu ziehen. Die Parameter werden beim Booten als Kernelparameter übergeben. Dabei gibt es die beiden unten beschriebenen Möglichkeiten.

Noch ein Tip: Falls Sie unter DOS die Karte eingestellt haben und den Selbsttest der Karte durchgeführt haben ("TestS0"), dann übernehmen Sie sinngemäß diese Werte auch unter Linux. Sinngemäß bedeutet: Die Zahl der Ziffern kann differieren (z.B. bei der Shared-Memory-Basisadresse). Für Linux-Puristen: Die Karte muß nicht unter DOS getestet oder initialisiert werden.

2.3.3.1 ISDN-Treiber in den Kernel eincompiliert

Die Parameter werden am besten in der Datei /etc/lilo.conf übergeben, etwa so:
  image  = /boot/zImage
  label  = linux
  alias  = l
  append = "teles=0xd80,11,0xd8000,2"
Die Werte bedeuten: I/O-Port, IRQ, Basisadresse für Shared Memory, Protokoll: 2 = Euro, 1 = 1TR6. - Um die Änderung zu aktivieren, muß man /sbin/lilo aufrufen (als root).

Ganz Verwegene tragen die Werte direkt vor der Compilierung des Kernels in

  /usr/src/linux/drivers/isdn/teles/config.c
ein. Die folgende Zeile zeigt die Default-Werte des Kernels (Basisdresse für Shared Memory, IRQ, I/O-Port, Protokoll: ISDN_PTYPE_EURO = 2 oder ISDN_PTYPE_1TR6 = 1); durch eigene Werte ersetzen!
  struct IsdnCard cards[]={
    { (byte *)0xd0000,11,0xd00,ISDN_PTYPE_EURO,NULL } , /* example */
   }
An den Meldungen beim Linux-Boot erkennt man, ob die Karte richtig erkannt wurde. Damit sind die grundlegenden Installationen abgeschlossen.

2.3.3.2 ISDN-Treiber als Module

Alternativ werden die Parameter beim Laden des Teles-Modules übergeben (siehe Abschnitt 3.1 Über die Datei /etc/rc.d/rc.isdn):
  #Teles-Parameter: io=shared-mem,irq,portbase,euro. Beispiel SELBST ANPASSEN!
  #Achtung! Shared Memory mit FÜNF Ziffern (nicht VIER wie bei DOS/Win)!
  /sbin/insmod /lib/modules/$VERSION\/misc/teles.o io=0xd8000,11,0xd80,2 teles_id=Tel0
Beachten Sie, daß die Reihenfolge der Modul-Parameter eine andere ist als bei den Kernel-LILO-Parametern.

Auch hier besteht die unter 2.3.3.1 beschriebene Möglichkeit, die Kartenparameter direkt vor Compilierung der Module in die Kernel-Quellen einzutragen.

An den Meldungen beim Linux-Boot erkennt man, ob die Karte richtig erkannt wurde. Damit sind die grundlegenden Installationen abgeschlossen.

Daß die Module tatsächlich richtig erkannt wurden, kann man durch Absetzen von

  cat /proc/interrupts
überprüfen. Unter den Meldungen muß auch die folgende sein:
  11:        3 + teles
Dabei sei 11 der Interrupt der Karte. Die nächste Zahl zählt die Interrupts, die von der Teles-Karte bisher erkannt wurden. Nach dem Initialisieren muß hier mindestens eine Drei stehen! Das sollte man zumindest beim ersten Mal testen.

Falls die Module nicht korrekt geladen werden und sonst kein Fehler vorhanden ist, hilft es manchmal, die insmod-Sequenz zweimal durchzuführen

  /sbin/insmod /lib/modules/$VERSION\/misc/teles.o io=...
  /sbin/rmmod teles.o
  /usr/bin/sleep 5s 
  /sbin/insmod /lib/modules/$VERSION\/misc/teles.o io=...

3. Die Konfiguration

3.1 Die Datei /etc/rc.d/rc.isdn

Diese Datei muß neu angelegt werden. Damit sie beim Booten als Startdatei erkannt wird, muß man vorher folgender Eintrag in die Datei
  /etc/rc.d/rc.M
unter der Sektion "# Initialize the NET subsystem." vornehmen:
  . /etc/rc.d/rc.inet1
  . /etc/rc.d/rc.isdn               # <- diese Zeile einfügen!
  . /etc/rc.d/rc.inet2
Jetzt kreiert man eine neue Datei namens /etc/rc.d/rc.isdn und macht folgende Einträge:
  #! /bin/sh 
  # 
  # rc.isdn   This shell script boots up the ISDN subsystem. 
  #
  # Version:  @(#)/etc/rc.d/rc.isdn  1.2   08-May-96
  #
  # Author:   Bernhard Hailer <beh@anorg.chemie.uni-muenchen.de>
  #           Anpassung RZ, Ruhr-Universität Bochum: Dr. U.Dederek-Breuer
  #           Erweiterung für Teles-Modul aus den Isdn4k-Utils übernommen

  echo Entering /etc/rc.d/rc.isdn
  echo ==========================

  # Module: PPP, VJ-Compression, isdn4linux and teles 
  # Module laden: Folgende Zeilen ENTKOMMENTIEREN (bis auf Kommentare ##).

  # /sbin/modprobe ppp            # (PPP- und VJ-Compression-Modul)
  # VERSION=`cat /proc/version | awk '{ print $3 }' `
  # /sbin/insmod /lib/modules/$VERSION\/misc/isdn.o  
  ##Teles-Parameter: io=shared-mem,irq,portbase,euro. Beispiel SELBST ANPASSEN!
  ##Achtung! Shared Memory mit FÜNF Ziffern (nicht VIER wie bei DOS/Win)!
  # /sbin/insmod /lib/modules/$VERSION\/misc/teles.o io=0xd8000,11,0xd80,2 teles_id=Tel0
  # /sbin/telesctrl Tel0 1 4      # enable verbose '4' mode

  # global
  /sbin/isdnctrl verbose 0  # zur Fehlersuche 2 (maximal 4) setzen


  # ISDN device driver ippp0 using PPP
  /sbin/isdnctrl addif ippp0             #  Gerätedatei-Interface
  /sbin/isdnctrl addphone ippp0 out 023497865  #  Nummer des Ascend-Server
  /sbin/isdnctrl addphone ippp0 in 234yyyyyyy  #  eigene Nr. mit Vorwahl ohne 0
  /sbin/isdnctrl eaz ippp0 yyyyyyy       #  EAZ bzw. MSN ohne Vorwahl
  /sbin/isdnctrl huptimeout ippp0 300    #  Timeout in Sekunden
  /sbin/isdnctrl secure ippp0 on         #  Sicherheit an

  /sbin/isdnctrl l2_prot ippp0 hdlc      #  Level 2: HDLC
  /sbin/isdnctrl l3_prot ippp0 trans     #  Level 3: transparent
  /sbin/isdnctrl encap ippp0 syncppp     #  Kapselung: synchr. PPP

  # Im folgenden ist das "<alias>" durch den in der Datei /etc/hosts
  # definierten Namen des eigenen Rechners zu ersetzen.
  # Wer keine eigene IP hat: localhost für <alias> einsetzen!
  /sbin/ifconfig ippp0 <alias> pointopoint isdngate metric 1 # Interface und Route:
  /sbin/route add default ippp0          #  Definition der Anbindung. Wichtig!
  /sbin/ipppd remotename isdngate /dev/ippp0 &   #  siehe auch /etc/ppp/options!
  
  # Route muss nun wieder geloescht werden, damit keine unbeabsichtigten
  # Verbindungsaufbauten stattfinden können - siehe unten unter 
  # Punkt 5.4.: "Der Betrieb". Zu Anfang muss sie aber gesetzt sein!
  /sbin/route del default                #  Route löschen

  # ISDN device driver isdn0 (no PPP)    #  "Dreingabe": VT100-
  /sbin/isdnctrl addif isdn0             #  Verbindung mit Terminal-
  /sbin/isdnctrl huptimeout isdn0 300    #  programm via /dev/cui1
Hier wird übrigens nicht der Standard-PPP-Dämon pppd 2.2.0 aufgerufen, sondern eine speziell gepatchte Version namens "ipppd". Diese liegt dem ISDN4Linux-Paket bei und wurde beim Installieren nach /sbin befördert. Trotzdem gelten die man-Seite zum pppd sowie das "PPP-HOWTO".

Eine Anmerkung noch zu den letzten Zeilen: mit isdn0 wird ein Gerät definiert, welches einfachen Terminalbetrieb ohne PPP erlaubt. Man kann mit einem Terminalprogramm wie minicom oder seyon via /dev/cui0 mit wenigen AT-Befehlen eine solche Verbindung aufbauen.

3.2. Weitere wichtige Dateien

Damit PPP funktioniert, muß man als root noch folgende Dateien editieren:
/etc/ppp/options (Optionen-Datei für den ipppd)
  user <User-ID>     #  eigener Benutzername 
  ipcp-accept-local      #  Akzeptiere Vorgabe der eigenen IP vom RZ
  ipcp-accept-remote     #  Akzeptiere Vorgabe der IP des RZ-Rechners
  noipdefault            #  Wir setzen keine IP-Adresse voraus
  useifip                #  IP-Adresse vom Netzwerkinterface übernehmen
  -vjccomp               #  Abschalten der VJ-Kompression der Connection-ID
  -ac                    #  Abschaltung der Adreß/Kontrollfeld-Kompression
  -pc                    #  Abschalten der Protokollfeld-Kompression
  -bsdcomp               #  BSD-Kompression aus (ipppd kann das nicht!)
  -vj                    #  Keine Komprimierung nach Van Jacobson - s.u.!
  mru 1024               #  Maximum Receive Unit
  debug                  #  ACHTUNG! Damit werden auch übermittelte Paßwörter
                         #    geloggt - entsprechende Dateien müssen unbedingt
                         #    mit "chmod 600 <datei>" geschützt werden!
  -detach                #  Prozeß soll nicht selbständig werden
Anmerkung zur Option "-vj": Wird dieser Parameter nicht gesetzt, so kann das System sehr ungehalten reagieren. Während es bei einer laufenden X-Sitzung schlicht und einfach hängenbleiben kann, so kommt es bei einer einfachen Sitzung zur Anzeige von "Kernel-Oopses". Speziell die Zeile "Aiee, killing interrupt handler" wird dann erzeugt.
/etc/resolv.conf:
  domain rz.ruhr-uni-bochum.de
  nameserver 134.147.222.4

/etc/hosts:
  # For loopbacking.
  127.0.0.1       localhost
  # My own IP address
  x.x.x.x         <maschinen.name>              <alias>  # eigene IP-Adresse,
  # Rest of the World                                    # sofern vorhanden
  134.147.214.21  max-1.rz.ruhr-uni-bochum.de   isdngate # Ascend-Server
  #  Ab hier alle die Rechner eintragen, auf die Sie Zugriff haben.
  #  (möglichst vollständig: spart Nameserver-Zugriffe!)
  #  Aber im Fehlerfalle: mit "nslookup rechner" richtige IP rauskriegen!
  134.147.222.5  hpux.rz.ruhr-uni-bochum.de   hpux       # (als Beispiel)
Anmerkung": In der Regel wird man keine eigene IP-Adresse haben. Man kann dann einfach "localhost" (127.0.0.1) verwenden. Es ist verboten, inoffizielle (selbst erfundene) IP-Adressen ins Internet zu routen! Ihr Linux-Rechner bekommt vom ISDN-Router dynamisch eine nach außen sichtbare IP-Adresse für die Zeit der Verbindung zugeteilt.
/etc/networks (muß nicht geändert werden)
  loopback        127.0.0.0
  localnet        127.0.0.0                   #  oder eigenes Netz

/etc/ppp/pap-secrets
  # Secrets for authentication using PAP
  # client        server          secret          IP addresses
  <RZ-Kennunng>  isdngate        <password>      -
Achtung! Die Datei /etc/ppp/pap-secrets enthält Paßwörter und muß unter allen Umständen mit Hilfe des folgenden chmod-Kommandos vor unbefugtem Zugriff geschützt werden!
  chmod 600 /etc/ppp/pap-secrets

Nun sollte man noch das PPP-Log auf eine Extra-Datei umlenken, damit man leichter eventuelle Fehler suchen kann. Dazu editiert man die Datei /etc/syslog.conf und fügt folgende Zeile an (Anmerkung: KEINE Leerzeichen, nur Tabulatoren benutzen!):

  daemon.*                      /var/log/ppp-log
Damit wird alles, was der PPP-Dämon an Informationen abgibt, in der Datei /var/log/ppp-log abgelegt.

Damit hat man alle erforderlichen Dateien angepaßt, und das System sollte laufen.

4. Der Betrieb

Leider neigt das Linux-System nun dazu, mehr oder weniger unmotiviert Verbindungen zum RZ aufzubauen. Dies liegt in der Natur des Systems: wann immer ein IP-Paket anliegt, will das System es auch loswerden (z.B. Zugriff auf Nameserver etc.). Da das Kosten verursacht, muß man es abstellen. Das macht man, indem man die Default-Route zum Interface ippp0 löscht - das Linux-System kennt dann den Weg nach draußen nicht mehr. Hierzu schreibt an sich zwei kleine Scripten "neton" und "netoff":
/sbin/neton
  #! /bin/sh 
  # neton: Baut ISDN-Verbindung zum Ascend-Server des RZ auf.  
  /sbin/isdnctrl dial ippp0       #  Verbindung herstellen
  /usr/bin/sleep 5s               #  Sicherheitshalber 5s warten
  /sbin/route add default ippp0   #  Route setzen

/sbin/netoff
  #! /bin/sh 
  # netoff: Baut ISDN-Verbindung zum Ascend-Server des RZ ab.  
  /sbin/isdnctrl hangup ippp0     #  Verbindung abbrechen
  /sbin/route del default         #  Route wieder löschen
Diese Scripten setzt man in das Verzeichnis /sbin und macht sie ausführbar (der route-Befehl ist nur für den Schreiber der Datei, also "root", ausführbar!):
  chmod 740 /sbin/neton
  chmod 740 /sbin/netoff
Das erstere Script definiert die Route nach außen via /dev/ippp0 und ermöglicht damit erst den Verbindungsaufbau. Mit dem "isdnctrl dial ippp0" wird die Verbindung aufgebaut (von da ab kostet es Geld!). So werden Fehlverbindungseffekte vermieden, die entstehen, wenn man eine Verbindung per "telnet" zu einem anderen Rechner aufbauen will. In diesem Falle gibt es nämlich "Hänger", weil es zu Timingproblemen nach dem Verbindungsaufbau kommt (Fehler im ipppd). - Das Kommando "netstat -nr" muß auf jeden Fall die Route für ippp0 korrekt anzeigen, sonst geht nichts. Eventuell setzt man das route-Kommando noch einmal von Hand ab.

Das zweite Script beendet die Verbindung und entfernt die definierte Telefonnummer. Damit ist es Linux unmöglich, wieder eine Verbindung aufzubauen - das geht jetzt erst wieder nach einem erneuten "neton".

Test: (Benutzen Sie einen Rechner, für den Sie einen Account haben; mit "#" ist hier der Prompt gemeint, kein Kommentarzeichen!)

  # neton
  # telnet hpux
  # _
(Nun wie gewohnt einloggen; später zum Abschluß "logout" oder "exit" eingeben.)
  # netoff
  # _
Die Verbindung sollte so aufgebaut und wieder abgebaut werden.

Noch ein Hinweis: Gegenüber der Original-Version des neton-Skripts sind die Reihenfolge von "dial..." und "route..." vertauscht, Die alte Version funktioniert bei den neuen Kerneln nicht mehr. Das dial-Kommando scheint nämlich (ab ca. Kernel pre2.06) die Route wieder zu löschen. Das Kommando "netstat -nr" muß auf jeden Fall die Route für ippp0 korrekt anzeigen, sonst geht nichts. Eventuell setzt man das route-Kommando noch einmal von Hand ab.

5. Weitere Utilities

Dem ISDN4Linux-Paket liegen noch etliche sehr brauchbare Werkzeuge bei. Eines ist zum Beispiel der unter X laufende "isdnmon" von Andreas Kool, mit dem der momentane Zustand des S0-Busses angezeigt wird (frei oder bestehende Verbindung).

Man sehe sich dazu das README von Fritz Elfert an.

Die unten aufgeführte Original-Anleitung des Leibniz-Rechenzentrums (LRZ) München von Bernhard Hailer enthält eine Beschreibung, wie man sich Email von einem POP-Mail-Server abholen kann. Diese Beschreibung ist teilweise LRZ-spezifisch und muß an hiesige Verhältnisse noch angepaßt werden. Eine Anleitung für das lokale Lesen von News ist noch in Vorbereitung.


Literatur

Die letztgenannten beiden Bücher sind absolut empfehlenswert!


Herkunft dieser Anleitung

Das Original dieser Anleitung ("Linux, ISDN und das LRZ", Version vom 18.5.1996) wurde von Bernhard Hailer für das Leibniz-Rechenzentrums (LRZ) München erstellt. Die Einführung und Punkt 2.1. stammen von Andreas Kelz, LRZ.

Die Anleitung findet sich unter

  http://www.lrz-muenchen.de/%7Eui161ab/www/isdn/.
Gespiegelt wird diese Seite unter
  http://www.rosat.mpe-garching.mpg.de/~web/isdn_config/bernd_hailer/.
(Die übergeordnete Seite von Dr. Werner Becker enthält übrigens eine Sammlung weiterer interessanter Konfigurationsbeispiele für ISDN4Linux.)

Wir haben mit Erlaubnis des Autors die Original-Anleitung an hiesige Verhätnisse angepaßt und geringfügig erweitert. Noch einmal Vielen Dank nach München! Seiner folgenden Bitte schließen wir uns gerne an:

Eine Bitte...

Diese Anleitung ist noch weit davon entfernt, wirklich perfekt zu sein (trotzdem war sie hoffentlich hilfreich?). Daher wären wir sehr über Resonanz dankbar: Was könnte man verbessern, wo ist was Falsches, wo könnte man etwas eleganter lösen? Gibt es Unnötiges? Lokales werden wir "vor Ort" verbessern, Dinge von allgemeinem Interesse an Bernhard Hailer weiterleiten. Bitte eine kurze Email an: Ute.Dederek-Breuer@rz.ruhr-uni-bochum.de, Kopie (CC) an Bernhard.Hailer@lrz.uni-muenchen.de. Vielen Dank!


Dr. U. Dederek-Breuer
Letzte Änderung: 2.7.1996.