Linux ISDN-Erfahrungen

Nuernberg 3.7.95 Version 1.2

P.s.:
Die Informationen hier sind etwas veraltet, aber so hat es mal funktioniert
und funktionniert heute mit Kernel 1.3.30 immer noch bei mir. Inzwischen
hat sich aber bei ISDN4LINUX einiges geaendert, so gibt es nun eine in den
Standardkernel integrierte Version. Ich glaube so ab 1.3.60 rum. Genaueres
gibt es natuerlich in den Readme`s der aktuellen Version.(ftp.franken.de)




Erfahrungen beim Aufbau einer PPP-Verbindung mittels    ISDN4linux
                                                        PPPD-Packet
                                                        ppp4linux-Patch
                                                        LST-Network-Disketten
                                                        Teles S0-8Bit
                                                        386/40 8Mb

Falls die obige Software vorhanden ist kann man loslegen:

- isdn4linux installieren und kompilieren (sollte keine Problemem machen)
- ppp4linux-Patch besorgen
  in der mir vorliegenden Version waren die diffs fuer den Kernel 1.2.1 ge-
  dacht. Der Patch liess sich aber bis auf eine Stelle auch problemlos auf
  dem Kernel 1.2.8 anwenden. Diese Stelle hatte sich um eine Zeile nur 
  veraendert, so dass per Hand nachgeholfen werden musste. Dieser Patch liegt 
  inzwischen auch auf ftp.franken.de. Weiterhin gibt es nun eine Version, die
  mit Netzdevices funktioniert. Da eroeffnet jedes ping, etc. eine synchrone
  ppp-Verbingung per ISDN! Ein gepachter pppd namens ipppd ist bereits im
  isdn4linux-Paket dabei. Kanalbuendelung ist moeglich.
- den pppd neu komplilieren und installieren (weil gepatched).
- nun Kernel neu kompilieren, da ppp.c gepatcht wurde (ermoeglicht 
  synchrones PPP, welches vom Cisco-Router z.B. verlangt wird)
- den neuen Kernel mittels Lilo-Menue in die Bootauswahl aufnehmen, oder mal
  eben 
  cp /usr/src/linux/arch/i386/boot/zImage /dev/fd0;rdev -R /dev/fd0 1
  eingeben. Meine /etc/lilo.conf Datei sieht folgendermassen aus:

boot = /dev/hda3 
compact
install = /boot/boot.b
message = /boot/message
prompt
image = /zImage.aktuell
        ramdisk=0
        label = linux
        root=current
        vga=0
image = /zImage.video7
        label = linux.v7
        vga =4
image = /zImage.test
        label = test
        vga = 0
other = /dev/hda4
table = /dev/hda
label = dos
other = /dev/fd0
label = drive-a

Ich lege mir dann jeweils nur einen Symbolic link auf ein neu erzeugtes zImage.
Ohne an der lilo.conf-Datei etwas zu aendern kann ich dann /etc/lilo/install
aufrufen, und der neue Kern steht mit zur Auswahl. Ich band ihn zuersteinmal
mittels ln -sf /zImage.ppp.isdn zImage.test ein. Falls alles glatt geht
avanciert er zum zImage.aktuell.


Nun neu gebootet... (den ppp.isdn-Kern alias test!)

Die Module isdn und teles laden:
insmod /lib/modules/1.2.8/misc/isdn.o
insmod /lib/modules/1.2.8/misc/teles.o

/usr/src/isdn/isdn4linux.6d/teles/telesctrl /dev/isdnctrl0 7
cat /dev/isdnctrl0 

schaltet diese Konsole darauf um mitzuloggen, ob alles gut geht. Falls hier
Fehlermeldungen, wie 'no routine' auftreten. Muss man die Module isdn und teles
entfernen, und neu laden (rmmod). Also bei Problemen einfach mal wieder auf
diese Konsole schalten!

Nun auf neuer Konsole einloggen (ALT F2).

nun nach /etc/ppp gehen, und die folgenden Dateien anlegen:

/etc/ppp/ppp-on mit Inhalt:
~~~~~~~~~~~~~~~~~~~~~~~~~~~

#!/bin/sh

#
#       ppp-on
#
#       Set up a PPP link
#

LOCKDIR=/var/spool/locks
DEVICE=ttyI1

if [ -f $LOCKDIR/LCK..$DEVICE ]
then
    echo "PPP device is locked"
    exit 1
fi

fix-cua $DEVICE

(
    stty 19200 -tostop
    if chat -l LCK..$DEVICE -f /etc/ppp/isdn.chat 
    then
        /usr/etc/pppd file '/etc/ppp/options' /dev/$DEVICE 19200
        rm -f $LOCKDIR/LCK..$DEVICE
        exit 0
    else
        echo "PPP call failed" 1>&2
        exit 1
    fi
) < /dev/$DEVICE > /dev/$DEVICE


/etc/ppp/ppp-off mit Inhalt:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#!/bin/sh

DEVICE=ppp0

#
# If the ppp0 pid file is present then the program is running. Stop it.
if [ -r /var/run/$DEVICE.pid ]; then
        kill -INT `cat /var/run/$DEVICE.pid`
#
# If unsuccessful, ensure that the pid file is removed.
#
        if [ ! "$?" = "0" ]; then
                echo "removing stale $DEVICE pid file."
                rm -f /var/run/$DEVICE.pid
                exit 1
        fi
#
# Success. Terminate with proper status.
#
        echo "$DEVICE link terminated"
        exit 0
fi
#
# The link is not active
#
echo "$DEVICE link is not active"
exit 1

/etc/ppp/isdn.chat mit Inhalt:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
ABORT BUSY ABORT 'NO CARRIER' "" AT&E OK ATS13=1
 OK ATS14=3 OK ATS12=197 OK ATD "CONNECT 64000"


/etc/ppp/options mit Inhalt:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sync
+ua /etc/ppp/pap-pass
-ip :
defaultroute
proxyarp
-vj



/etc/ppp/pap-pass mit Inhalt:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


 
nun ein chmod 700 /etc/ppp/pap-pass ausfuehren, damit diese Datei mit dem
Passwort nicht fuer alle Welt lesbar ist.
ein chmod 755 auf ppp-on.

mkdir /var/run ; hier wird vom pppd seine PID abgelegt! Wird zum killen
benoetigt. 
mkdir /var/spool/locks ; hier wird das lockfile angelegt


Guenstig waere es auch, wenn nun gleich mittels passwd ein root-Passwort
eingerichtet wird. Ich wusste ja, dass es bei Ihnen noch mit keins gab!

Der Erlanger Cisco hat uebrigens die Ip-Adresse 192.44.86.129
Die Telnr. des Erlanger Ciscos des RRZE lautet 09131717851 bzw 09131717731


Bei Bedarf dann mal /etc/ppp/ppp-on aufrufen. Die Verbindung wird aufgebaut.
Falls  Fehler auftreten, dann in options debug und kdebug 7 aufnehmen. Dies
macht recht viel nachvollziehbar in den Files /usr/adm/ messages,syslog,debug.

Falls alles glatt ging, dann mit rlogin ip-Adresse, telnet ip-Adresse, rsh
IPAdresse, ftp IP-Adresse etc. zu einer Maschine im Internet kontakt auf-
nehmen. Falls man unter X arbeitet und ein Programm auf der entfernten Maschine
starten will, dessen DISPLAY man auf die lokale Maschine umlenken will, so muss
man lokal 'xhost ip-adr-entfernter-host' eingeben. Auf dem entfernten Rechner
muss man 'setenv DISPLAY :0.0 eingeben. Nun laesst sich z.B
Framemaker auf der faui06a starten, und man kann zu Hause damit arbeiten. 

Wunder sollte man aber von dem ISDN-Kanal nicht erwarten. Ein mpeg_play z.B
bringt dann selbst auf der SGI nur Zeitlupe, weil die ganzen Pixel mit jedem
neuen Bild wieder uebertragen werden muessen.

Per ftp aber erreichte ich stolze 7,0 Kb/sec.

Der Nameserver der Uni hat die Ip-Adr. 131.188.3.2 oder 131.188.1.45 . Falls man
beim Aufruf von netconfig diese Adresse angibt, dann lassen  sich die Rechner
problemlos mittels rlogin faui04a.informatik.uni-erlangen.de erreichen.

Die Betatestphase der LST 2.1.1 wird wohl sehr bald abgeschlossen sein! Die
Installation kann demnach bald von neuem beginnen! (Freude?)

Falls ich mich nicht verlesen habe wird mit der version ppp-2.1.2d des
ppp-Daemons ein Bug bei der TCP/IP Headerkompression beseitigt. Evtl. erhaelt
man dann noch ein paar Bytes mehr an Uebertragungsrate. 

Viel Spass - Klaus.

Bei Fragen: 09112876001, ksweber@cip.informatik.uni-erlangen.de


-- 
----==-- Email: ksweber@cip.informatik.uni-erlangen.de          | P.s. : Nix!
---==--- Voice: 0911-2876001 (Germany)                          
--==---- http:  //wwwcip.informatik.uni-erlangen.de/user/ksweber 
-======-