titel<"=">LiNUX ISDN-Server Installation<" titel="ISDN Logo
"~=">" datei=ISDNinstserv>
 [Linux-Pingu] für den DIAL-In  [Linux-Pingu]
©1996 by
last update:



Seit längerem existiert der HiSax-Treiber im Linux-Kernel, weitere Informationen können unter (HiSax - WWW/FTP), besorgt werden. Der HiSax-Treiber unterstützt alle SiemensChip-Satz ISDNkarten und weitere ...

Kleines Inhaltsverzeichnis


D"="">iese Anleitung soll aufzeigen, wie ein DIAL-IN Server mit RAW/IP / HDLC unter Linux aufgesetzt wird und darüber dann Windows 95-Clients angeschlossen werden können.
Für RAWIP haben wir uns deshalb entschieden, weil hierbei nicht allzuviel Overhead auftritt wie bei PPP, so daß diese Methode einen kleinen Geschwindigkeitszuwachs gegenüber PPP bringt. Weiterhin entfallen läßtige Authorisierungskonflikte (s.o.)
Ich beschränke mich nur auf die Einrichtung unter Linux, da es genügend Beschreibungen gibt, die die Einrichtung von RAWIP/HDLC unter Windows95 / 3.x beschreiben. Hierzu eine kleine Auswahl an weiteren Links:


D"="">iese Anleitung ist unter den folgenden Voraussetzungen erstellt worden:


Hardware und Software

Kernel Linux version 2.0.11 (root@czerny) (gcc version 2.7.2.f.1)
#8 Fri Jul 19 15:23:22 MET DST 1996
Rechner 486 / 40 MHz; 20 MB RAM
mit Graphik- / IDE- und NE200-komp. Karten
ISDN-Karte Teles S0/16.3

Die ISDN-Karte hängt an einer Octopus M26 - Nebenstellenanlage von der Telekom. Hier ist zu bemerken, daß diese Nebenstellenanlage das Deutsche (1TR6), wie auch das Europäische (E-DSS1) Protokoll intern versteht.
Die Anlage selbst hängt bei der Telekom mit EURO-ISDN am Bus.


LILO Parameter

Die ISDN-Module sind direkt in den Kernel eingebunden und können bei belieben über die Startparameter in LILO (/etc/lilo.conf) geändert werden. Nach einer Änderung muss LILO neu Aufgerufen werden, um die Aktualisierung im Boot-Header vorzunehmen.

Die LILO-Parameter sehen wie folgt aus:

# LILO Konfigurations-Datei
# Start LILO global Section
boot=/dev/hda
#compact # faster, but won't work on all systems.
linear
read-only
delay=50
vga = normal # force sane state
ramdisk = 0 # paranoia setting
# Teles 16.3 Parameter
append="teles=
0xd80,15,0x0,2,teles0"
# ^^^^^^^^^^^^^^--- muss an Deine Kofniguration angepasst werden.
# Diese Sektion ist nicht umbedingt nötig, da im Kernel-Source unter
# /usr/src/linux/drivers/isdn/teles/config.c Default-Einstellungen
# gesetzt werden können.
# Die genaue Bedeutung der append-Zeile mit teles= ist der Dokumentation
# von i4k zu entnehmen ( /usr/src/linux/Documentaion/isdn/README
# Abschnitt 3.1.1)
# End LILO global section
# Linux bootable partition config begins
image = /vm2011
root = /dev/hda1
label = v2011
# Linux bootable partition config ends


ISDN-Kernelmodul erkannt ?

Nach der erfolgreichen Karteninitialisierung der ISDN-KernelModule, taucht folgendes im 'boot.msg' File auf:
ISDN subsystem Rev: 1.23/1.21/1.17/1.12/none
teles: Total 1 card defined
Teles 16.3 found, io: d80 irq: 15 proto: EDSS1
HSCX version A:5 B:5
modehscx hscx 0 mode 0 ichan 0
modehscx hscx 1 mode 0 ichan 0
l1state 4
l1state 6
ph_command 15
l1state 4
l1state 12
ph_command 8
channels 2

In der Zeile ISDN subsystem Rev: 1.23/1.21/1.17/1.12/none hat der letzte Eintrag none nur zu bedeuten, daß die Kernel-ISDN-Voice Option beim Compilieren nicht mit in den Kernel eingebunden wurde. Unbedingt notwendig, ist dieses für den normalen Betrieb als ISDN-Router nicht. Es wird erst dort wichtig, wenn die ISDN-Karte zusätzlich Anrufe aufzeichnen soll.
Weiterhin sollte HSCX version A:5 B:5 bei dem Boot erscheinen, sowie channels 2, dann bestehen gute Chancen, daß zwei B-Kanäle zur Verfügung stehen.


Initialisierung

Als nächstes möchte ich die Initilisierung beschreiben.
Grundsätzlich verwenden wir HDLC als Layer-2 Protokoll, sowie RAWIP bei der Paket-Encapsalation.
Das folgende kleine Skript beschreibt die Initialisierung für einen Dial-IN. Hier werden die einzelnen Parameter gesetzt. Daten über IP-Adresse, Telefonnr. und virt. ISDN-Device werden aus einem File eingelesen.


