3 <PAGE name="ISDN und GNU/Linux">
5 Ein paar Anmerkungen zum Thema ISDN (IS Doch Nonsense) und GNU/Linux in
6 Verbindung mit einer Teles 16/3 ISDN-Karte. <p>
8 <em>Von Wolfgang Nowak</em> <p>
10 Kernelversion: 2.0.27 oder neuer, HiSax_1.3.patch_for_2.0.26.gz
11 Der Patch funktioniert auch mit 2.0.28. <p>
14 Der normale I4L-Treiber kann weiterhin mit einkomplimiert werden,
15 die /dev/ttyIx Mimik funktioniert damit ganz wunderbar, mit mgetty
16 kann so die ISDN-Karte wie ein Modem bedient werden. Mgetty ab 0.99 .
19 Beim Konfigurieren des Kernels sind die gewuenschten Optionen, wie
20 SYNC-PPP etc bei den I4L-Optionen einzutragen. Dringend anzuraten ist
21 die Verwendung als Modul, da das feste Einbinden noch Probleme mit sich
22 bringt. Ich hab's garnicht erst anders ausprobiert. Ausserdem laesst sich's
23 so besser experimentieren ;-)
26 In /usr/src/linux/drivers/isdn/teles/config.c sind die Spezialitaeten der
27 Karte, IRQ und Protokoll (DSS1 oder 1TR6, in Zweifel DSS1) einzutragen,
28 bei einer Teles16/3 ist MEMBASE=0. Sinnvoll ist es, die Karte in einem
29 Dos-Rechner mit dem mitgelieferten Konfig-Tool auf in die Hardware
30 passende Werte zu konfigurieren.
33 Bei mir haben nach dem Umstellen auf den HiSax die ISDNutils nicht mehr
34 funktioniert, wen wunderts, also: Neu Kompilieren. ISDNLog nimmt sehr viel
35 Systemlast, bei einem 486/66/32 ca 80Prozent, irgendetwas hakt da
36 noch, besser nicht verwenden. Schade eigentlich. Wer tcpdump benutzt,
37 sollte es mit dem Patch aus den ISDN4k-utils.2.0 neu bauen, sonst knallt
38 ein laufendes tcpdump bei startender ISDNVerbindung mit einem Seg-Fault
42 Die Hardware wird initialisiert mit
46 /sbin/modprobe -v hisax HiSax_id=Tel0 io=3,2,5,0xd80
50 wobei io=$TELES_Modell,$PROTOKOLL,$IRQ,$PORT
53 und wieder abgeklemmt mit
61 Das ist eigentlich alles, was fuer die Einstellung der Hardware notwendig
62 ist. Karsten Keil (der Programmierer) hat es einem da einfach gemacht.
66 Die Netzwerkeinstellungen haengen sehr davon ab, was Du machen moechtes.
67 Bei mir baumelt eine grosse Wohngemeinschaft mit 4 Rechnern
68 am "zurbel", der Adressraum ist 192.168.0.x mit einer Netzmaske
69 von (local) ff:ff:ff:00
70 Die Verbindung nach Aussen geschieht über
74 <LI>News- und Mail ueber UUCP, never change a running System ;-)
75 <LI>Einwaehlen per Modem (tty) fuer Freunde und Bekannte
76 <LI>Dialup-IP via ISDN mit synchronenm PPP auf den Livingstone Portmaster
77 bei Familie NorthNet, Adressraum 192.109.226.x
82 #Interface einrichten:
83 /sbin/isdnctrl addif ippp0
84 /sbin/isdnctrl eaz ippp0 MEINE_TELEFONNUMMER
86 #Die angerufenen Nummern:
87 /sbin/isdnctrl addphone ippp0 out PROVIDER_TELEFON_1
88 /sbin/isdnctrl addphone ippp0 out PROVIDER_TELEFON_2
92 /sbin/isdnctrl l2_prot ippp0 hdlc
95 #Layer-3 Protokoll ist zur Zeit immer "Trans":
96 /sbin/isdnctrl l3_prot ippp0 trans
99 #Wir wollen ja Sync-PPP:
100 /sbin/isdnctrl encap ippp0 syncppp
103 #Sicherheitslevel, darf uns jeder anrufen oder nur wenige:
104 /sbin/isdnctrl secure ippp0 off|on
106 #Nach welcher Inaktivitaetszeit (Sekunden) soll die Leitung gesprengt werden:
107 /sbin/isdnctrl huptimeout ippp0 300
109 #Wenn das mit den Gebuehreninfos mal klappen wuerde:
110 /sbin/isdnctrl chargehup ippp0 on|off
112 #Zeige, welches Paket die Verbindung ausloest
113 # 0=Halt die Klappe, 31 (?) = Ich bin eine Parkuhr, laber mich voll.
114 # Bei 1 wird gerade noch angezeigt, welcher Request die
115 # Verbindung herstellen will
116 /sbin/isdnctrl verbose 1
119 # Maximale Anzahl der Waehlversuche pro Telefonnummer
120 /sbin/isdnctrl dialmax ippp0 4
122 # Callback Optionen, nicht getestet...
123 /sbin/isdnctrl callback ippp0 off|on
124 /sbin/isdnctrl cbdelay ippp0 5
125 /sbin/isdnctrl cbhup ippp0 on|off
127 # Der iprofd sorgt dafuer, dass ISDN"Modem"-Settings nicht verlustig gehen.
128 /sbin/iprofd /etc/isdnlog/modemsettings
131 /sbin/telesctrl Tel0 1 4
133 # ...und ab geht die Post, wir bauen uns ein Interface,
134 # 0.0.0.0 sind wir, 192.109.226.2 der Einwaehlknoten.
135 ifconfig ippp0 0.0.0.0 pointopoint 192.109.226.2
137 # Der normale pppd tut sowas nicht
144 # Das folgende Scriptchen setzt die Route, wehe dem, der vergisst, sie
145 # spaeter wieder zu loeschen:
150 route add 192.109.226.2 metric 1 dev ippp0
151 route add default gw 192.109.226.2 metric 1
154 Dem Unfug ein Ende bereiten wir mit
158 /sbin/isdnctrl hangup ippp0
160 route del 192.109.226.2
161 route add default 192.168.0.0
166 Es ist definitiv nicht sinnvoll, die Route auf ippp0 zu belassen,
167 da nicht nur Nameserver gerne mal ein Paeckchen nach draussen verschicken.
168 Wenn Windowsrechner im Netz haengen, kommt die Leitung nie zur Ruhe, das
170 Wenn jemand einen Tip hat, wie isdnlog ordentlich zu handhaben ist,
171 immer her mit den Infos. So jedenfalls nicht:
175 ##/sbin/isdnlog -vw2 -m2048 -D /dev/isdnctrl0
176 ##/sbin/isdnlog -D -v7 -l1015 -x4087 -M -n -W80 /dev/isdnctrl0
192 # no CHAP authentification
196 # accept IP addresses from peer
201 # try to get IP address from interface
202 # option specific to ipppd (as opposed to pppd)
205 # disable header-compression
206 # Seh ich nicht ein , das klappt ganz prima auch so.
219 # ... und damit wir auch reingelassen werden:
220 # Bitte Tabulatoren verwenden.
222 # example for /etc/ppp/pap-secrets
224 # client server pw iplist
225 wuffel * MEIN_PASSWORT
230 Dieses Paper ist sehr knapp und wahrscheinlich laesst sich
231 vieles besser einrichten, ich uebernehme keine Funktionsgarantie,
232 bei mir klappt so alles wunderbar. Kommentare bitte an
233 wuffel@zurbel.infodrom.north.de.
234 Wenn experimentierfreudige ISDNler Lust haben, ich moechte
235 gerne rausbekommen, wie ich ISDN-Dial-IN hinbekomme, da fehlen mir bis
236 jetzt entsprechende Mitbastler.