#!/bin/bash
#
# /etc/rc.d/rc.isdn - Initialisierung ISDN Devices
#
# cognac ; 17-07-96
#


EAZ="2"
IP_NET="xxx.xxx.xxx"

function addinterface {

  ISDN="isdn$1"

  echo Adding ISDN-Port: ${ISDN}

  /sbin/isdnctrl addif ${ISDN}		# Create new virtuelle Interface
  /sbin/isdnctrl eaz ${ISDN} ${EAZ}	# Set local EAZ
  /sbin/isdnctrl addphone ${ISDN} in $2	# Set INCOMING phone#
  /sbin/isdnctrl callback ${ISDN} off
  /sbin/isdnctrl l2_prot ${ISDN} hdlc
  /sbin/isdnctrl l3_prot ${ISDN} trans
  /sbin/isdnctrl secure ${ISDN} on
  /sbin/isdnctrl encap ${ISDN} rawip
  /sbin/isdnctrl ihup ${ISDN} off
  /sbin/isdnctrl huptimeout ${ISDN} 300
  

  /sbin/ifconfig ${ISDN} ${IP_NET}.5 pointopoint ${IP_NET}.$3 allmulti -arp
  /sbin/route add -host ${IP_NET}.$3 dev ${ISDN} 

# Accounting via ipfwadm einschalten
  /sbin/ipfwadm -A -a -S ${IP_NET}.$3/255.255.255.255 -b

  return 1
}

/sbin/isdnctrl verbose 3
/sbin/telesctrl teles0 1 4

list=`ls /etc/ip_kunde`

for i in $list ; do

  IP_INFO=`cat /etc/ip_kunde/$i`
  addinterface ${IP_INFO}

done

exit


N"="">ach der Initialisierung aller virtuellen Devices für die jeweiligen Benutzer, werden die Authorisierungen über die Rufnummer des Anrufenden erledigt, somit wird einem die zusätzliche Authorisierung über tty/PAP/CHAP usw. erspart.
Schade ist es nur, falls jemand diese Rufnummerübermittlung von der Telekom abschalten ließ.

D"="">as war's. Jetzt kann der jenige, dessen Rufnummer für ein ISDN-Devices authorisiert wurde anrufen und das Ganze kann mit einem tail -f /usr/adm/debug verfolgt werden.



Diese Installation und weiterführendes hatte ich den Rämen der Firma impec® vorgenommen.
Ich bedanke mich bei allen Beteiltigten für die gute Zusammenarbeit.


W"="">eitere Installationsanleitungen für isdn4linux befinden sich auf der Seite von Werner Becker.
Außerdem existiert eine isdn4linux Mailingsliste, in der spezielle Probleme / Konfigurationen und weiterführendes Besprochen wird.
Subscribed mit Mail an majordomo@hub-wue.franken.de mit dem Text
subscribe isdn4linux <deine EMail-Adresse>

Diese Anleitung befindet sich noch im weiteren Aufbau, d.h. weitere Kleinigkeiten, auf die zu achten sind, werden in der nächsten Zeit hinzugefügt.
Solange bleibt diese Seite eine  [Baustelle] .


F"="">alls Du Hinweise und weitere Anregung zur dieser Installations Anleitung hast oder einige Abschnitte unklar sind, dann schreib mir doch eine Mail: .


Anhang

I/O Parameter

Leider ist die I/O Belegung der Teles S0/16.3 ISDN-Karte falsch in der TELES.ONLINE-Dokumentation beschrieben. Die korrekten I/O-Parameter für die Installation sind:
  • 0x180 := 0xd80
  • 0x280 := 0xe80
  • 0x380 := 0xf80

IP Firewall Admin

Zur besseren Kontrolle der ISDN-Teilnehmer empfiehlt sich der ipfwadm um die anfallenden Volumen festzuhalten.
Der ip Firewall Admin besitzt noch weitere nette Eigenschaften, aber dazu bitte die Dokumentation des Programmes einmal durchlesen.

virtuelle Devices

So wie ich die i4l / i4k Dokumentation verstanden habe, können unendlich viele isdnx - Devices initialisiert werden. Hier bestehen keine Einschränkung, wie unter /dev mit max. 64 Devices.

IRQ's

Die IRQ's auf neuen und alten Boards haben den Unterschied, daß die neuen Boards zusätzlich den Interrupt 15 für den zweiten IDE-Controller belegt haben.
Hier jedoch eine komplette Liste der PC IRQs und ihre Belegung.

IRQ Belegung durch:
0 belegt
1 belegt
2 belegt (Cascade)
3 COM2
4 COM1
5 LPT2
6 Floppy
7 LPT1
8 belegt (?)
9 frei (Cascade)
10 frei
11 frei
12 frei
13 Koprozessor
14 erster IDE Kontroller
15 zweiter IDE Kontroller
bei neuen Boards >4x86
von Stefan Nehlsen <stn@techfak.uni-kiel.de>
<"="p>TOP<" image=../image>