<!doctype linuxdoc system>

<article>

<title>ISDN4LINUX - FAQ (deutsche Version)

<author>&Uuml;bersetzer: Wolfgang Bornath (<tt><htmlurl
url="mailto:i4lfaq-de@wolf-b.de" name="i4lfaq-de@wolf-b.de"></tt>)
<date>&Uuml;bersetzung: v2.0.38-1, 05. Mai 2000
<abstract>
</abstract>
<!-- Table of Content
-->

<toc>

<sect> pro: Vorbemerkungen
<label id="pro">


<sect1> pro_matt: Vorwort zur Originalversion 
<label id="pro_matt">
<p>
Vom Autor <bf>Matthias Hessler</bf> (<tt><htmlurl
url="mailto:hessler@isdn4linux.de" name="hessler@isdn4linux.de"></tt>)

Anstatt diese FAQ online zu lesen solltest Du Dir &uuml;berlegen, das
ganze Dokument auf Deinen Rechner zu laden und offline zu lesen (ist
viel billiger). Die aktuelle downloadbare Version im
TXT/HTML/SGML-Format findest Du auf der Homepage der FAQ: <url
url="http://www.mhessler.de/i4lfaq.html">.

Diese FAQ beantwortet Fragen, die immer wieder in der Newsgroup
de.alt.comm.isdn4linux gestellt werden. Sie enth&auml;lt Themen zum
Gebrauch von ISDN4LINUX, &uuml;ber die jeder User etwas wissen sollte,
ebenso wie Tips zum besseren Nutzen der Features von ISDN4LINUX.

Diese Version 2 der FAQ entstand aus einer fr&uuml;heren, jetzt
&uuml;berholten Version. Informationen &uuml;ber &auml;ltere Versionen
von ISDN4LINUX (1997 und &auml;lter) findest Du in der FAQ Version
1.3.4.

Zum Format dieser FAQ: Grundlage dieser FAQ ist die I4L Mailingliste
(siehe Frage <ref id="docu_mailinglist" name="docu_mailinglist">). Ich
behandele die Kenntnisse und L&ouml;sungen aus dieser Mailingliste als
Public Domain, ohne den Autor der Original-Mail anzuf&uuml;hren. Die FAQ
wird jetzt in SGML erstellt, da dieses Format die Konvertierung in
beliebige andere Formen der Dokumentation erleichtert (obwohl es da ein
paar Einschr&auml;nkungen gibt). Die FAQ wird im Original in englischer
Sprache gef&uuml;hrt, da die deutsch-sprachigen User die Mailingliste/
Newsgroup leichter verfolgen oder in deren Archiven suchen k&ouml;nnen.

Die unz&auml;hligen Links in diesen Seiten sind nicht immer
vollst&auml;ndig und sicherlich sind einige davon nicht mehr intakt. Ich
habe leider nicht die Zeit, alle zu &uuml;berpr&uuml;fen. Lass es mich
bitte wissen, wenn Du einen defekten Link entdeckst (wenn ich Zeit dazu
habe werde ich eine automatische Linkkontrolle installieren).

Zus&auml;tze, Verbesserungen und andere Vorschl&auml;ge (inklusive
&Uuml;bersetzungen in andere Sprachen) sind immer willkommen (auch
Verbesserung von Rechtschreibfehlern!), vorzugsweise als "diff" der SGML
Version. Vielen Dank im Voraus!

Bitte sende alle Mail zur Originalversion dieser FAQ an:
<tt><htmlurl url="mailto:i4lfaq@isdn4linux.de"
	     name="i4lfaq@isdn4linux.de"></tt>
oder:
<tt><htmlurl url="mailto:hessler@isdn4linux.de"
	     name="hessler@isdn4linux.de"></tt>.

Die neueste Version dieser FAQ findest Du unter:
<tt><url url="http://www.mhessler.de/i4lfaq.html"></tt>
oder:
<tt><url url="http://www.isdn4linux.de/faq/"></tt>.


Diese FAQ unterliegt der GNU General Public License (GPL) Version 2; (C)
1999 Matthias Hessler (f&uuml;r Version 2.0). Die Weitergabe unter den
Bedingungen der GPL wird begr&uuml;sst. Wir &uuml;bernehmen jedoch KEINE
GARANTIEN f&uuml;r die hier enthaltenen Informationen. Zur weiteren
Information lies bitte die GNU General Public License. Bei der Free
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA ist
eine gedruckte Ausgabe erh&auml;ltlich, eine elektronische Version bekommst
Du vom Autor der Originalversion dieser FAQ.


<sect1> pro_wobo: Vorwort zur deutschen &Uuml;bersetzung
<label id="pro_wobo">
<p>
Vom &Uuml;bersetzer <bf>Wolfgang Bornath</bf> (<tt><htmlurl
url="mailto:i4lfaq-de@wolf-b.de" name="i4lfaq-de@wolf-b.de"></tt>)

Dies ist die deutsche &Uuml;bersetzung von Matthias Hessler's FAQ f&uuml;r
ISDN4LINUX. Bei der Umsetzung in die deutsche Sprache halte ich mich
weitgehend an das Original. Da jedoch nicht der Eindruck entstehen soll,
hier w&auml;re ein "Babelfish" am Werke gewesen, erlaube ich mir, ab und zu
etwas freiz&uuml;gig zu sein.

Die Versionsbezeichnung richtet sich nach dem Original. Bei der
deutschen Version 2.0.27-1 handelt es sich also um die erste
&Uuml;bersetzungsversion der Originalversion 2.0.27. Auf diese Art wird es
dem interessierten Leser leicht gemacht, zwischen der deutschen und der
englischen Ausgabe zu vergleichen. Die Originalversion wird
normalerweise immer einen Schritt voraus sein. Ich bem&uuml;he mich jedoch,
den Zwischenraum nicht zu gro&szlig; werden zu lassen.

Da die hier verwendeten Fachausdr&uuml;cke in allen HOWTOs und
Readmes, etc. immer wieder verwendet werden, habe ich sie nicht
"eingedeutscht". Eine Erkl&auml;rung der meisten Begriffe findest Du im
<ref id="glossary" name="Glossar">. 

Mein wichtigstes Hilfsmittel bei dieser Arbeit war und ist (au&szlig;er
meiner Linuxbox mit Linux-Mandrake 7.0) Gerhard Sittig (<tt><htmlurl
url="mailto:Gerhard.Sittig@gmx.net"
name="<Gerhard.Sittig@gmx.net>"></tt>), der f&uuml;r die erstklassige
Rechtschreibung sorgt und mir auch &uuml;ber manche sachliche
Verst&auml;ndnish&uuml;rde hinweg hilft. Danke Gerhard!

Wo gibt es die <bf>neueste deutsche Version</bf> dieser FAQ?
<quote>
Die Online-Version zum Lesen: <tt><htmlurl
url="http://www.wolf-b.de/i4l/i4lfaq-de.html"
name="http://www.wolf-b.de/i4l/i4lfaq-de.html"></tt>
</quote>
<quote>
<bf>Downloads:</bf>
</quote>
<quote>
Alle folgenden Dateien liegen auf dem Server von ISDN4LINUX:
ftp://ftp.isdn4linux.de/pub/isdn4linux/FAQ/
</quote>
<quote>
Die HTML-Version als tarball: <tt><htmlurl
url="ftp://ftp.isdn4linux.de/pub/isdn4linux/FAQ/i4lfaq-de.html.tar.gz"
name="i4lfaq-de.html.tar.gz"></tt>
</quote>
<quote>
Die HTML-Version als ZIP: <tt><htmlurl
url="ftp://ftp.isdn4linux.de/pub/isdn4linux/FAQ/i4lfaq-de-html.zip"
name="i4lfaq-de-html.zip"></tt>
</quote>
<quote>
Die FAQ im SGML-Format: <tt><htmlurl
url="ftp://ftp.isdn4linux.de/pub/isdn4linux/FAQ/i4lfaq-de.sgml"
name="i4lfaq-de.sgml"></tt>
</quote>

Alle <bf>Mails</bf> zur deutschen Version sende bitte an: <tt><htmlurl
url="mailto:i4lfaq-de@wolf-b.de" name="i4lfaq-de@wolf-b.de"></tt>.


<!-- General Section: About isdn4linux, features
-->

<sect> general: Allgemeine Informationen &uuml;ber ISDN4LINUX  
<label id="general">

<sect1> general_i4l: Was ist ISDN4LINUX?  
<label id="general_i4l">
<p>
ISDN4LINUX ist ein Paket von Kernelmodulen, die im Linux-Kernel
enthalten sind. Es besteht aus dem Hauptmodul <tt/isdn/ und dem
eigentlichen Hardware-Treiber f&uuml;r die jeweilige Karte.  Zus&auml;tzlich
gibt es noch das Paket <tt/isdn4k-utils/ mit den notwendigen Werkzeugen,
um die ISDN-spezifischen Eigenschaften benutzen zu k&ouml;nnen.

<sect1> general_hardware: Welche Hardware wird von ISDN4LINUX unterst&uuml;tzt?  
<label id="general_hardware">
<p>
Im Allgemeinen unterst&uuml;tzt ISDN4LINUX sowohl ISDN-Karten f&uuml;r den ISA-
oder PCI-Bus als auch einige PCMCIA-Karten. Sogenannte 'Terminal
Adapter', d.h., Ger&auml;te am seriellen oder parallelen Port k&ouml;nnen mit
ISDN4LINUX jedoch <bf/nicht/ benutzt werden. Die einzige Ausnahme bildet
derzeit die Creatix/Teles S0 Box mit
Parallelport-Anschlu&szlig;. Weitere Details &uuml;ber unterst&uuml;tzte Karten
findest Du in dem Abschnitt <ref id="hardware" name="Hardware">.

<sect1> general_features: Welche Leistungsmerkmale unterst&uuml;tzt ISDN4LINUX?
<label id="general_features">
<p>
Grunds&auml;tzlich kann ISDN4LINUX Daten via ISDN auf verschiedene Art und
Weise senden und empfangen (X.75, HDLC, raw ip, synchronous ppp,
asynchronous ppp, V.110). Einige der Werkzeuge bieten zus&auml;tzliche
Features an. <tt/isdnlog/ z.B., mit dem ISDN Ereignisse dokumentiert
werden und das es erlaubt, auf diese Ereignisse zu reagieren (inklusive
Geb&uuml;hrenermittlung); und <tt/vbox/, ein
Anrufbeantworter-Programm. Weitere Details findest Du im Abschnitt <ref
id="feature" name="feature">.

<sect1> general_countries: In welchen L&auml;ndern funktioniert ISDN4LINUX?  
<label id="general_countries">
<p>
Zumindest in allen L&auml;ndern, in denen Euro-ISDN benutzt wird. Es gibt
jedoch einige Besonderheiten. In dem Abschnitt <ref id="countries"
name="countries"> findest Du mehr Infos &uuml;ber Dein Land.

<sect1> general_docu: Wo finde ich weitere Dokumentationen, HOW-TOs und hilfreiche Tips &amp; Tricks?
<label id="general_docu">
<p>
Neben dieser FAQ solltest Du Dir die verschiedenen Man-Seiten und
READMEs des ISDN4LINUX-Paketes anschauen. Dann gibt es noch die Website
von ISDN4LINUX: <url url="http://www.isdn4linux.de">. Zus&auml;tzlich
existiert eine Newsgroup und eine Mailingliste zu ISDN4LINUX, die Dir
die neuesten Informationen vermitteln. Weiter Informationen &uuml;ber diese
guten Quellen findest Du im Abschnitt <ref id="docu" name="docu">.

<sect1> general_getlatest: Wo bekomme ich die aktuelle Version von ISDN4LINUX?
<label id="general_getlatest">
<p>
Die aktuelle Version der Kernel-Treiber sollte im Linuxkernel enthalten
sein. Manchmal ist das jedoch nicht der Fall oder der aktuelle Kernel
unterst&uuml;tzt Deine ISDN-Karte noch nicht. Zus&auml;tzlich ben&ouml;tigst Du
eventuell das Paket isdn4k-util. In diesen F&auml;llen kannst Du die
allerneueste, gerade in Entwicklung befindliche Version
ausprobieren. Siehe Abschnitt <ref id="distrib" name="distrib">.

<sect1> general_contacts: Wie bekomme ich Kontakt zu den Entwicklern?  
<label id="general_contacts">
<p>
Durch die Website www.isdn4linux.de auf <url
url="http://www.isdn4linux.de/contacts.php3">.
</sect>

<!-- Development & Distribution -->

<sect> distrib: Distribution  
<label id="distrib">

<!-- Who are the developers? -->  

<sect1> distrib_getlatest: Wie bekomme ich das neueste ISDN4LINUX?  
<label id="distrib_getlatest">
<p>
Es gibt verschiedene Wege, abh&auml;ngig von Deinem Kernel. Du solltest
einen aktuellen Kernel benutzen (= erste Option), es sei denn, Du bist
ein erfahrener Linux-User.
<itemize>
<item>Du hast einen aktuellen Kernel (zumindest 2.0.36/2.2.11/2.3.14):
Gute Wahl, Du hast bereits die aktuelle Version von ISDN4LINUX, was den
Kernel angeht. Zus&auml;tzlich ben&ouml;tigst Du nur noch das aktuelle Paket
isdn4k-utils von <url
url="ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/"> - wenn es nicht
schon in Deiner Distribution enthalten ist.

<item>Du hast einen &auml;lteren Kernel (vor 2.0.36/2.2.11/2.3.14): Du
solltest auf einen aktuellen Kernel umsteigen. Ein Aktualisieren des
Kernels ist VIEL leichter als der Versuch, ISDN mit Deinem alten Kernel
zum Arbeiten zu &uuml;berreden. Nun gut, wenn Du trotzdem Deinen alten
Kernel behalten willst, so wird's gemacht: Zuerst musst Du den richtigen
CVS-Auszug f&uuml;r Deine Kernelversion bestimmen (CVS ist das von den
ISDN-Entwicklern benutzte System zur Versionsverwaltung). Benutze einen
CVS-Snapshot mit dem ungef&auml;hren Datum der Entstehung Deines Kernels. Du
findest die Kernel-Patches und die alten isdn4k-utils Pakete auf <url
url="ftp://ftp.isdn4linux.de/pub/isdn4linux/"> oder auf einem der
Spiegel-Server (<url url="http://www.isdn4linux.de/download.php3"> zeigt
Dir, wie Du die Spiegelserver findest).

<item>Als Entwickler: Wenn Du an der Entwicklung von I4L teilhaben
willst, kannst Du Dir die neueste Version via CVS besorgen. Dabei hilft
Dir die Frage zum Zugang zu CVS: <ref id="distrib_cvs"
name="distrib_cvs">.
</itemize>


<sect1> distrib_cvs: Wie erhalte ich Zugang zu den Quellen der aktuellen Entwicklung / Worum geht es bei dem CVS Baum?
<label id="distrib_cvs">
<p>
CVS - Concurrent Version System:

Das ist eine Multiuser/Server-Erweiterung des RCS (Revision Control
System). Die I4L-Treiber werden unter dem CVS entwickelt und es gibt
einen Server (cvs.isdn4linux.de) mit einem CVS-Verzeichnisbaum, auf den
alle Entwickler zugreifen k&ouml;nnen. Zus&auml;tzlich hat Fritz einen anonymen
Nur-Lese-Zugriff auf den CVS-Baum eingerichtet. Wenn Du die allerneueste
Version brauchst, bekommst Du sie hier. Sie kann allerdings mehr Fehler
enthalten als die offiziell herausgegebenen Versionen!!!

So bekommst Du die neueste Version:
<enum>
<item>Erstelle ein Verzeichnis f&uuml;r I4L und wechsle dorthin 
<code>
mkdir ~/cvs 
cd ~/cvs 
cvs -d :pserver:guest@cvs.isdn4linux.de:/i4ldev login
</code> 
<item>Login (die Frage nach dem Password beantworte mit
<em>readonly</em>) 
<item>Hol Dir die ISDN Kerneltreiber (in der gleichen Hierarchie wie in
den Linux Quellen) 
<code>
cvs -d:pserver:guest@cvs.isdn4linux.de:/i4ldev checkout isdn
</code>  
<item>Hol Dir das Utility-Paket und speichere es im aktuellen
Verzeichnis
<code>
cvs -d :pserver:guest@cvs.isdn4linux.de:/i4ldev checkout isdn4k-utils
</code> 
Wenn Du die neueste Version f&uuml;r Kernel 2.0.x und nicht f&uuml;r den
neuesten Kernel brauchst, musst Du die Option '-r' setzen:
<code>
cvs -d :pserver:guest@cvs.isdn4linux.de:/i4ldev checkout -r \
isdn4kernel_2_0 isdn
</code> 
<item>Nach dem Auschecken k&ouml;nnen weitere Updates durchgef&uuml;hrt werden,
indem man erst in das Verzeichnis <tt>isdn</tt> oder
<tt>isdn4k-utils</tt> wechselt und dann eingibt:
<code>
cvs update -P -d
</code> 
Tip: Du brauchst beim Update keinen neuen Login durchzuf&uuml;hren, da CVS
das Passwort beim ersten Login speichert. 
</enum>

WARNUNG!! DER NEUESTE CODE KANN SEHR UNSTABIL SEIN UND SICH VIELLEICHT
NICHT EINMAL OHNE PROGRAMMIER-KENNTNISSE KOMPILIEREN LASSEN - Also BITTE
dazu keine Anf&auml;ngerfragen!

Leute, die bei der Entwicklung von ISDN4LINUX <bf>kontinuierlich</bf>
durch das Erstellen von neuen Treibern oder &auml;hnlich helfen wollen,
k&ouml;nnen einen Account mit vollem Zugriff bekommen. Dazu schicke bitte
eine Mail an Fritz Elfert <tt><htmlurl url="mailto:fritz@isdn4linux.de"
name="fritz@isdn4linux.de"></tt>


<!-- Features
-->

<sect> feature: Leistungsmerkmale
<label id="feature">

<sect1> feature_not: Welche Leistungsmerkmale von ISDN werden nicht von ISDN4LINUX angeboten?
<label id="feature_not">
<p>
Einige ISDN-Leistungen sind ger&auml;tespezifisch und k&ouml;nnen von ISDN4LINUX
nicht f&uuml;r ein anderes Ger&auml;t aktiviert werden ohne da&szlig; ISDN4LINUX
das TEI verf&auml;lscht (was wiederum das andere Ger&auml;t m&ouml;glicherweise
irritieren w&uuml;rde).  
Solche spezifischen ISDN Merkmale sind unter
Anderen: Abweisung eines wartenden Anrufes, An-/Ausschalten der
Nummernanzeige, Halten eines Gespr&auml;ches, Konferenzgespr&auml;che,
differierende COLP/CLRP.

<sect1> feature_data: Welche Arten des Datentransfer von ISDN werden unterst&uuml;tzt?
<label id="feature_data">
<p>
Folgende Basisformate sind m&ouml;glich:
<itemize>
<item> 56k asynchron : nein 
<item> 64k synchron : ja 
<item>128k synchron : ja (Kanalb&uuml;ndelung - siehe <ref
id="feature_2channel" name="feature_2channel">)
</itemize>
Folgende Level2-Formate sind m&ouml;glich:
<itemize>
<item>HDLC
<item>X.75
<item>transparent
<item>V.110
</itemize>
Diese Encapsulations sind m&ouml;glich:
<itemize>
<item>rawip
<item>ethernet
<item>Sync PPP
<item>X.25 (ben&ouml;tigt 2.1 oder neuer) 
<item>Cisco und Cisco-h
<item>Cisco-hk (=Cisco mit Keepalive; ben&ouml;tigt 2.1 oder neuer)
<item>und noch ein paar Spezialit&auml;ten: Schau mal in die Man-Seiten.
</itemize>
Bitte beachte, da&szlig; X.31a wie X.25 als Aufsatz auf ISDN unterst&uuml;tzt
wird. X.31b hingegen wird nicht unterst&uuml;tzt, weder als B-Kanal- noch als
D-Kanal-Version.

<sect1> feature_voice: Unterst&uuml;tzt ISDN4LINUX Audio-Funktionen (z.B. Anrufbeantworter oder Voice-over-IP f&uuml;r H.323 Clients)?  
<label id="feature_voice">
<p>
Ja, in der aktuellen Version von ISDN4LINUX ist die Unterst&uuml;tzung f&uuml;r
Audio-Funktionen enthalten. Als Anrufbeantworter kannst Du entweder 'vgetty' aus Gert Doerings 'mgetty+sendfax' benutzen oder 'vboxgetty' von Mich&auml;l Herold, das speziell f&uuml;r ISDN4LINUX geschrieben wurde. Das letztere ist Teil des Paketes isdn4k-utils, das Du auf <tt><url
url="ftp://ftp.franken.de/pub/"></tt> findest.

Ebenso kannst Du ISDN4LINUX als Gateway f&uuml;r Voice-over-IP nutzen und mit H.323-Clients (wie Voxilla oder Netmeeting) normale Telefone anrufen und/oder umgekehrt. Details zur Konfiguration findest Du bei der Frage <ref id="config_h323" name="config_h323">.

<sect1> feature_fax: Kann ich mit ISDN4LINUX faxen?  
<label id="feature_fax">
<p>
<itemize>
<item><bf>F&uuml;r alle passiven Karten: NEIN</bf>. Es gibt allerdings ein
Projekt, das sich mit diesem doch komplizierten Problem
besch&auml;ftigt. Weitere Informationen dar&uuml;ber erh&auml;ltst Du unter <tt><url
url="http://home.telia.no/Morten.Rolland/linux/i4lfax/index.html"></tt>
<item><bf>F&uuml;r die aktive Karte AVM B1: Ja</bf> (Fax ist als eines ihrer
Leistungsmerkmale in der Firmware implementiert). Die neuesten Sachen
dazu bekommst Du bei <tt><url
url="ftp://ftp.aeccom.com/pub/fax4i4l/howto/current/"></tt>
Die korrekte Konfiguration sollallerdings recht schwierig sein.
<item><bf>F&uuml;r die aktiven Eicon Diva Serverkarten (ausser Diva 2.0Pro):
Ja</bf>. Schau Dir README.fax und README.eicon im Verzeichnis
<tt>isdn/Documentation/isdn</tt> und <tt><url
url="http://www.melware.de/"></tt> an. Die Eicon Diva Serverkarten
erm&ouml;glichen den Faxbetrieb mit Class 2 Befehlen.  
<item><bf>F&uuml;r die semiaktiven Karten Sedlbauer Speedfax Sedlbauer
Speedfax+ und Siemens I-SURF 1.0: Ja</bf>. Allerdings ist dazu
z.Zt. noch etwas manuelle Arbeit notwendig und es werden nur Class 1
Befehle unterst&uuml;tzt. Dazu erf&auml;hrst Du Genaueres (z.B. einen seziellen
Patch) in der Mailingliste. Den Patch bekommst Du von <tt><url
url="//ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.2/testing/
i4l_isar_fclass1.tar.gz"></tt>
Dann initialisierst Du das ttyIn Interface mit
<code>
ATZ&amp;E&lt;deine_msn&gt;S0=1S13=1+FCLASS=1
</code>
und benutzt eine normale Konfigurationsdatei f&uuml;r Hylafax Class 1. Darin
ersetzt Du die nicht unterst&uuml;tzten Befehle (z.B. flow control) durch
Dummies.
 
</itemize>
Wenn Du jetzt faxen willst, ist ein analoges Modem neben Deiner
ISDN-Karte die beste Wahl.

<sect1> feature_modem: Kann ich mit ISDN4LINUX ein analoges Modem anrufen bzw. von dort angerufen werden?
<label id="feature_modem">
<p>
Im Allgemeinen: <bf>NEIN</bf>. Das geht nur mit Karten, mit denen Du
auch faxen kannst: siehe Frage <ref id="feature_fax"
name="feature_fax">.

<sect1> feature_divert: Ist Anrufweiterleitung mit I4L m&ouml;glich?  
<label id="feature_divert">
<p>
Anrufweiterschaltung wurde erst vor kurzem in I4L eingearbeitet (das
neue Programm <tt/divertctrl/). Es gibt dazu noch kein HOWTO und nur
sehr sparsame Dokumentation. Deshalb ist es nur etwas f&uuml;r den
erfahreneren Benutzer. In Holland kann als Alternative das "keypad
protocol" benutzt werden.

<sect1> feature_ipx: Kann ich IPX/SPX &uuml;ber ISDN mit Linux routen?  
<label id="feature_ipx">
<p>
Ja, setze ein ISDN-Interface auf mit der Encapsulation
<tt/ethernet/. <em/mars_nwe/ macht dann den Rest (z.B. das Routing). Du
kannst auch IPX mit dem IPPPD routen, siehe <ref id="syncppp_ipx"
name="syncppp_ipx">.  Bei IPX mit PPPD musst Du die Kompileroption
IPX_CHANGE setzen.

<sect1> feature_2channel: Unterst&uuml;tzt ISDN4LINUX Kanalb&uuml;ndelung?  
<label id="feature_2channel">
<p>
Die aktuellen Versionen von ISDN4LINUX unterst&uuml;tzen 2 Arten der
Kanalb&uuml;ndelung:
<itemize>
<item><bf>MP</bf> (auch weithin als 'MPPP' bezeichnet, basiert auf 
syncPPP) 
<item><bf>Raw bundling</bf> (konfiguriert durch sogenannte Slave
Channels)
</itemize>
Beide Varianten haben ihre Vor- und Nachteile. Siehe Abschnitt <ref
id="2channel" name="2channel">. Bonding (16bit Kanal) wird nicht
unterst&uuml;tzt, da es bei abweichenden Latenzzeiten der W&auml;hlverbindungen
nicht verl&auml;sslich arbeiten kann.  Warnung: Kanalb&uuml;ndelung spart Zeit,
nicht Telefonkosten.  Es nutzt nur, wenn Du die zus&auml;tzliche Bandbreite
wirklich brauchst.

<sect1> feature_diald: Kann ich ISDN4LINUX mit dem diald benutzen?  
<label id="feature_diald">
<p>
Ja, kannst Du. Dazu musst Du die ttyI* Devices zur Hinauswahl eingerichtet werden, also normalerweise so:
<code>
/usr/sbin/diald /dev/ttyI4 -m ppp [....]
</code>
wobei in [...] weiter W&auml;hlparameter angegeben werden k&ouml;nnen.

<sect1> feature_dod: Unterst&uuml;tzt der Treiber 'dial on demand'?  
<label id="feature_dod">
<p>
Ja. Wenn eine Netzwerk-Device (z.B. 'isdn0') eingerichtet wurde, wird
der Treiber die angegebene Nummer w&auml;hlen. Wenn zus&auml;tzlich ein
Hangup-Timeout (Idle Timeout) angegeben wurde (z.B.: <tt>isdnctrl
huptime &lt;interface&gt; &lt;time&gt;</tt>), wird der Treiber die
Verbindung automatisch trennen, wenn w&auml;hrend &lt;time&gt; Sekunden
keine Daten &uuml;ber das Device transportiert wurden. Allerdings gibt es da
Probleme mit syncPPP (siehe Abschnitt &uuml;ber syncPPP).  Schau Dir auch
mal die Beschreibung von dialmode an (siehe Frage <ref
id="dialout_dialmode" name="dialout_dialmode">).  Ganz sicher sollte
Dich der lange Bereich dieser FAQ interessieren, der sich mit den
Gefahren des unerw&uuml;nschten Verbindungsaufbaus besch&auml;ftigt: (<ref
id="dod" name="dod">).

<sect1> feature_sms: Kann ich &uuml;ber ISDN kurze Nachrichten (SMS) an mein Mobiltelefon (Handy) senden?
<label id="feature_sms">
<p>
Ja, daf&uuml;r kannst Du das Programm <tt/yaps/ benutzen. Du musst
allerdings wegen einiger Eigenheiten in der ISDN-Anbindung des
SMS-Callcenters den Kernel mit den Optionen <tt/Disable send complete/
und <tt/Disable sending llc/ neu kompilieren.

<sect1> feature_btx: Ist unter ISND4LINUX der Zugriff auf das deutsche Videotex/Btx/Datex-J m&ouml;glich?
<label id="feature_btx">
<p>
Ja, es funktioniert mit der Modememulation mit den Devices ttyI*. Es
muss ein bestimmtes Register f&uuml;r videotex gesetzt werden (ATSx=y -
schau in die Readme-Dateien).  Warnung! XCept (fr&uuml;her Xbtx) hat eine
Konfigurationsoption f&uuml;r ISDN. Diese sollte NICHT benutzt werden. XCept
sollte eingestellt werden, als ob ein normales Modem benutzt wird.

<sect1> feature_clock: Wie kann ich die Uhr meines Computers mit ISDN stellen?  
<label id="feature_clock">
<p>
Dies bietet Isdnlog mit der Option '-t'. Leider werden
Sekunden via ISDN nicht &uuml;bertragen und die vermittelte Zeit ist nicht
sehr genau - abh&auml;ngig von der ISDN-Ausstattung Deiner
Telefongesellschaft kann eine Abweichung von mehreren Minuten (!)
bestehen. Besser, Du holst Dir eine funkgesteuerte PC-Uhr und fragst sie
bspw. mit xntp ab. Ebenso kannst Du einen Zeit-Server im Internet mit
den Programmen 'netdate' oder 'rdate'
benutzen. Neben vielen anderen gibt es einen Zeit-Server in K&ouml;ln:
time.rrz.uni-koeln.de.

<sect1> feature_dosemu: L&auml;uft ISDN4LINUX unter dem Dosemu?  
<label id="feature_dosemu">
<p>
Ja! Steffan Henke <tt><htmlurl url="mailto:
henker@informatik.uni-bremen.de"
name="henker@informatik.uni-bremen.de"></tt> schrieb am 25.Okt.96:
<quote>
Es gen&uuml;gt, wenn man in der dosemu.conf einen virtuellen ComPort
(z.B. Com2) eintr&auml;gt, der mit z.B., Telix oder Terminal benutzt werden
kann: serial { com 2 device /dev/ttyI3 }.  Zugang mit Fossil ist
m&ouml;glich, wenn fossil.com (enthalten im Dosemu) gestartet ist. Getestet
mit den Konfigurationen: - Kernel 2.0.21, Teles Treiber mit den Patches
von Karsten - Kernel 2.0.21, HiSax </quote>

<sect1> feature_capi: Gibt es ein CAPI Interface?  
<label id="feature_capi">
<p>
Z.Zt. gibt es nur ein CAPI 2.0 Interface f&uuml;r die aktive Karte AVM
B1. Dieses Interface folgt dem offiziellen Standard CAPI 2.0, der
k&uuml;rzlich von der CAPI Association (<url url="http://www.capi.org">)
f&uuml;r Linux verabschiedet wurde. Es gibt Bestrebungen dieses Interface
allgemein verf&uuml;gbar zu machen, also auch f&uuml;r andere Karten. Es gibt
jedoch keine Pl&auml;ne f&uuml;r ein CAPI 1.1 Interface.

<sect1> feature_uus: Wird UUS (user to user signaling) unterst&uuml;tzt?  
<label id="feature_uus">
<p>
Ja, ISDN4LINUX k&ouml;nnte sowohl Senden als auch Empfangen
unterst&uuml;tzen. Wegen der unklaren gesetzlichen Bestimmungen zum Gebrauch
dieser M&ouml;glichkeit ist die Implementierung allerdings noch sehr
unvollst&auml;ndig. Der Empfang von UUS ist nur durch die Debug Interfaces
m&ouml;glich. Das Senden wird nur in Verbindung mit dem Weiterleitungsdienst
unterst&uuml;tzt (beim Abweisen eines Anrufes oder beim Senden eines
Besetzt-Zeichens) aber nicht bei einem normalen Anruf. Empfehlenswert
w&auml;re anstelle von UUS der Gebrauch des Subaddressing (siehe Frage <ref
id="feature_subaddressing" name="feature_subaddressing">). Beachte
bitte, da&szlig; das Senden von UUS kein kostenfreier Dienst ist (der
Empfang ist kostenlos), zumindest bei einigen deutschen
Telefon-Dienstanbietern musst Du daf&uuml;r extra bezahlen (schau Dir die
Nutzungsbestimmungen genau an). Zus&auml;tzlich solltest Du bedenken,
da&szlig; bei einer Verbindung durch ein PBX die gesamten UUS Signale
ausgefiltert werden k&ouml;nnten.

<sect1> feature_subaddressing: Wird Subaddressing unterst&uuml;tzt?  
<label id="feature_subaddressing">
<p>
Ja, ISDN4LINUX unterst&uuml;tzt Subaddressing (m&ouml;glich in Frankreich).
&Uuml;bergib dem HiSax die Nummer in folgendem Format:
<tt>&lt;number&gt;.&lt;subaddress&gt;</tt>. M&ouml;glicherweise musst Du
jedoch diesen Dienst gesondert bestellen und f&uuml;r den Empfang bezahlen
(das Senden ist kostenlos), abh&auml;ngig von Deinem ISDN-Anbieter.  Bedenke
auch, da&szlig; bei einer Verbindung &uuml;ber ein PBX wahrscheinlich das
ganze Subaddressing ausgefiltert wird.

<sect1> feature_gsmv110: Kann ich eine Verbindung zu ISDN4LINUX von meinem PDA &uuml;ber ein GSM- Handy herstellen?
<label id="feature_gsmv110">
<p>
Ja, wenn der Dienstanbieter des Handys ein GSM-to-ISDN/V.110-Gateway
besitzt.  Das soll bei einer Verbindung von einem PalmPilot zu
ISDN4LINUX mit V.110 funktioniert haben. Unter <ref id="config_gsmv110"
name="config_gsmv110"> findest Du Genaueres zur Konfiguration.

<!-- Feature reversed card
-->

<!-- Chargeint
-->

<!-- Feature Raw-IP
-->

<!-- Feature both caller ids
-->

<!-- Feature leased line
-->

<!-- Eurofile
-->

<sect1> feature_lcr: Ist mit ISDN4LINUX "least cost routing" (LCR) m&ouml;glich?  
<label id="feature_lcr">
<p>
Ja, dieses Feature wird jetzt von isdnlog unterst&uuml;tzt. Damit sucht isdnlog bei einem Anruf &uuml;ber die ISDN-Karte je nach Tageszeit und Geb&uuml;hreninformation den g&uuml;nstigsten Anbieter aus.
Beachte bitte, da&szlig; die Auswahl eines Call-by-Call ISP auf diese Art wenig Sinn macht, da dabei noch mehr Werte (DNS, Proxy, Zugangsparameter) ver&auml;ndert werden m&uuml;ssen. Weiterhin sollte isdnlog immer aktiv sein (sonst kann die Hinauswahl um 3 Sekunden verz&ouml;gert werden).


<sect1> feature_future: Welche Features sind f&uuml;r die Zukunft geplant?  
<label id="feature_future">
<p>
Eigentlich sind die meisten Features bereits implementiert und werden
nun verbessert. Doch wer weiss, welche interessanten Features sich die Entwickler noch einfallen lassen werden? Wir werden sehen...


<!-- Helpful docu, links, mailing list, config examples, howto's -->

<sect> docu: Dokumentation, Howto's, Tips &amp; Tricks, Mailinglisten/Newsgroups
<label id="docu">

<sect1> docu_first: Welche Dokumente sollte ich zuerst lesen?  
<label id="docu_first">
<p>
<itemize> 
<item>ISDN Kernel Subsystem:
<tt>/usr/src/linux/Documentation/isdn/README</tt>
<item>ISDN Karten:
<tt>/usr/src/linux/Documentation/isdn/README.card</tt>
z.B.: <tt>/usr/src/linux/Documentation/isdn/README.HiSax</tt>
<item>Synchronous PPP:
<tt>/usr/src/linux/Documentation/isdn/README.syncppp</tt>
<tt>/usr/src/linux/Documentation/isdn/README.syncPPP.FAQ</tt>
<item>Audio-F&auml;higkeit:
<tt>/usr/src/linux/Documentation/isdn/README.audio</tt>
<item>ISDN Utilities:
<tt>/usr/src/isdn4k-utils-version/README*</tt>
</itemize>
Viele der Utilities haben auch eigene Man-Seiten!

Bei einer SuSE-Distribution sind auch die folgenden Informationen
hilfreich:
<itemize>
<item><tt>/usr/doc/packages/i4l*</tt> (allgemein zu I4L)
<item><tt>/usr/doc/faq/faq/PPP-FAQ</tt> (zu syncPPP)
<item><tt>/usr/doc/howto/mini/Mail-Queue.gz</tt> (zur Email
Konfiguration)
</itemize>

Als Leser des deutschen Computermagazins <tt/ct/ findest Du sehr
hilfreiche Artikel in diesen Ausgaben (unter anderen):
<itemize>
<item>ct 05/98, Seite 224: <tt>Der erste Kontakt/Linux: Mit PPP ans
Internet</tt> 
<item>ct 21/98, Seite 288: <tt>Reiseleiter/Internet-Anbindung f&uuml;r das
LAN</tt> 
<item>ct 25/98, Seite 218: <tt>Bei Anruf Netz/Linux: Dial-In Server</tt>
</itemize>

Bei der Frage <ref id="config_links" name="config_links"> findest Du
weitere hilfreiche Links zur Konfiguration von I4L (z.B.: spezielle
Hilfe f&uuml;r SuSE- oder RedHat-User).

<sect1> docu_website: Wo liegt die offizielle Website f&uuml;r ISDN4LINUX?
<label id="docu_website">
<p>
Die offizielle Website findest Du unter:
<url url="http://www.isdn4linux.de">.

<sect1> docu_abc: Wo finde ich die Dokumentation &uuml;ber die abc-Erweiterungen?
<label id="docu_abc">
<p>
Diese findest Du auf:
<url url="http://i4l.mediatronix.de/">

<sect1> docu_newsgroup: Wie nennt sich die Newsgroup f&uuml;r ISDN4LINUX?
<label id="docu_newsgroup">
<p>
Die Newsgroup ist <tt/de.alt.comm.isdn4linux/.  Dort liest Du, was
aktuell vor sich geht, oder sendest selbst Nachrichten (wenn Deine Frage
nicht bereits in dieser FAQ beantwortet wurde). Es sind neben sehr
kompetenten Leuten auch die meisten Entwickler von ISDN4LINUX
anwesend. Lass Dich von den vielen deutschen Nachrichten nicht
verwirren. <bf>Englische Postings sind erlaubt und werden in Englisch
beantwortet!</bf>.  <tt>(Anm.d.&Uuml;bers.: Da ISDN4LINUX eine
haupts&auml;chlich deutsche Entwicklung ist und aufgrund der starken
Verbreitung von ISDN in Deutschland sind die meisten Artikel in deutsch
verfasst.)</tt>.

<sect1> docu_mailinglist: Wo finde ich die Mailingliste f&uuml;r ISDN4LINUX?
<label id="docu_mailinglist">
<p>
Die Addresse ist <tt>isdn4linux@listserv.isdn4linux.de</tt>. Vor dem
Senden einer Nachricht schau mal nach, ob die Frage nicht schon in
dieser FAQ oder sonst unz&auml;hlige Male beantwortet wurde (suche auf <url
url="http://www.deja.com/"> mit Schl&uuml;sselw&ouml;rtern wie ISDN, Linux, i4l,
isdn4linux,...). Die Leute der Mailingliste &auml;rgern sich gewaltig wenn
die Frage "kann ich mit meiner Karte xxx faxen" zum wiederholten Mal
gestellt wird (die Antwort findest Du unter <ref id="feature_fax"
name="feature_fax">).

Es sind neben sehr kompetenten Leuten auch die meisten Entwickler von
ISDN4LINUX anwesend. <bf>Englische Postings sind erlaubt und werden in
Englisch beantwortet!</bf>.

Die Mailingliste enth&auml;lt die gleichen Nachrichten wie die Newsgroup
(siehe Frage <ref id="docu_newsgroup" name="docu_newsgroup">). Daher
kannst Du Antworten auf Deine Fragen auch mit dem Newsreader lesen. Ein
bidirektionales Gateway synchronisiert Mailingliste und Newsgroup.

Du abonnierst dauerhaft die Mailingliste mit einer Mail an <tt><htmlurl
url="mailto:majordomo@listserv.isdn4linux.de"
name="majordomo@listserv.isdn4linux.de"></tt>. Das Subject kann
ausgelassen werden. Im Text sollte stehen: <tt/subscribe isdn4linux
&lt;email address&gt;/, wobei &lt;email address&gt; die Addresse ist zu
der die Liste geschickt werden soll. Das Abonnement hebst Du auf mit
einer Mail an die gleiche Addresse mit dem Text: <tt/unsubscribe
isdn4linux &lt;email address&gt;/. Beachte bitte, da&szlig; es etwa
20-50 Mails pro Tag auf dieser Mailingliste gibt. Wie Du nur eine Mail
pro Tag mit dem Inhalt aller Nachrichten bekommst erf&auml;hrst Du bei der
Frage <ref id="docu_maillistdigest" name="docu_maillistdigest">.

<sect1> docu_maillistdigest: Wie bekomme ich die Zusammenfassung der ISDN4LINUX-Mailingliste (nur eine Message pro Tag)?
<label id="docu_maillistdigest">
<p>
Abonniere die Mailingliste wie im Absatz <ref id="docu_mailinglist"
name="docu_mailinglist"> beschrieben und benutze als Mailingliste
<tt/isdn4linux-digest/ anstatt <tt/isdn4linux/. Also sollte der gesamte
Text bei der Bestellung lauten: <tt/subscribe isdn4linux-digest
&lt;email address&gt;/ und zum Abbestellen: <tt/unsubscribe
isdn4linux-digest &lt;email address&gt;/.

<sect1> docu_mailarchive: Gibt es ein Archiv der ISDN4LINUX-Mailingliste?  
<label id="docu_mailarchive">
<p>
Zur Schnellsuche mit Schl&uuml;sselw&ouml;rtern kannst Du <tt><url
url="http://www.deja.com"></tt> benutzen. W&auml;hle auch &auml;ltere Archive um
eine komplette Suche durchzuf&uuml;hren.

Die Messages werden auch, nach Monaten sortiert, ungeordnet beim
listserv.isdn4linux.de gesammelt. Das Archiv ist zug&auml;nglich auf <url
url="http://www.isdn4linux.de/listarch/">.

Als Alternative kannst Du eine Mail an <tt><htmlurl
url="mailto:majordomo@listserv.isdn4linux.de"
name="majordomo@listserv.isdn4linux.de"></tt> schicken. Ein Subject ist
nicht notwendig.  Die m&ouml;glichen Befehle sind:
<itemize>
<item>index isdn4linux - Auflistung der verf&uuml;gbaren Archive
<item>get isdn4linux filename - bestellen der Datei filename
</itemize>
Die Benennung der Archive erfolgt nach dem Muster 'archiv.jahrmonat',
also ist 'archiv.9610' das Archiv von Oktober 1996.  
<tt>Anm.d.&Uuml;bers.: Da es ISDN zu Anfang des 20. Jahrhunderts noch nicht
gab (bei Linux bin ich mir nicht sicher ;-)), ist IMO ein Y2K-Problem
auch bei z.B. 'archiv.0001' nicht vorhanden.</tt>

Ein weiteres Archive befindet sich auf:
<tt><url
url="ftp://ftp.uni-oldenburg.de/pub/unix/linux/isdn/isdn4linux/
Mailing-List"></tt>



<!-- Supported Hardware & hardware-specific stuff
-->

<sect> hardware: Unterst&uuml;tzte Hardware, ihre Eigenheiten und Hardware-bezogene Probleme
<label id="hardware">

<sect1> hardware_support: Welche Hardware wird unterst&uuml;tzt?  
<label id="hardware_support">
<p>
Unterst&uuml;tzt werden nur interne Karten f&uuml;r den ISA- oder PCI-Bus. Auch
ISA Plug&amp;Play Karten werden unterst&uuml;tzt, ben&ouml;tigen aber etwas
zus&auml;tzliche Handarbeit mit den <tt/isapnptools/. Details der
Konfiguration findest Du bei der Frage <ref id="config_pnp"
name="config_pnp">.

Es gibt <ref id="glossary_active" name="aktive">, <ref
id="glossary_semiactive" name="semi-aktive"> oder <ref
id="glossary_passive" name="passive"> interne Karten. Wenn Du nicht
gerade viel Geld ausgegeben hast, kannst Du davon ausgehen, da&szlig; Du
eine passive Karte hast. Mehr &uuml;ber den Unterschied findest Du bei <ref
id="hardware_activepassive" name="hardware_activepassive">.

Z.Zt. gibt es einen Treiber f&uuml;r alle passiven Karten mit bestimmten
Siemens Chips (HiSax Treiber). In der mit dem Treiber gelieferten Datei
<tt/README.HiSax/ findest Du die neuesten Informationen &uuml;ber
unterst&uuml;tzte Karten und welche Parameter dem HiSax &uuml;bergeben werden
m&uuml;ssen. Dies ist der Status vom 4. September 1999 (wird laufend
verbessert):
<itemize>
<item>Teles 8.0/16.0/16.3 und kompatible (wie: Dr. Neuhaus Niccy 1016,
 Creatix 16/S0)
<item>Teles 16.3c (kann nicht als "umgekehrte" Karte benutzt werden)
<item>Teles S0/PCMCIA (alte Hardware)
<item>Teles PCI
<item>Teles S0Box
<item>Creatix S0Box
<item>Creatix PnP S0
<item>Compaq ISDN S0 ISA Karte
<item>AVM A1 (Fritz, Teledat 150 ISA)
<item>AVM Fritz PCMCIA
<item>AVM Fritz PnP (Teledat 150 PnP)
<item>AVM Fritz PCI (Teledat 150 PCI)
<item>ELSA Microlink PCC-16, PCF, PCF-Pro, PCC-8
<item>ELSA Quickstep 1000
<item>ELSA Quickstep 1000PCI (neuer Name: ELSA Microlink PCI)
<item>ELSA Quickstep 3000 (Einstellungen wie QS1000)
<item>ELSA Quickstep 3000PCI
<item>ELSA PCMCIA
<item>ITK ix1-micro Rev.2 (auch: ITK Colombus Karte)
<item>Eicon.Diehl Diva 2.0 ISA und PCI (S0 und U Interface, nicht die 
PRO Version)
<item>Eicon.Diehl Diva Piccola
<item>ASUSCOM NETWORK INC. ISDNLink 128K PC Adapter
(Bestell-Nr. I-IN100-ST-D)
<item>Dynalink IS64PH (OEM Version der ASUSCOM NETWORK INC. ISDNLink
128K Adapter)
<item>Alle anderen ASUSCOM/Dynalink Karten (inkludsive der OEM
Versionen; insgesamt mehr als 50 Karten)
<item>PCBIT-DP (OEM Version der ASUSCOM NETWORK INC. ISDNLink)
<item>HFC-2BS0 basierende Karten (TeleInt SA1)
<item>Sedlbauer Speed Card (Speed Win, Teledat 100, PCI, Fax+)
<item>Sedlbauer Speed Star/Speed Star2 (PCMCIA)
<item>Sedlbauer ISDN-Controller PC/104
<item>USR Sportster interner TA (kompatible Stollmann tina-pp V3)
<item>ith Kommunikationstechnik GmbH MIC 16 ISA Karte
<item>Traverse Technologie NETjet PCI S0 Karte
<item>Dr. Neuhaus Niccy PnP/PCI
<item>Siemens I-Surf 1.0
<item>Siemens I-Surf 2.0 (mit IPAC =&gt; versuche Type 12 asuscom)
<item>Trust PCI
<item>ACER P10
<item>HSR Saphir
<item>Berkom Telekom A4T
<item>Scitel Quadro
<item>Gazel ISDN Karten
<item>HFC-PCI basierende Karten
<item>PCI/Winbond W6692 basierende Karten
</itemize>
Hinweis:
<itemize>
<item>PCF, PCF-Pro: bis jetzt wird nur der ISDN-Teil unterst&uuml;tzt
<item>PCC-8: noch nicht getestet 
<item>Teles PCMCIA ist EXPERIMENTAL
<item>Teles 16.3c ist EXPERIMENTAL 
<item>Teles PCI ist EXPERIMENTAL
<item>Teles S0Box ist EXPERIMENTAL 
<item>Eicon.Diehl Diva U Interface nicht getestet 
<item>Einige Karten funktionieren nur als Module, nicht fest in den
Kernel eingebunden  
<item>Zur Unterscheidung zwischen HFC-PCI und PCI/Winbond dient der
 Output des Befehls <tt>cat /proc/pci</tt>. Bei HFC-PCI bekommst Du
 bei Deiner Karte eine Zeile mit dem Text "Master capable".
</itemize>

Die folgenden Karten werden definitiv nicht unterst&uuml;tzt, vermutlich
auch in Zukunft nicht, da die Hersteller die Spezifikationen f&uuml;r ihre
sehr propriet&auml;re Hardware und Protokolle nicht herausgegeben haben:
<itemize>
<item>Fritz!X
<item>Eumex 404
</itemize>

<sect1> hardware_activepassive: Was ist der Unterschied zwischen einer aktiven und einer passiven ISDN-Karte?
<label id="hardware_activepassive">
<p>
Eine aktive ISDN-Karte f&uuml;hrt die meisten ISDN-Verbindungsprotokolle
(Anwahl, Empfang von Anrufen, usw.) selbst aus, da sie eine Art
Minicomputer mit eigener Software (Firmware) besitzt. Bei einer passiven
ISDN-Karte muss der Computer, in dem die Karte sitzt, diese Funktionen
ausf&uuml;hren.

Prinzipiell werden beide Arten von ISDN4LINUX unterst&uuml;tzt. Da jedoch
aktive Karten ein nicht standardisiertes Interface haben, kann ein
Treiber nur dann erstellt werden, wenn der Hersteller die
Spezifikationen f&uuml;r das Interface herausgibt. Ebenfalls muss die
Firmware der Karte frei verf&uuml;gbar sein. Im Unterschied dazu enthalten
viele passive Karten den gleichen Chipset. Wenn einmal ein Treiber f&uuml;r
einen Chipset existiert werden daher viele passive Karten unterst&uuml;tzt.

Diese aktiven Karten werden z.Zt. von einem speziellen Treiber
unterst&uuml;tzt:
<itemize>
<item>AVM B1
<item>Eicon.Diehl
<item>IBM Active 2000 ISDN Karte
<item>ICN
<item>PCBIT-D
</itemize>

<sect1> hardware_recommend: Welche Karte wird von den Entwicklern empfohlen?
<label id="hardware_recommend">
<p>
Die Entwickler schlagen ELSA Karten vor. ELSA stellte den Entwicklern
ihre Spezifikationen zur Verf&uuml;gung und gab eine Menge Unterst&uuml;tzung,
was zu einem exzellenten Treiber f&uuml;hrte. Ausserdem sind ELSA Karten in
Deutschland zum Gebrauch an &ouml;ffentlichen Netzen zugelassen (siehe Frage
<ref id="country_certified" name="country_certified">).

F&uuml;r den Kauf einer aktiven Karte w&uuml;rden die Entwickler die PCI
Serverkarte von Eicon empfehlen. Sie kann auf beiden Kan&auml;len Faxe mit
Class 2 Befehlen verschicken/empfangen und enth&auml;lt ein V.90 Modem.  Die
AVM B1 arbeitet ebenfalls recht gut, kann jedoch nur auf einem Kanal
faxen.

Wenn der Faxbetrieb f&uuml;r Dich wichtig ist aber die Kosten f&uuml;r eine
aktive Karte zu hoch sind, k&ouml;nnte Dir eine Karte mit ISAR Chipset eher
dienlich sein. Es gibt z.B. die Sedlbauer Speedfax+, die man in Deutschland
u.a. bei Conrad bekommt.

<sect1> hardware_external: Unterst&uuml;tzt ISDN4LINUX externe Terminaladapter?
<label id="hardware_external">
<p>
Nein, aber das ist auch nicht n&ouml;tig. Terminaladapter benehmen sich
entweder wie ein Modem oder wie eine Netzwerkkarte. Linux unterst&uuml;tzt
bereits sowohl Modems als auch Netzwerkkarten ohne ISDN4LINUX - also
wird kein spezieller ISDN-Treiber ben&ouml;tigt (wodurch sich gew&ouml;hnlich
die Konfiguration sehr vereinfacht).

<sect1> hardware_cabeling: Wie belege ich die ISDN-Kabel?  
<label id="hardware_cabeling">
<p>
Alle Details dieser Art werden in der excellenten Kabel-FAQ behandelt,
die Du zumindest auf Deutsch auf <tt><url
url="http://www.in-berlin.de/User/scorpio/faqkabel.html"></tt> findest.

<sect1> hardware_irq: Warum sollte ich die IRQs 12 und 15 f&uuml;r meine ISDN-Karte vermeiden?
<label id="hardware_irq">
<p>
Auf vielen PCI-Boards wird der Interrupt 12 von der PS/2 Maus belegt
(auch wenn Du keine solche hast oder der IRQ nicht daf&uuml;r aktiviert
ist). Der IRQ k&ouml;nnte sogar belegt sein wenn Du keinen PS/2 Anschluss
hast. Interrupt 15 wird auch oft vom zweiten IDE Bus benutzt (auch wenn
Du ihn nicht benutzt oder der IRQ daf&uuml;r nicht festgelegt ist). Sogar
wenn man denkt, da&szlig; einige IRQs verf&uuml;gbar sind, k&ouml;nnen sie
dennoch irgendwie vom BIOS reserviert sein. Eine gute Wahl ist immer IRQ
5 und IRQ 9. Ohne Modem oder Maus kannst Du auch 4 und 3 versuchen, die
auch auf exotischen Boards funktionieren.

<sect1> hardware_s2m: Welche S2M Karten werden unterst&uuml;tzt?  
<label id="hardware_s2m">
<p>
Zumindest von diesen S2M Karten wurde berichtet, da&szlig; sie
funktionieren:
<itemize>
<item>Eicon.Diehl: S2M-ISA oder DIVA Server PRI/PCI (siehe <url
url="http://www.melware.de/">)
</itemize>

<sect1> hardware_pcmcia: Welche PCMCIA Karten werden unterst&uuml;tzt?  
<label id="hardware_pcmcia">
<p>
Zumindest von diesen PCMCIA Karten wurde berichtet, da&szlig; sie
funktionieren:
<itemize>
<item>ELSA Microlink (NICHT: ELSA Microlink/all)
<item>Sedlbauer
<item>AVM
<item>Teles PCMCIA (alte Hardware) - abzuraten, da Teles die Hardware
oft wechselt und die Entwickler nicht unterst&uuml;tzt (siehe Frage <ref
id="hardware_teles" name="hardware_teles">).
</itemize>

<sect1> hardware_smp: Kann ich ISDN4LINUX auf meinem Multiprozessor-Board betreiben?
<label id="hardware_smp">
<p>
Ja, das geht gut. Kompiliere jedoch auf jeden Fall den Kernel und alle
Module mit der Option <tt/SMP/. Wenn Du Probleme hast, wenn beide CPUs
auf denselben IRQ zugreifen wollen, versuche die Bootoption <tt/noapic/.

<sect1> hardware_alpha: L&auml;uft ISDN4LINUX auf einem DEC Alpha mit Linux?
<label id="hardware_alpha">
<p>
Ja, die meisten Karten sollten mit ISDN4LINUX auf einem DEC Alpha
laufen. Von vielen Karten ist ein einwandfreier Betrieb mit dem HiSax
Treiber bekannt. Auch die aktive ICN Karte soll funktionieren.

<sect1> hardware_sun: L&auml;uft ISDN4LINUX auf einer Sun-Workstation?
<label id="hardware_sun">
<p>
Im Prinzip arbeitet HiSax unter dem Entwicklerkernel 2.3.x mit dem
eingebauten ISDN-Adapter einer Sparc-Station-LX und einer
Sparc-Station-10. Der Code f&uuml;r Sun ist nur dort erh&auml;ltlich.  Beachte
bitte, da&szlig; der Code der neusten Entwicklungen nicht f&uuml;r
32-Bit-Maschinen - wie f&uuml;r alle Sun-4m Maschinen - kompiliert werden
kann.

Audio funktioniert, allerdings nicht gut; ISDN funktioniert, l&auml;sst
jedoch manchmal die Maschine abst&uuml;rzen. Der Autor von dbri.c hat die
Arbeit daran beendet. Er hat jedoch f&uuml;r jeden, der die noch vorhandenen
Fehler beseitigen will, eine Kopie des DBRI Datenblattes auf <url
url="http://www.freesoft.org/Linux/DBRI"> abgelegt (Stand 10. Januar
2000).

<sect1> hardware_ppc: Kann ich ISDN4LINUX auf einem PowerPC mit Linux betreiben?
<label id="hardware_ppc">
<p>
Ja, die meisten Karten sollten laufen. Zumindest die AVMFritz!PCI Karte
wird jedoch nicht funktionieren, da der PPC ein unterschiedliches
Endian-Format f&uuml;r die 32-Bit B-Kanal Daten benutzt.

Auf jeden Fall kannst Du auch einen Terminaladapter (= externes ISDN
"Modem") benutzen. Da Du dann kein ISDN4LINUX ben&ouml;tigst (siehe Frage
<ref id="hardware_external" name="hardware_external">), wird dies hier
nicht weiter behandelt.

<sect1> hardware_maxcards: Wieviele ISDN-Karten kann ich in meinen Computer einbauen?
<label id="hardware_maxcards">
<p>
Das h&auml;ngt von den verf&uuml;gbaren Slots, den freien Interrupts und
IO-Addressen in Deinem Computer und den M&ouml;glichkeiten der ISDN Karte
ab. Die meisten passiven Karten haben ihre Grenzen durch die
unterst&uuml;tzten IO-Addressen (z.B. sind bei der Teles 16.x nur 3
Addressen gesetzlich zugelassen: 0xf80, 0xd80 und 0xe80) und die Gesamtzahl an Interrupts (jede Karte ben&ouml;tigt einen).
 <tt>Anm.d.&Uuml;bers.: Da HiSax und auch PCI laut Definition mit IRQ-Sharing zurecht kommen, ist diese Limitierung (zumindest f&uuml;r PCI-Karten) eigentlich nicht mehr gegeben.</tt>

Falls mehr Karten ben&ouml;tigt werden k&ouml;nnte die ICN Karte Deine Wahl
sein. Sie belegt keine Interrupts, bietet eine flexiblere Einstellung
des IO-Ports, und der Treiber plaziert die Shared Memory Bereiche aller
ICN Karten an derselben Addresse. Der Kartenspeicher wird nur soweit
gemapped wie er ben&ouml;tigt wird. Daher kann man soviele Karten benutzen
wie Slots verf&uuml;gbar sind.

Wenn Du wirklich eine Menge Anschl&uuml;sse ben&ouml;tigst w&auml;re
schlie&szlig;lich noch eine S2M Karte von Interesse, siehe Frage <ref
id="hardware_s2m" name="hardware_s2m">.

Bei Frage <ref id="config_manycards" name="config_manycards"> bekommst
Du Antworten zu den Eigenheiten der Konfiguration von mehr als einer
Karte.

<sect1> hardware_hfc: Was ist Besonderes an einer Karte mit HFC Chip?  
<label id="hardware_hfc">
<p>
Karten mit einem HFC-PCI Chip erlauben einige Spezialit&auml;ten, die mit
anderen ISDN Karten nicht m&ouml;glich sind. So kannst Du z.B. die Karte im
NT-Modus betreiben (dabei muss die ISDN-Verbindung gekreuzt und die
Software ausgetauscht werden) - das bedeutet, Deine Karte simuliert
einen NTBA gegen&uuml;ber einer anderen ISDN Karte. Ebenso kannst Du einen
B-Kanal aufgeben und daf&uuml;r das komplette D-Kanal-Protokoll auslesen,
eine tolle Sache f&uuml;r isdnlog. Das letztere kann man auch mit einer
umgekehrt angeschlossenen Karte erreichen (siehe Frage <ref
id="isdnlog_reversedcard" name="isdnlog_reversedcard">), mit HFC Chips
funktioniert es aber viel verl&auml;sslicher und sauberer. Du aktivierst
diesen speziellen Echo Modus mit:
<code>
hisaxctrl &lt;treiber_name&gt; 10 1
hisaxctrl &lt;treiber_name&gt; 12 1
</code>
Du schaltest das wieder ab mit:
<code>
hisaxctrl &lt;treiber_name&gt; 12 0
hisaxctrl &lt;treiber_name&gt; 10 2
</code>
Der Parameter 10 bestimmt die Anzahl der verf&uuml;gbaren Kan&auml;le, Parameter
12 wechselt den Echo Modus.

<sect1> hardware_elsa: Was sollte ich &uuml;ber ISDN Karten von ELSA wissen?
<label id="hardware_elsa">
<p>
Im allgemeinen unterst&uuml;tzt ELSA die ISDN4LINUX Entwickler sehr gut mit
Dokumentationen &uuml;ber den Zugriff auf ihre Karten. Daher werden diese
Karten sehr gut unterst&uuml;tzt und sind zum Gebrauch mit ISDN4LINUX sehr
empfehlenswert. Zus&auml;tzlich ist die ELSA Quickstep 1000 PCI (neuer Name
Microlink PCI) das einzige Kartenmodell mit offizieller Zulassung in
Deutschland und daher auch in der EU (siehe Frage <ref
id="country_certified" name="country_certified"> zu mehr Informationen
&uuml;ber die Zulassung).

Es gibt jedoch eine Eigenheit beim Gebrauch der ELSA Quickstep
1000pro-PCI und einigen nicht PCI-konformen Mainboards. Diese setzen die
IO-Addresse auf unzul&auml;ssige Werte (sie liegen im h&ouml;heren
Speicherbereich und m&uuml;ssen an runden 0x100-Adressen liegen). Das kann
eine Fehlermeldung ("You may have the wrong PCI bios") bewirken und das
System anhalten. Die beste Abhilfe ist ein Bios Upgrade. Wenn das nicht
m&ouml;glich ist, besorge Dir das Modul <tt/pcitest/ von Karsten Keil
<tt><htmlurl url="mailto:keil@isdn4linux.de"
name="keil@isdn4linux.de"></tt>. Es wird die Karte korrekt einrichten
und sich dann mit einem gewollten Fehler schlie&szlig;en (und dadurch
keinen Speicher belegen).

Die Verbindung von ELSA's RJ11 Stecker zu einem RJ45 Kabel sieht so aus:
<verb>
          RJ11   -   RJ45
Pins      1234       12345678
Kabel     abcd       --abcd--
</verb>

<sect1> hardware_sedlbauer: Was ist bei der Sedlbauer-Karte zu beachten?
<label id="hardware_sedlbauer">
<p>
Die semiaktive Karte besitzt einen ISAR Chipsatz, der das Senden und Empfangen von Faxen erm&ouml;glicht. Das Besondere an der Karte ist, da&szlig; sie mit HiSax benutzt wird, der normalerweise nur mit passiven Karten arbeitet. Du musst jedoch, wie bei allen aktiven Karten, die Firmware laden (in diesem Fall nach dem HiSax). Die Datei ISAR.BIN mit der Firmware ist Teil der isdn4k-utils.

Hinweis: Kompressionsverfahren (V42bis, MNP) sind nicht in die Firmware implementiert und werden daher nicht unterst&uuml;tzt. Der ideale Initstring zur Modem-Einwahl ist <tt>AT&percnt;C0&bsol;N0</tt>.

<sect1> hardware_teles: Was sollte ich vor dem Kauf einer ISDN Karte von Teles wissen?
<label id="hardware_teles">
<p>
Zuerst die neuesten Nachrichten: Die Teles Karte 16.3c hat einen
defekten FIFO und ben&ouml;tigt daher f&uuml;r den Gebrauch der ttyI* Devices
die Eingabe von <tt/AT&amp;B1024/ (wenn die andere Seite noch Pakete mit
mehr als 1024 Bytes sendet wird die Karte nicht funktionieren - leider
nutzen viele CAPIs 2048 Bytes als Voreinstellung). Die neueste Teles PCI
Karte ben&ouml;tigt den <tt/netjet/ Treiber, da der Teles Treiber NICHT
funktioniert (diese Karte wird bei <tt>cat /proc/pci</tt> als 'TigerJet
Tiger300' angezeigt).

Nun einige Bemerkungen &uuml;ber Teles im allgemeinen (diese sind die
pers&ouml;nliche Ansicht des Autors dieser FAQ und niemand ausser mir ist
daf&uuml;r verantwortlich) (<tt>Anm.d.&Uuml;bers.: Diese Ansichten teile ich
ebenfalls voll und ganz!</tt>):

Die Gesch&auml;ftspraktiken von Teles sind sehr Kunden- und Entwickler-
unfreundlich verglichen mit anderen Firmen. Selbstverst&auml;ndlich k&uuml;mmern
sich die Entwickler vordringlich um Karten, f&uuml;r die Support geleistet
wird und deren Spezifikationen frei verf&uuml;gbar sind.

Bisher hat sich Teles gegen&uuml;ber den Entwicklern von I4L sehr
unfreundlich verhalten. Es wurde von Teles weder irgenwelche
Unterst&uuml;tzung geleistet noch wurden Informationen &uuml;ber den Zugriff auf
ihre Karten ver&ouml;ffentlicht. Die Entwickler haben von Anfang an eine
Menge an privatem Engagement investiert um diese Karte zum Laufen zu
bringen ohne irgendeine Unterst&uuml;tzung zu bekommen. Der Treiber ist also
ein Resultat von rein privater Arbeit. Trotzdem br&uuml;stet sich Teles auf
ihrer Website damit, da&szlig; ihre Karten unter Linux laufen ohne die
wirklich Verantwortlichen zu nennen.

Noch nicht einmal Firmen, die Teles Karten kaufen und unter ihrem
eigenen Namen weiter verkaufen, ist es gelungen, den Support zu
verbessern. Das f&uuml;hrte dazu, da&szlig; sich eine re-branding Firma (!)
selbst um eine Genehmigung f&uuml;r den Gebrauch von I4L mit einer Teles
Karte in Deutschland bem&uuml;hen musste.

Aus Verbrauchersicht sollte man sich die Preise f&uuml;r die Hotline ansehen
bevor man Hardware von Teles kauft! Der Autor der FAQ (<tt>und der
&Uuml;bersetzer</tt>) weigert sich, eine Hotline zu benutzen, die 216,- DM
pro Stunde kostet. Berichte &uuml;ber die Qualit&auml;t und die Wartezeiten
waren nicht immer positiv.

Diese Firma gibt noch nicht einmal Treiber f&uuml;r andere Betriebssysteme
wie z.B. Windows kostenlos heraus. Zum Download eines Treibers musst Du
in Deutschland eine sehr teure Nummer (0190) anw&auml;hlen, wo Du etwa DM
1,20 pro Minute zahlst. Nicht, da&szlig; es &uuml;berhaupt ratsam w&auml;re,
Windows zu benutzen. Ich wollte es nur erw&auml;hnen...

Warnung: Teles hat ihre Karten sehr oft ohne Bekanntgabe ge&auml;ndert ohne
den Modellnamen zu &auml;ndern. Nach dem Kauf einer Teles Karte kannst Du
eventuell feststellen, da&szlig; Deine brandneue Karte nicht von I4L
unterst&uuml;tzt wird! (Wie es zur Zeit der Fall ist...)

Die Entwickler werden versuchen, neue Teles Karten zu unterst&uuml;tzen
sobald Informationen &uuml;ber den Zugriff auf die Karte verf&uuml;gbar sind und
keine anderen Priorit&auml;ten vorliegen. Nat&uuml;rlich kannst Du jederzeit
einen Patch einsenden.

<sect1> hardware_avmb1: Was ist Besonderes an der AVM B1 Karte?  
<label id="hardware_avmb1">
<p>
Diese Karte beinhaltet viele spezielle Eigenschaften in ihrer Firmware
und wird von ihrem Linuxtreiber sehr gut unterst&uuml;tzt. Sie ist zur Zeit
eine der wenigen ISDN Karten mit denen Du unter ISDN4LINUX Faxe
versenden kannst. Ebenso ist es die einzige Karte mit einem CAPI 2.0
Interface. Die neuesten Treiber bekommst Du auf <url
url="ftp://calle.in-berlin.de/pub/linux/avmb1"> oder <url
url="ftp://ftp.avm.de/cardware/b1/linux/">.  Die Firmware liegt auf:
<url url="ftp://ftp.avm.de/cardware/b1/linux/firmware">.  Die neueste
Firmware erlaubt auch das Verfolgen des D-Kanals mit isdnlog ohne den
Einsatz einer "umgekehrten" Karte.

Es gibt eine Mailingliste f&uuml;r Probleme mit der AVM B1 auf:
linux-avmb1@calle.in-berlin.de (sende eine Mail an
majordomo@calle.in-berlin.de mit <tt>subscribe linux-avmb1 &lt;Deine
Email Addresse&gt;</tt> im Text).

<sect1> hardware_icn: Was ist Besonderes an der ICN Karte?  
<label id="hardware_icn">
<p>
Dies war die erste von ISDN4LINUX unterst&uuml;tzte aktive Karte. Der
Hersteller (<tt><url url="http://www.think.de/"></tt>) hat die I4L
Entwickler immer unterst&uuml;tzt. Die ICN ben&ouml;tigt keine Interrupts
(polling). Daher kann man den PC mit vielen von ihnen ohne
Interrupt-Konflikte ausr&uuml;sten. Die neueste Firmware sollte auf <tt><url
url="ftp://ftp.think.de/pub/isdn4linux/firmware/"></tt> zur Verf&uuml;gung
stehen. Leider wird die ICN nicht mehr hergestellt.


<!-- Trouble Hardware
-->

<sect1> hardware_crossedcable1: Wenn I4L einen B-Kanal benutzt ist der andere blockiert (eingehende wie ausgehende Signale)...
<label id="hardware_crossedcable1">
<p>
Dieses Verhalten ist typisch f&uuml;r ein Kabel mit falscher Verdrahtung des
a/b-Anschlusses. Einige NTs von Quante hatten eine falsche
Beschriftung. Sie verursachten genau das beschriebene Verhalten, wenn
eine PBX an der Buchse und eine ISDN Karte an dem Stecker des NT
angeschlossen waren. Sowie ein Ger&auml;t den Bus aktiviert, kann das andere
Ger&auml;t keine Verbindung mehr aufbauen.

<sect1> hardware_crossedcable2: Wie kann ich feststellen, ob ein a/b-Kabel gekreuzt wurde?
<label id="hardware_crossedcable2">
<p>
Diese Antwort nimmt an, da&szlig; Du &uuml;ber einen installierten internen
Bus direkt an den NT angeschlossen bist (ohne ein RJ45 Kabel).

Die einfachste Art zu testen ist die mit einem kleinen Kabel-Tester (der
Autor erwarb einen von Conrad Electronics in Deutschland f&uuml;r 29,- DM -
folge einfach den leichten Anweisungen).

Anderenfalls hast Du etwas mehr Arbeit. Vertausche Leitung a1 und
b1. Wenn das nicht funktioniert, mache das wieder r&uuml;ckg&auml;ngig und
vertausche Leitung a2 und b2. Wenn das immer noch nicht l&auml;uft, versuche
beide Leitungen zu vertauschen. Solange {a|b}1 und {a|b}2 unter sich
bleiben kann nichts passieren. Um sicher zu gehen kannst Du vor dem
Einstecken pr&uuml;fen, da&szlig; zwischen Pins 4 und 5 und zwischen Pins 2
und 6 des Steckers keine Spannung anliegt.  Zwischen 3 und 4 und
zwischen 6 und 5 sollten 40 V, 6 und 3 positiv gemessen werden.

Mit dem Westernstecker funktioniert das &auml;hnlich. 4 Leitungen werden
benutzt:
<verb>
| | | | 
| | | |
1 2 3 4
</verb>
Du kannst 1 mit 4 oder 2 mit 3 oder beide Paare vertauschen. Vertausche
nie die &auml;usseren mit den inneren Leitungen - das w&uuml;rde die RX und TX
Leitungen kreuzen und nichts mehr w&uuml;rde funktionieren.

In der Kabel FAQ findest Du mehr Details dar&uuml;ber, welche Leitung wie
anzuschlie&szlig;en ist.

Wenn beide Ger&auml;te &uuml;ber RJ45 angeschlossen sind, ist eines der beiden
Kabel verdreht. Das passiert normalerweise wenn einer der RJ45 Stecker
verkehrt herum angeschlossen wurde (a1/b1 sind innen, a2/b2 sind aussen,
so wird die Anordnung der Sender-/Empf&auml;ngerpaare erhalten). Jetzt
brauchst Du nur einen neuen Stecker und nat&uuml;rlich Klammern f&uuml;r den
RJ45: alter Stecker ab, neuer Stecker (in der richtigen Anordnung) dran.

<sect1> hardware_pbx: i4l ist am internen Bus einer PBX angeschlossen. Probleme?
<label id="hardware_pbx">
<p>
Viele PBX benutzen nicht standardisierte ISDN-Protokolle auf ihrem
internen Bus. Das kann I4L dazu bringen, eine Warnung "Unexpected
discriminator 0xZZ" (wobei ZZ eine hexadezimale Zahl ist) auszugeben,
wenn es auf unerwartete Frames trifft (einige alte Versionen st&uuml;rzen
sogar ab). Das kann Deine Logdatei um bis zu 1 MB in 3 Tagen
vergr&ouml;&szlig;ern.  Die PBX <tt/Ackermann Euracom 181/ (Discriminator
0xaa) und <tt/Ascom/ (Discriminator 0x44/0x47) scheinen daf&uuml;r bekannt
zu sein.  Du kannst die Warnung vermeiden indem Du in der Funktion
<tt>processctrl()</tt> in <tt>processor.c</tt> den switch/case Code
anpasst.  Achte darauf, da&szlig; die PBX h&auml;ngen bleiben kann, wenn die
ISDN Karte nicht auf ihre Requests antwortet - &uuml;bergehe die PBX in
diesem Fall.

Es kann auch sein, da&szlig; eine PBX per default das 1TR6 Protokoll
anstatt des EuroISDN auf dem internen Bus benutzt. Du musst I4L (oder
die PBX) entsprechend konfigurieren. Am besten versuchst Du beide auf
das gleiche Protokoll einzustellen.

Auch die MSN kann anders aussehen als Du erwartest. Versuche es mit
verschiedenen Versionen, keine Ziffer (dann nimm <tt/0/, wird in dem
Fall von I4L erwartet), eine Ziffer oder zwei Ziffern oder die gesamte
MSN. Am besten rufst Du ein Ger&auml;t (z.B. das ISDN Telefon) auf dem
internen Bus an und schaust nach, was I4L im Logfile schreibt.

Zuletzt solltest Du daran denken, da&szlig; Du Deine PBX so einstellen
musst, da&szlig; sie ankommende Gespr&auml;che auf den internen ISDN Bus
'routen' muss.

Bei einer Point-to-Point Konfiguration ('Anlagenanschluss') kannst Du
Deine Karte nicht - parallel zur PBX - direkt an den S0 Bus
anschlie&szlig;en (dann geht gar nichts mehr). Du musst sie mit dem
internen ISDN Bus verbinden. Deine MSN ist dann normalerweise die
Durchwahl am Ende der Telefonnummer.

<sect1> hardware_telestrouble: Die PNP-Tools funktionieren nicht mit meiner Teles 16.3 PNP Karte!
<label id="hardware_telestrouble">
<p>
Es ist m&ouml;glicherweise gar keine Plug 'n' Play Karte - obwohl Teles
jetzt auf alle ihre Karten und Kartons PNP druckt. Der Unterschied ist
leicht zu erkennen: eine wahre Teles PnP Karte hat die (winzigen)
DIP-Schalter zur Einstellung der IO-Addresse nicht mehr.

<sect1> hardware_elsacabletrouble: Auf meiner ELSA Karte blinkt oft die LED die den Verlust des TE anzeigt Meine Verbindungen werden auch oft unterbrochen...
<label id="hardware_elsacabletrouble">
<p>
Diese blinkenden LEDS werden oft durch ein schlechtes Kabel oder einen
zu langen oder nicht terminierten Bus verursacht.

<sect1> hardware_elsairq:Meine ELSA Quickstep1000 ISA Karte l&ouml;st mit dem HiSax Treiber sehr viele Interrupts aus. Ist das normal oder ein Problem des HiSax Treibers?
<label id="hardware_elsairq">
<p>
Es ist normal. Die ELSA Quickstep 1000 ISA Karte hat einen Hardware
Timer, der nicht durch Software deaktiviert werden kann. Wenn Du ihn
loswerden willst musst Du die Hardware ver&auml;ndern. Frag bei Karsten Keil
nach: <tt><htmlurl url="mailto:keil@isdn4linux.de"
name="keil@isdn4linux.de"></tt>



<!-- Configuration/Troubleshooting
-->

<sect> config: Allgemeine Informationen zur Konfiguration  
<label id="config">

<sect1> config_msn: Wie sollte ich meine MSNs in ISDN4LINUX einstellen?
<label id="config_msn">
<p>
Siehe Abschnitt <ref id="msn" name="msn">.

<sect1> config_hardware: Wie sollte ich meine Hardware einrichten? Gibt es etwas Spezielles, das ich &uuml;ber meine ISDN Karte wissen sollte?  
<label id="config_hardware">
<p>
Schau Dir den Abschnitt <ref id="hardware" name="hardware"> an.

<sect1> config_dialout: Wie konfiguriere ich das Hinausw&auml;hlen?  
<label id="config_dialout">
<p>
Siehe Abschnitt <ref id="dialout" name="dialout">.

<sect1> config_dialin: Wie konfiguriere ich das Einw&auml;hlen?  
<label id="config_dialin">
<p>
Siehe Abschitt <ref id="dialin" name="dialin">.

<sect1> config_suse: Ich kann meine Karte in YaST nicht ausw&auml;hlen?  
<label id="config_suse">
<p>
Wenn Du bei Deiner SuSE Distribution Deine Karte in YaST nicht finden
kannst, stelle die <tt/generic/ Karte ein und gib die exakten Parameter
in der daf&uuml;r bestimmten Zeile ein, z.B.: <tt>type=27 protocol=2</tt>
f&uuml;r die Fritz!PCI und Euro ISDN. Besorge Dir einen neueren Kernel wenn
der gew&uuml;nschte Typ noch nicht unterst&uuml;tzt wird.

<sect1> config_pnp: Wie konfiguriere ich eine PNP (Plug and Play) Karte?
<label id="config_pnp">
<p>
Bei PCI Karten funktioniert Plug and Play automatisch, sie ben&ouml;tigen
keine manuelle Konfiguration, wenn der korrekte Kartentyp angegeben
wird. ISA PNP Karten ben&ouml;tigen etwas manuelle Konfiguration:
<enum>
<item>Setze mit 'make menuconfig' (oder 'make config')
die folgenden Kerneloptionen:
<itemize>
<item>ISDN = 'M' (als Modul - sonst funktioniert PNP nicht!)
<item>HiSax = 'M' (als Modul - sonst funktioniert PNP nicht!)
<item>16.3/PNP support
<item>EURO support
</itemize>
<item>Kompiliere und installiere den Kernel und die Module,
depmod. (Reboot!)
<item>Lies die Konfiguration der PNP Karte aus mit:
<code>pnpdump -c &gt; /etc/isapnp.conf</code>
<item>Pr&uuml;fe ob pnpdump die Konfigurationsdatei
<tt>/etc/isapnp.conf</tt> richtig vorbereitet hat.
<itemize>
<item>INT0 - der Interrupt der Karte (Default f&uuml;r Teles 16.3 PNP: 10).
Die Interrupts 3 und 4 sollten nicht verwendet werden, da sie f&uuml;r die
seriellen Ports reserviert sind (was leider der serielle Treiber
vergessen haben kann). Gleiches gilt f&uuml;r die Interrupts 12 und 15, die
durch PS/2-Maus und zweiten IDE-Controller bzw. USB-Anschlu&szlig;
belegt werden.
<item>IO0, IO1 - die IO Ports der Karte (Default f&uuml;r Teles 16.3 PNP:
0x580 and 0x180) (Achtung: diese Werte m&uuml;ssen passend f&uuml;r 64-bit sein
(enden auf 0, 4, 8, or c)! Fr&uuml;he Versionen der PNP Karten k&ouml;nnen
falsche Werte vorschlagen!)
<item>Entferne das Kommentarzeichen (#) vor ACT Y!
</itemize>
<item>Aktiviere die Konfiguration mit:
<code>isapnp /etc/isapnp.conf</code> 
(muss bei jedem Boot gestartet
werden)
<item>Nun kann das HiSax Modul f&uuml;r Euro-ISDN gestartet werden:
<code>modprobe hisax hisax=4,2,INT,IO0,IO1</code>
(Ersetze INT, IO0 und IO1 mit den Werten in Deiner isapnp.conf.)
</enum>

<sect1> config_kerneld: Warum sollte ich nicht <em>kerneld</em> benutzen, um die ISDN Module bei Bedarf in den Kernel zu laden?  
<label id="config_kerneld">
<p>
<em>kerneld</em> arbeitet nicht allzu gut mit den ISDN Modulen, da die
ISDN Module ihren Status nicht speichern k&ouml;nnen und wichtige Meldungen
auf dem D-Kanal verpassen k&ouml;nnten. Neuere Versionen von I4L lassen sich
nicht vom kerneld entladen. Dennoch solltest Du den kerneld mit keiner
Version von I4L benutzen.

<sect1> config_runlevel: Wie kann ich Linux manchmal mit und manchmal ohne ISDN booten?  
<label id="config_runlevel">
<p>
Du kannst dazu zwei verschiedene Runlevel in <tt>/etc/inittab</tt>
definieren (unter SysV-Init). Ein Runlevel enth&auml;lt die ISDN Prozesse,
der andere nicht.

<sect1> config_manycards: Wie richte ich mehr als 1 ISDN-Karte ein?  
<label id="config_manycards">
<p>
Bei der Konfiguration von mehreren Karten gibt es einige Spezialit&auml;ten
zu beachten:
<itemize>
<item>Du musst f&uuml;r jeden installierten Kartentyp den passenden Treiber
und dabei jeden dieser Treiber mindestens einmal mit den korrekten
Einstellungen starten. 
<item>F&uuml;r den Betrieb von mehreren Karten mit dem gleichen Treiber
(z.B. sollte HiSax f&uuml;r ELSA und ASUS Karten funktionieren) m&uuml;ssen die
Konfigurationswerte f&uuml;r alle Karten an den Treiber &uuml;bergeben
werden. Beachte bitte, dass Du f&uuml;r mehr als 2 Karten Module benutzen
musst um die Parameter zu &uuml;bergeben.
<item>Gleichzeitige Einwahl mehrerer Personen: N&auml;heres bei der Frage
<ref id="dialin_manyparallel" name="dialin_manyparallel">.
<item>W&auml;hlen &uuml;ber mehrere Karten: N&auml;heres bei der Frage <ref
id="dialout_manycards" name="dialout_manycards">.
</itemize>

<sect1> config_manychannels: Wie kann ich die maximale Anzahl der Kan&auml;le in I4L erh&ouml;hen?  
<label id="config_manychannels">
<p>
Erh&ouml;he den Wert ISDN_MAX_CHANNELS in
<tt>/usr/src/linux/include/linux/isdn.h</tt> und &uuml;bersetze den
ISDN-Teil neu. Vergiss nicht, die zus&auml;tzlichen Ger&auml;te mit makedev.sh
(in isdn4k-utils) oder "von Hand" anzulegen.

<sect1> config_gsmv110: Wie verbinde ich meinen PalmPilot via GSM per V.110 mit meinem  Computer?  
<label id="config_gsmv110">
<p>
Richte asyncPPP mit dem normalen pppd f&uuml;r ein ttyI* Device ein. Neben
dem Setzen der MSN musst Du das ttyI* Device mit dem Befehl <tt/ATS19=0/
f&uuml;r V.110 initialisieren. Die Baudrate setzt Du mit <tt/AT&amp;R9600/
auf 9600; pppd wird mit den Optionen <tt/noccp/ und <tt/require-pap/
aufgerufen. Ein Mini-Howto findest Du auf: <url
url="http://www.oltom.com/Linux/Docs/GSM%20over%20V.110%20Mini-HOWTO.txt">.


<sect1> config_h323: Wie konfiguriere ich ISDN4LINUX als Voice-over-IP-Gateway f&uuml;r H.323 Clients?  
<label id="config_h323">
<p>
Du musst das Linux H.323 - ISDN Gateway installieren. Du findest es auf <url url="http://www.telos.de/linux/H323/">.
Beachte bitte, da&szlig; nicht jedes ISDN-Ger&auml;t Voll-Duplex-Audio unterst&uuml;tzt. Vielleicht leistet Deine Hardware nur uni-direktionale Sprach&uuml;bertragung. Leider besitzt der Autor keine aktuelle Liste der ISDN-Karten mit Voll-Duplex-Unterst&uuml;tzung. Wende Dich deswegen an die Mailingliste.

<sect1> config_point2point: Wie richte ich eine Point-to-Point Verbindung ein?
<label id="config_point2point">
<p>
Der wichtigste Punkt: die Point-to-Point Verbindung funktioniert nur bei
dem einzelnen Device, das damit verbunden ist. Daher sollte auch nichts
anderes als Deine ISDN-Karte damit verbunden sein. So versetzt Du HiSax
in den Point-to-Point Mode:
<code>
hisaxctrl &lt;treiber_id&gt; 7 1
</code>

<sect1> config_links: Welche hilfreichen Links gibt es zu ISDN4LINUX?  
<label id="config_links">
<p>
Hier folgen zur Zeit verf&uuml;gbare hilfreiche Links zur Konfiguration von
ISDN4LINUX: 
<itemize>
<item>Englisch: <url url="http://www.wurtel.demon.nl/i4l-howto-uk.html">
<item>Deutsch: <url url="http://www.franken.de/users/klaus/">
<item>Franz&ouml;sisch: <url
url="http://www.perso.wanadoo.fr/philippe.latu/">
<item>Suse Support Datenbank: <url
url="http://sdb.suse.de/sdb/de/html/index.html">; da gibt es auch ein
ISDN HOWTO (isdn.html) sowie eine Kurzanleitung zur Installation von
ISDN (isdnquick.html).
<item>Tips zur Konfiguration unter SuSE (und zum Offline-Lesen):
<url url="http://www.schlenn.de/linux.html">
<item>Tips zur Konfiguration unter Red Hat Linux:
<url url="http://www.webideal.de/rh-isdn/">
<item>Scripts und Installationstips von verschiedenen Leuten: <tt><url
url="http://www.rosat.mpe-garching.mpg.de/&tilde;web/ISDN.html"></tt> 
<item>Dokumentation zu ABC Erweiterungen:
<tt><url url="http://i4l.mediatronix.de/"></tt>
<item>Michael Hipp's Seite (allgemeine Informationen):
<tt><url
url="http://www-ti.informatik.uni-tuebingen.de/~hippm/isdn.html"></tt>
<item>Tips zur Geb&uuml;hren&uuml;bermittling:
<tt><url url="http://www.provi.de/&tilde;gvz/chargeint.html"></tt>
<item>Homepage von kISDN (l&auml;uft nur mit Qt/KDE):
<tt><url url="http://www.millenniumx.de/kisdn.html"></tt>
</itemize>


<!-- Troubleshooting
-->

<sect> trouble: Fehlerbeseitigung  
<label id="trouble">

<sect1> trouble_22memory: Ich kann ISDN auf meiner Maschine mit dem Kernel 2.2.x nicht starten. Ich bekomme die Fehlermeldungen "init_module: Device or resource busy" und "isdn: Could not allocate device-struct.".  
<label id="trouble_22memory">
<p>
Das ist ein Speicherproblem. Es bedeutet, da&szlig; Du zuwenig
<bf>unfragmentierten</bf> Speicher hast. W&auml;hrend 2.0.x Kernel mit
kleiner Speicherausstattung/langsamer Hardware funktionieren m&ouml;gen (das
Anrufbeantworter-System des Autors ist ein 386er und l&auml;uft mit 4MB
RAM), kannst Du auch mit 32M RAM mit dem Problem der Speicher-Fragmentierung
konfrontiert werden. Das Problem wurde seit der Kernelversion
2.2.14 verringert indem ISDN4LINUX's Speicherbelegung auf den Gebrauch
von vmalloc umgestellt wurde.

Du kannst versuchen, den Speicherbedarf zu senken (siehe <ref
id="trouble_littlememory" name="trouble_littlememory">), ISDN4LINUX in
den Kernel fest einzubinden oder ein umfangreiches Programm zu starten
und gleich wieder zu beenden um diese Probleme zu mindern.

<sect1> trouble_littlememory: Wie kann ich den Speicherbedarf von ISDN4LINUX senken?  
<label id="trouble_littlememory">
<p>
Versuche die folgenden Ans&auml;tze:
<itemize>
<item> &Auml;ndere in <tt>/usr/src/linux/include/linux/isdn.h</tt> die Zeile
<code>
#ifdef CONFIG_COBALT_MICRO_SERVER
</code>
in:
<code>
#if 1
</code>
und &uuml;bersetze den Kernel neu.
<item> Verringere die Werte von ISDN_MAX_DRIVERS und ISDN_MAX_CHANNELS
in <tt>include/linux/isdn.h</tt> und &uuml;bersetze den Kernel neu.
</itemize>

<sect1> trouble_strategy: Mein ISDN4LINUX funktioniert nicht! Wie l&ouml;se ich das Problem am besten?  
<label id="trouble_strategy">
<p>
Empfohlen werden die folgenden Schritte:
<enum>

<item>Pr&uuml;fe, ob beim Bootvorgang alles funktioniert. Gibt es
ungew&ouml;hnliche Fehlermeldungen in /var/log/messages? Laufen alle
Programme, die beim Booten gestartet werden sollten (zu &uuml;berpr&uuml;fen mit
ps oder fuser /dev/xxx)? HiSax startet nicht, wenn etwas nicht in
Ordnung ist. Der alte Telestreiber scheint jedoch zu starten, auch wenn
er nicht funktioniert. Schau Dir die Fragen unter "Fehlerbehebung bei
Teles" an.
<item>Stelle sicher, da&szlig; Du den ISDN-Treiber als Modul eingebunden oder fest im Kernel integriert hast - niemals beides zusammen!
<item>Versuche, von einem Telefon aus anzurufen. Die Nummer sollte in
/var/log/messages angezeigt werden. Ansonsten wurde vielleicht der
Treiber falsch gestartet?!
<item>Als n&auml;chsten Schritt versuchen wir, ob das Telefon oder Faxger&auml;t
ll&auml;utet, wenn wir uns selbst mit einem ttyI Device &uuml;ber Minicom
anrufen. Zuerst m&uuml;ssen wir die Diensterkennung mit <tt>ATS18=1</tt> auf
Audio setzen. Nun sollte das Telefon bei der Eingabe von
<tt>ATDxxxxxx</tt> klingeln, wobei xxxxxx Deine eigene MSN ist.
<item>Jetzt versuchen wir eine Daten&uuml;bertragung mit ISDN. &Ouml;ffne 2
verschiedene Konsolenfenster als root und starte in beiden Fenstern
'minicom -s'... im ersten Fenster setze 'Serial Port Setup Serial
Device' auf <tt>/dev/ttyI0</tt> und im zweiten auf
<tt>/dev/ttyI1</tt>. Anschlie&szlig;end w&auml;hle 'Exit' und starte die
Modem-Emulation mit 'ATZ' und 'AT&amp;Exxxxxx' (wobei
xxxxxx Deine eigene MSN ohne Vorwahl ist). Fertig. Im ersten Fenster
w&auml;hlst Du Deine eigene Nummer mit ATDxxxxxx. Im zweiten Fenster
solltest Du nun 'CALLER NUMBER: xxxxxxx' und 'RING' sehen. Nimm den
Ruf im zweiten Fenster mit 'ATA' an und es erscheint die Meldung
'CONNECT 64000/X.75' in beiden Fenstern. Du kannst jetzt Zeichen
von einem zum anderen Fenster senden (schalte LOCAL ECHO ein um die
Zeichen im sendenden Fenster zu sehen).
<item>Nun versuche, eine bekannte ISDN Mailbox anzurufen. Wenn Du keine
solche kennst, versuche es bei Gernot (siehe <ref
id="trouble_guestaccess" name="Gibt es Sites, die einen Gastzugang
anbieten, wo ich meine ISDN4LINUX-Einstellungen testen kann?">). Bei
Problemen mit der Modem-Emulation siehe 'Fehlerbehebung bei
Modem-Emulation'
<item>Als sechsten Schritt versuche, das Netzwerk-Interface oder ipppd
einzurichten. Erfahrungsgem&auml;&szlig; bereitet das den Anf&auml;ngern (und
nicht nur den Anf&auml;ngern!) die meisten Probleme.
Wenn Du mit asyncPPP zufrieden bist (&uuml;ber asyncPPP siehe die Frage
'pppd, ipppd, syncPPP, asyncPPP - was ist das? Was sollte ich
benutzen?'), kannst Du, um die Sache zu vereinfachen, den normalen pppd
mit Modem-Emulation (z.B. /dev/ttyI*) benutzen. 
<item>Versichere Dich, da&szlig; die Anmeldeprozedur richtig
konfiguriert wurde (siehe die Fragen in dem Bereich <ref id="pap"
name="pap">).
</enum>      
Anderenfalls ist ein Beispielscript aus dem HowTo sehr zu empfehlen
(siehe Frage 'Wo finde ich Scripts und andere Informationen zum
Einrichten von I4L?'). Zum Testen kannst Du Deinen eigenen Provider
benutzen oder einen der Gast-Zug&auml;nge (siehe <ref
id="trouble_guestaccess" name="Gibt es Sites, die einen Gastzugang
anbieten, wo ich meine ISDN4LINUX-Einstellungen testen kann?">). Die
letzteren bieten den Vorteil, da&szlig; sie die Log-Dateien sehen und
auch eine funktionierende Konfiguration feststellen k&ouml;nnen. Wenn
z.B. eine Verbindung &uuml;ber ipppd nicht zustande kommt, kannst Du Dich
dort via Modem oder Modem-Emulation einloggen und herausfinden, woran es
lag. Nicht alle Provider sind so kooperativ.... <tt>:-)</tt>

<sect1> trouble_boot: Wie stelle ich fest, ob meine ISDN-Karte korrekt erkannt wurde?  
<label id="trouble_boot">
<p>
<enum>
<item>Suche nach Fehlermeldungen in den Boot-Meldungen, die Du jederzeit
mit dem Befehl <tt/dmesg/ einsehen kannst.

<item>Bei dem HiSax Treiber: W&auml;hrend des Bootens sollte eine Meldung
<tt>kernel: HSCX version A:5 B:5</tt> und <tt>kernel: channels 2</tt>
erscheinen. <tt>A:4 B:4</tt> ist ebenfalls in Ordnung. Andere Werte
(insbesondere <tt>A:??? B:???</tt>) bedeuten, da&szlig; die Karte nicht
richtig erkannt wurde.
HiSax wird nur geladen wenn die Hardware gefunden wird und die passenden
Interrupts ausgel&ouml;st werden k&ouml;nnen. Das bedeutet, die Karte ist
richtig im Computer installiert und es bestehen keine
Hardware-Konflikte. Es bedeutet nicht, da&szlig; alles funktionieren
wird (z.B., verdrehte oder gebrochene Kabel, falsch gesetzte
Terminatoren).

<item>&Uuml;berpr&uuml;fe die korrekte Erkennung der Interrupts mit dem Befehl
<code>
cat /proc/interrupts
</code>
Das folgende Ergebnis zeigt, da&szlig; bei der Karte der Interrupt 11
eingestellt ist und bisher 3 Interrupts ausgel&ouml;st wurden:
<verb>
11:        3 + hisax
</verb>
Bei einem Anruf an Dich selbst sollte sich die Anzahl der ausgel&ouml;sten
Interrupts erh&ouml;hen.

<item>&Uuml;berpr&uuml;fe die IO-Addressen mit
<code>
cat /proc/ioports
</code>
</enum>

<sect1> trouble_isdncause: Ich bekomme eine Fehlermeldung "cause: E1234" (oder so &auml;hnlich)?  
<label id="trouble_isdncause">
<p>
Eine Erkl&auml;rung dieser Meldung bekommst Du mit dem Befehl <tt>man
isdn_cause</tt>.
Bei dem sehr verbreiteten Fehler "cause: E001B" sieh Dir die folgende Frage
<ref id="trouble_e001b" name="trouble_e001b"> an.

<sect1> trouble_e001b: Ich bekomme eine Fehlermeldung "cause: E001B"?
<label id="trouble_e001b">
<p>
Dies ist ein sehr verbreiteter Fehler und bedeutet (siehe <tt>man
isdn_cause</tt>): EuroISDN (E), User-Seite (00), au&szlig;er Funktion
(1b).  
Zusammen genommen bedeutet das entweder, da&szlig; der Treiber keine
Layer 1 Verbindung herstellen kann (Kabelproblem, Hardwarefehler, 
verborgene Hardwarekonflikte - siehe Bereich <ref id="hardware"
name="hardware">) oder er kann keine Layer 2 Verbindung bekommen
(falsche Konfiguration: kein EuroISDN, kein automatisches TEI
unterstützt, Point-to-Point BRI anstelle von Multi-Device - siehe
Bereich <ref id="config" name="config">).

<sect1> trouble_noprotocol: Beim Start von HiSax bekomme ich die Meldung &dquot;Warning - no protocol specified&dquot;?  
<label id="trouble_noprotocol">
<p>
Das bedeutet, da&szlig; Du das D-Kanal-Protokoll, das Du mit HiSax
benutzen willst, nicht spezifiziert hast. Meistens ist die
Voreinstellung falsch und Du musst angeben, da&szlig; Du das
EURO-Protokoll ISDN DSS1 benutzen willst. Nur wenn Du eine
Standleitung hast brauchst Du kein D-Kanal-Protokoll angeben.

<sect1> trouble_euronotsupported: Beim Start von HiSax bekomme ich die Fehlermeldung: "kernel hisax: protocol euro not supported"?
<label id="trouble_euronotsupported">
<p>
Das bedeutet, da&szlig; Du die Option Euro Protocol ISDN DSS1 bei der
Kernelkonfiguration nicht gesetzt hast. Aktiviere diese Option und
kompiliere den Kernel neu.

<sect1> trouble_notelrings: Weder mein Telefon noch mein Fax klingelt wenn ich es mit ISDN4LINUX anrufe?  
<label id="trouble_notelrings">
<p>
ISDN4LINUX setzt beim W&auml;hlen den Serviceindikator auf 'digital
data'. Die Vermittlungsstelle stellt solche Anrufe tats&auml;chlich an analoge
Ger&auml;te wie Telefon oder Fax durch. Diese analogen Ger&auml;te antworten
jedoch nur auf analoge Anrufe und ignorieren daher den digitalen Anruf.

<sect1> trouble_guestaccess: Gibt es Sites, die einen Gastzugang anbieten, wo ich meine ISDN4LINUX-Einstellungen testen kann?  
<label id="trouble_guestaccess">
<p>
Die folgenden Informationen sind ziemlich alt. Gib mir bitte bescheid,
wenn Du feststellst, da&szlig; die Gastzug&auml;nge nicht mehr erreichbar
sind:

Folgende Server bieten Gastzug&auml;nge f&uuml;r Modem-Emulation oder IP:
<itemize>
<item>Eberhard Moenkeberg <tt><htmlurl url="mailto:emoenke@gwdg.de"
name="emoenke@gwdg.de"></tt>:
<itemize>
<item>Willkommen bei Linux auf eberhard.moenkeberg.de (LAN,
192.168.99.1).
ISDN Daten-Anrufe (HDLC-trans-rawip) f&uuml;r 192.168.99.1 werden unter der
Nummer ++49-551-7704103 angenommen. Du solltest eine IP aus dem Bereich
192.168.*.* haben, da manchmal meine 'default' route nicht Deinen
Einstellungen entspricht.
/ftp ist f&uuml;r das NFS eingerichtet; versuche 'showmount -e'.
Melde Dich als 'guest' ohne Passwort an.
FTP als 'gast' mit dem Passwort 'gast' vermeidet die
eingeschr&auml;nkte Shell.
<item>Unter ++49-551-7704102 lauscht ein 28800 bps Modem und eine
Creatix ISDN Karte (HDLC only, not X.75) auf Anrufe.
<item>Mit dem unter <tt><url
url="ftp://ftp.gwdg.de/pub/linux/isdn/isdn4linux-gwdg/rc.isdn-Beispiel">
</tt>
zu findenden Netz-Setup kannst Du NetCall unter 0551-7704103 erreichen
(funktioniert innerhalb Deutschlands so wie es dasteht, von ausserhalb
Deutschlands muss die Telefonnummer ge&auml;ndert werden).
</itemize>

<item>Gernot Zander <tt><htmlurl url="mailto:hifi@scorpio.in-berlin.de"
name="hifi@scorpio.in-berlin.de"></tt>:
<quote>
Es gibt einen 'Gast'-Zugang unter +49 30 67 19 81 01 (X.75,
mgetty). Dort liegt die Stones-HTML-Seite mit Bildern in
Postscript-Format bereit zum Testen eines Downloads. Jeder, der ein Ziel
zum Anw&auml;hlen braucht, kann es benutzen. Auf ...81 03 lauscht ein getty
mit HDLC. Als Gast betrittst Du dort eine Art Mailbox und kannst einige
News lesen.
</quote>
</itemize>

<sect1> trouble_unload: Ich kann meine ISDN Module nicht entladen ('isdn: Device or resource busy') obwohl ich alle ISDN-Anwendungen geschlossen habe?  
<label id="trouble_unload">
<p>
In diesem Fall zeigt der Aufruf 'fuser -v /dev/isdn* /dev/ippp*
/dev/cui* /dev/ttyI*' welche Prozesse diese Ger&auml;te belegen.
<itemize>
<item>Benutzt irgendein Programm noch das ISDN Device?
<item>Hast Du alle getty's beendet? (Sie k&ouml;nnten automatisch neu
gestartet sein) 
<item>Laufen isdnlog, imon, iprofd, usw. noch?
<item>Liegt vielleicht noch eine Route auf Deinem Netz-Interface und ist
noch nicht durch 'route del xxx' gel&ouml;scht?
<item>Vielleicht wurde das Netz-Interface nicht deaktiviert. Das kann
z.B. beim Killen des ipppd geschehen, der auf ein signal 15 nicht
reagiert und explizit durch 'kill -9 &lt;ipppd pid&gt;' gekillt werden
muss. Dann bleibt das Netz-Interface 'aktiv'.
</itemize>
Sporadische Fehler dieser Art k&ouml;nnen durch das Einf&uuml;gen von
sleep-Befehlen zwischen die Entlade-Befehle vermieden werden.
Als wirklich allerletzte M&ouml;glichkeit gibt es zwei geheime
telesctrl-Befehle um den Module Counter zur&uuml;ck zu setzen:
<code>
telesctrl id 3 1  --- dec module_count
telesctrl id 4 1  --- inc module_count
</code>
Diese sind mit der n&ouml;tigen Vorsicht und auf eigenes Risiko zu benutzen!


<sect1> trouble_tcpdump: Warum funktioniert mein tcpdump nicht bei IP-Paketen, die &uuml;ber ISDN laufen? Wie kann ich tcpdump f&uuml;r ISDN patchen?  
<label id="trouble_tcpdump">
<p>
tcpdump kommt nicht immer mit den besonderen encapsulations zurecht, die
mit ISDN4LINUX m&ouml;glich sind, speziell nicht mit syncPPP. Zur Abhilfe
muss tcpdump gepatcht werden.

Michael Stiller <tt><htmlurl url="mailto:michael@toyland.ping.de"
name="michael@toyland.ping.de"></tt> schrieb am 23. Okt. 1996:

Tip f&uuml;r ftp:

<tt><url url="ftp://ftp.gwdg.de/pub/misc/isdn/linux/isdn4linux-gwdg"></tt>

Dort gibt es den Patch: 'tcpdump-3.0.4-1-isdn.dif.gz'

und der Rest liegt auf:

/pub/linux/mirrors/funet/PEOPLE/Linus/net-source/tools/tcpdump-3.0.4-1.tar.gz

Du musst eventuell etwas &auml;ndern, abh&auml;ngig von dem Namen Deines ISDN
Interfaces (bei mir ist das bri0). Von sich aus erkennt der Patch nur
Interfacenamen wie isdn* und isdnY*.

Des weiteren schrieb Henning Schmiedehausen <tt><htmlurl
url="mailto:henning@pong.iconsult.com"
name="henning@pong.iconsult.com"></tt> am 30. Okt. 1996:
<quote>
Nachdem ich feststellte, da&szlig; der Patch von Eberhard Moenkeberg auf
ftp.gwdg.de mit CISCO-HDLC nicht zurechtkommt, schrieb ich meinen
eigenen Patch f&uuml;r tcpdump-3.0.4, der das Interface fragt, welche
encapsulation es benutzt und dann die entsprechende Einstellung
vornimmt. Der Patch ist f&uuml;r die tcpdump-3.0.4-1.tar.gz Distribution,
erh&auml;ltlich z.B. bei
</quote>
<tt><url url="ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/tools"></tt> 
<quote>
Dieser Patch erkennt rawIP, ISDN-IP und CISCO-HDLC und kann Dumps dieser
Pakete durchf&uuml;hren.
</quote>
(Der Patch war der Message beigef&uuml;gt  - man sollte ihn leicht im Archiv
der Mailingliste finden k&ouml;nnen - Editor.)

Sascha Ottolski <tt><htmlurl
url="mailto:sascha@alzhimer.isdn.cs.tu-berlin.de" 
name="sascha@alzhimer.isdn.cs.tu-berlin.de"></tt> gab am 05. Nov. 1996
den folgenden Tip:
<quote>
Dies ist ein isdn4k-utils-2.0/tcpdump-3.0.3-isdn.diff ! Es funktioniert
mit folgenden &Auml;nderungen:
In der Datei tcpdump-3.0.3-isdn/libpcap-0.0/pcap-linux.c findest Du nach
dem Patchen die folgende Zeile:
else if (strncmp('ppp', device, 3) == 0)
Entweder benennst Du Deine PPP-Devices pppX anstatt ipppX, oder Du
&auml;nderst diese Zeile entsprechend, z.B.:
else if (strncmp('ippp', device, 4) == 0)
Dann erkennt tcpdump auch syncPPP. Es macht es zumindest bei mir.
</quote>

<sect1> trouble_locatecrash: Mein ISDN Treiber bringt meine Maschine zum Absturz! Seit ich ihn als Modul konfiguriert habe &auml;ndern sich die Addressen bei jedem Laden. Wie finde ich heraus, wo der Treiber abbricht?  
<label id="trouble_locatecrash">
<p> 
Der Treiber sollte mit dem Befehl 'insmod -m' geladen werden. Die
Ausgabe des Befehls muss in eine Form &auml;hnlich der System.map gebracht
werden, z.B. so:
<code>
insmod -m isdn.o | sort | sed -e 's/   / T /g' |
                   egrep '.* T (a-z,A-Z,_)+' &gt; /etc/isdn/isdn.map
cat /System.map /etc/isdn/isdn.map &gt; /iSystem.map
</code>
(Die Zeile mit '|' am Ende und die n&auml;chste Zeile bilden eine
Zeile!). Zum Aufsp&uuml;ren des Fehlers sollte dann iSystem.map anstelle von
System.map benutzt werden.

<sect1> trouble_lotsdebug: Meine Festplatte wird sehr aktiv wenn ISDN4LINUX l&auml;uft. Wie kann ich das abstellen?  
<label id="trouble_lotsdebug">
<p>
Pr&uuml;fe ob die erh&ouml;hte Festplattenaktivit&auml;t an der Menge der Meldungen
liegt, die in das Logfile geschrieben werden. Wenn ja, kannst Du die
Ausgabe durch: 
<code>
isdnctrl verbose 0
</code>
reduzieren und/oder 'debug' aus den Optionen f&uuml;r den ipppd entfernen.

<sect1> trouble_oldhardware: Kann es sein, da&szlig; meine Hardware zu langsam ist?  
<label id="trouble_oldhardware">
<p>
Eigentlich l&auml;uft ISDN4LINUX, wenn es sauber konfiguriert ist, auf viel
schw&auml;cheren Maschinen als Du erwarten wirst (bei mir l&auml;uft immer noch
eine &auml;ltere Version auf einem 386-25, der nur 4MB RAM besitzt). Neuere
Versionen von ISDN4LINUX und des Kernels ben&ouml;tigen jedoch mehr
Speicher. M&ouml;glicherweise ist etwas Bearbeitung n&ouml;tig um sie auf sehr
alter Hardware laufen zu lassen. Schau Dir die Frage <ref
id="trouble_outofbuffers" name="trouble_outofbuffers"> an, wenn Du knapp
an Buffern wirst.  Siehe Frage <ref id="trouble_littlememory"
name="trouble_littlememory"> zur Reduzierung des ben&ouml;tigten Speichers.

<sect1> trouble_outofbuffers: Ich bekomme Meldungen wie 'HSCX RME out of buffers', 'HSCX RFP out of buffers', 'HSCX B EXIR 10' im Syslog?
<label id="trouble_outofbuffers">
<p>

Diese Fehler tauchen auf, wenn I4L seine Buffer nicht schnell genug
verarbeiten kann, was oft durch schlechte Soundkarten oder deren Treiber
verursacht wird, die die Interrupts zu lange deaktivieren! Es kann auch
durch alte Hardware ausgel&ouml;st werden (passierte dem Autor der FAQ, der
<tt/vbox/ auf einem alten 386-25 mit nur 4MB RAM benutzen wollte). Du
kannst das mit einer Erh&ouml;hung der Anzahl und Gr&ouml;&szlig;e der Buffer
umgehen. Suche in den Header-Dateien des Sourcecodes nach Definitionen
wie:
<code>
&num;define HSCX_RBUF_ORDER 1 
&num;define HSCX_RBUF_BPPS 2 
&num;define HSCX_RBUF_MAXPAGES 3 
</code>
Die ersten beiden Zeilen ver&auml;ndern die Gr&ouml;&szlig;e, die dritte Zeile
ver&auml;ndert die maximale Anzahl der Buffer.

<sect1> trouble_noresetinit: Meine Karte wird nach einem Warmstart nicht richtig initialisiert.  
<label id="trouble_noresetinit">
<p>
Nach einem Anhalten des Systems mit dem Befehl <tt/reboot/ oder
<tt/Ctrl-Alt-Del/ solltest Du den Reset-Knopf dr&uuml;cken (=
Kaltstart). Manchmal braucht die Karte ein Hardware-Signal um richtig
initialisiert zu werden.

<sect1> trouble_xosview: xosview zeigt nach der Installation von I4L keine Netzwerk-Aktivit&auml;t mehr an.  
<label id="trouble_xosview">
<p>
Peter Hettkamp <tt><htmlurl
url="mailto:Peter.Hettkamp@kassel.netsurf.de"
name="Peter.Hettkamp@kassel.netsurf.de"></tt> schrieb:
<quote>
xosview reagiert, zumindest bei mir in der Version 1.4, auf das IP
Accounting im Kernel. Also konfiguriere und, falls n&ouml;tig, baue einen
neuen Kernel und aktiviere es mit:
<code>
ipfwadm -A -a -S deine-ip-addresse-hier -D 0.0.0.0/0
ipfwadm -A -a -D deine-ip-addresse-hier -S 0.0.0.0/0
</code>
(Ich weis nicht wie das mit dynamischen IP-Addressen geht. Ich habe eine
feste Addresse.)
</quote>

<sect1> trouble_unknownhost: Wenn ich z.B. von einer W95-Box eine Seite in Netscape aufrufe, bekomme ich nur die Antwort 'unknown host'.  
<label id="trouble_unknownhost">
<p>
Was ist auf der 'Win95-Box' als Nameserver eingetragen? Solange
im LAN kein eigener Nameserver betrieben wird, muss nat&uuml;rlich auf allen
Computern des LAN der Nameserver des Providers eingetragen werden.

<sect1> trouble_noroute: Die Addressen werden jetzt gefunden, doch nun bekomme ich die Meldung 'no route to host'.  
<label id="trouble_noroute">
<p>
Pr&uuml;fe nach:
<itemize>
<item>Ist der Linux-Computer als Gateway eingetragen? (Einige
'Betriebssysteme' muss man neu starten bevor die &Auml;nderungen am Netzwerk
wirksam werden)
<item>Hat der Router eine defaultroute vom eingerichteten Interface zum
Provider (z.B. ippp0 mit syncPPP oder sl0 f&uuml;r diald (auch wenn die
tats&auml;chliche Verbindung &uuml;ber ppp0 geht benutzt diald ein slip
Interface als 'T&uuml;r&ouml;ffner'))?
<item>Schreibt der Provider den Gebrauch von Proxies vor? Dann m&uuml;ssen
die Addressen der Proxies bei den entsprechenden Clients im LAN
eingetragen werden. 
<item>Vielleicht wurde die Route beim Einsatz von syncppp entfernt?
Schau Dir die Fragen <ref id="syncppp_noroute" name="syncppp_noroute">
und <ref id="syncppp_nodefaultroute" name="syncppp_nodefaultroute"> an.
</itemize>

<sect1> trouble_nolocalnet: Nach dem Booten ist mein lokales Netzwerk nicht mehr erreichbar. Ich benutze das Netzwerk-Interface ippp0 mit ifconfig 0.0.0.0; die defaultroute zeigt auf ippp0.  
<label id="trouble_nolocalnet">
<p>
Wolfgang Barth schrieb am 5. Januar 1997:
<quote>
Ich habe festgestellt, dass das lokale Netzwerk nach der ersten
Verbindung &uuml;ber ippp0 wieder erreichbar ist. Dann wird die Addresse
0.0.0.0 nicht mehr im ifconfig f&uuml;r ippp0 angezeigt sondern vielmehr die
Addresse, die aus dem Pool des PPP-Partners zugewiesen wird.  Dies wurde
bereits in de.comp.os.linux.networking behandelt, zusammen mit dieser
L&ouml;sung: Setze einfach ippp0 auf eine willk&uuml;rliche IP aus dem
Pool. Dann wird das lokale Netzwerk nach dem Booten auch mit der
defaultroute Probleme haben und die IP in ifconfig wird auf jeden Fall
&uuml;berschrieben.
</quote>

<sect1> trouble_unauthorizedcodechange: Beim Start von HiSax bekomme ich die Fehlermeldung 'Approval certification failed, unauthorized source code changes'? 
<label id="trouble_unauthorizedcodechange">
<p>
Da die Zulassung des HiSax-Treibers nur f&uuml;r den unver&auml;nderten
Quellcode gilt ist dieser durch eine Pr&uuml;fsumme gesch&uuml;tzt. Wenn Du die
Fehlermeldung bekommst, hast Du entweder selbst den Code ge&auml;ndert oder
der Autor hat nach einer &Auml;nderung die Pr&uuml;fsumme nicht aktualisiert
(m&ouml;glicherweise wurden die Zulassungstests mit dem ge&auml;nderten Code
noch nicht durchgef&uuml;hrt).


<!-- Config MSN
-->

<sect> msn: Konfiguration/MSNs  
<label id="msn">

<sect1> msn_my1: Wie lautet meine MSN? Was, wenn ich keine habe?  
<label id="msn_my1">
<p>
Deine Telefongesellschaft nennt Dir Deine MSN. Es ist Deine
Telefonnummer. Denke daran, da&szlig; Du in I4L mindestens eine MSN
eintragen <bf/musst/. Wenn Du keine hast, kannst Du '0' benutzen. '0'
wird angenommen wenn Deine Telefongesellschaft keine MSN mitteilt. Lies
den Abschnitt <ref id="countries" name="countries"> zusammen mit den
folgenden Fragen, wie man MSN(s) einrichtet.

<sect1> msn_my2: Wie finde ich heraus, wie meine Telefonnummer zur anrufenden Stelle &uuml;bertragen wird?  
<label id="msn_my2">
<p>
Die &uuml;bertragene MSN kann leicht durch einen Anruf bei Dir selbst
(z.B. mittels Telefon) festgestellt werden. In den Log-Dateien findest
Du einen Eintrag wie: 'isdn_tty: call from XXX - YYY ignored' (dazu
m&uuml;ssen nat&uuml;rlich die ISDN-Treiber schon im Kernel konfiguriert und
aktiv sein).

<sect1> msn_config: Wie stelle ich meine MSN ein?  
<label id="msn_config">
<p>
Wenn Deine Telefonnummer 56789 ist, wird sie folgenderma&szlig;en
eingestellt:
<itemize>
<item>Modememulation: <tt>'AT&amp;E56789'</tt>
<item>Netzwerk Interface: <tt>'isdnctrl msn &lt;interface&gt;
56789'</tt>
<item>Bei Testanrufen an Dich selbst musst Du die Ortsvorwahl
hinzuf&uuml;gen (z.B. 01234):
<code>
isdnctrl addphone &lt;interface&gt; in 123456789 (ohne vorangestellte 0)
isdnctrl addphone &lt;interface&gt; out 0123456789 (mit vorangestellter 0)
</code>
</itemize>
Es gibt dabei m&ouml;glicherweise nationale Unterschiede (siehe
Abschnitt<ref id="countries" name="countries">).  

Du kannst auch einen '*' als Wildcard an das Ende der empfangenden
Nummer setzen (z.B.: <tt>'isdnctrl msn &lt;interface&gt; 123*'
</tt>). Das kann jedoch bei ausgehenden Rufen Probleme bereiten. Zur
sauberen Behandlung dieses Problems solltest Du das Mapping des
isdnctrl benutzen (siehe Frage <ref id="dialout_manycards"
name="dialout_manycards">).

<sect1> msn_mindialin: Wie kann ich den Gebrauch von MSNs bei digitaler Einwahl minimieren?  
<label id="msn_mindialin">
<p>
In I4L haben Netz-Interfaces Priorit&auml;t. Daher reicht Dir eine MSN, wenn
Du folgendes Setup benutzt:
<enum>
<item>Konfiguriere Netz-Interfaces (sync ppp, rawip) f&uuml;r alle User, die
sie benutzen wollen (ipppd oder rawip), mit ihrer Einwahl-Telefonnummer
(Vorbedingung ist, da&szlig; diese &uuml;bermittelt wird).
<item>Konfiguriere ttyI* f&uuml;r alle anderen User (X.75, async ppp).
<item>Setze die Option 'secure on'.
</enum>
In I4L haben Netz-Interfaces Priorit&auml;t. 'secure on' stellt sicher,
da&szlig; nur entsprechend eingestellte User mit einem Netz-Interface
verbunden werden. User, die zwischen beiden M&ouml;glichkeiten w&auml;hlen
wollen, m&uuml;ssen andere MSNs zur Anwahl benutzen.

<sect1> msn_onlyone: Wie kann ich eine MSN f&uuml;r alles benutzen?  
<label id="msn_onlyone">
<p>

In Deutschland ist das kein schwieriges Problem mehr seit man 10 MSNs
kostenlos von der Deutschen Telekom (<url
url="http://www.telekom.de/index.html">) bekommen kann. Andere
Telefongesellschaften m&ouml;gen weniger MSNs kostenlos
anbieten. Generell bekommt man mindestens 3 MSNs. Jedoch mag eine
Minimierung des Gebrauchs von MSNs in anderen L&auml;ndern immer noch
interessant sein oder wenn Du sehr viele Nummern ben&ouml;tigst. Auf
einem normalen ISDN-Bus gibt es maximal 10 MSNs. Bei einem
gr&ouml;&szlig;eren Bedarf gibt es nur die - normalerweise teurere -
Alternative der Point-to-Point ISDN Verbindung.

Ankommende digitale Daten k&ouml;nnen leicht durch den Code f&uuml;r die
'Dienstekennung' ('digital, data') von Anrufen durch Stimme
(Telefon) bzw. analoge Modems unterschieden werden.

Die Unterscheidung zwischen Netz-Interfaces (ipppd, rawip) und ttyI*
(X.75) behandelt die vorhergehende Frage.

Um Telefon und analoges Modem parallel zu betreiben nutzt man mgetty
f&uuml;r das analoge Modem. Mgetty kann analoge Daten, Faxe und sogar
Stimmen als Anrufbeantworter empfangen, wenn das Modem dies
unterst&uuml;tzt. Stelle mgetty auf 10 Klingelsignale ein. Wenn Du den
Telefonh&ouml;rer abnimmst und ein Faxger&auml;t oder Modem h&ouml;rst, sendest Du
ein USR1 Signal (<tt>kill -USR1 &lt;mgetty-pid&gt;</tt>) an mgetty. Wenn
Dein Telefonanschlu&szlig; richtig verdrahtet ist, wird das Modem die
Verbindung &uuml;bernehmen und das Telefon deaktivieren. Bei einem ISDN PBX
kannst Du einen Fax/Modem-Anruf an einen anderen analogen Port
weiterleiten.

Kann Dein analoges Modem keine Stimmanrufe verarbeiten, so musst Du Dich
entscheiden, da hereinkommende Stimmanrufe nicht von analogen Faxen oder
Datenverbindungen unterschieden werden k&ouml;nnen. Entweder nimmst Du per
VBOX Deine Stimmanrufe als Anrufbeantworter auf oder Du vergisst
Stimmanrufe ganz und richtest Dein Modem nur zum Faxempfang und/oder
analogen Datenverkehr ein.

<sect1> msn_buendel: Kann ich mehrere NTBAs, alle mit der gleichen MSN, benutzen?  
<label id="msn_buendel">
<p>
Ja, Du brauchst dazu jedoch die Hilfe Deiner Telefongesellschaft. Sie
kann mehrere BRIs mit gleicher MSN im Point-to-point-Modus
einrichten. In Deutschland nennt man das einen 'B&uuml;ndelanschlu&szlig;'.

Beachte, da&szlig; in diesem Fall die MSN vielleicht nicht an Dich
&uuml;bertragen wird. Benutze dann die vorgegebene MSN 0.


<sect> lan: ISDN4LINUX im LAN  
<label id="lan">

<sect1> lan_config: Wie kann ich Linux so einstellen, da&szlig; andere Computer in meinem LAN das Internet &uuml;ber meinen Linux Computer erreichen k&ouml;nnen?  
<label id="lan_config">
<p>
Dazu gibt es verschiedene M&ouml;glichkeiten:
<enum>
<item>Dein LAN ist ein offizielles Klasse-C-Netz mit im Internet
g&uuml;ltigen IP-Nummern. Das ist am einfachsten einzustellen. Du gibst
jeder Netzwerkkarte in Deinem Netz eine dieser Addressen und setzt auf
dem Linux Rechner eine defaultroute auf die ISDN-Karte, die zu Deinem
Provider f&uuml;hrt. Die anderen Rechner im  LAN erhalten die Adresse der
Netzkarte des Linux Rechners als Gateway bzw defaultroute.
<item>Du m&ouml;chtest von Deinem LAN nur auf HTTP im Internet zugreifen. In
diesem Fall kannst Du beliebige IP-Addressen f&uuml;r Dein LAN einrichten;
die einzige offizielle IP ist die Deiner ISDN-Karte. Dann installierst
Du einen Proxyserver auf Deinem Linux-Router und tr&auml;gst ihn in allen
Browsern ein. Hier brauchst Du keine defaultroute einzurichten.
<item>Du m&ouml;chtest Dich von Deinem LAN nur in Deinen Linux-Router
einloggen und VON DORT aus im Internet arbeiten. Das ist sogar noch
einfacher. Du brauchst noch nicht einmal einen Proxyserver.
<item>Benutze ip masquerading. Es ist am bequemsten im Gebrauch aber
schwieriger einzurichten. Der Linux Computer agiert als Gateway. Der
Trick dabei ist, da&szlig; er die IP-Addressen des LANs verbirgt und nur
seine eigene Internetaddresse als Antwort-Addresse angibt. Wenn
Antworten eintreffen werden sie an den richtigen Computer im LAN
weitergeleitet. Du kannst masquerading auch mit dynamischen IP-Addressen
benutzen. Wenn Du die ISDN-Verbindung vom Linux Computer zu Deinem
Internetprovider nicht manuell starten willst solltest Du dial on demand
einrichten (siehe Abschnitt <ref id="dod" name="dod">).
</enum>

<sect1> lan_modemserver: Wie erm&ouml;gliche ich den Usern in meinem LAN, zum W&auml;hlen die ISDN-Karte(n) in meinem Linux-PC zu benutzen (wie bei einem Modem-Server)?  
<label id="lan_modemserver">
<p>
Auf dem Linux-PC benutzt Du modemd, ein sehr kurzes Perl-Script:
<code>
&num;!/usr/bin/perl
select((select(STDOUT), &dollar;| = 1)(&dollar;());
select((select(STDIN), &dollar;| = 1)(&dollar;());
exec 'cu','-E','''', '-l', '&dollar;ARGV(0)';
die '&dollar;0: Cannot exec cu: &dollar;!\n';
</code>
Das muss vom inetd gestartet werden, daher muss dies in
<tt>/etc/services</tt> eingetragen werden:
<code>
 modem           20006/tcp       modemd  &num; Modem service via TCP
 isdn            20007/tcp       modemd  &num; ISDN  service via TCP
</code>
Und dies muss in <tt>/etc/inetd.conf</tt> eingetragen werden:
<code>
modemd stream tcp nowait root /usr/sbin/tcpd /usr/sbin/modemd ttyI5
</code>

Zus&auml;tzlich ben&ouml;tigst Du eine Software auf Deinen Computern ohne
ISDN-Karte, die einen seriellen Port emuliert, ihn aber per telnet auf
den Linux-ISDN-Computer umleitet. Einige Versionen von telnet besitzen
diese F&auml;higkeit (z.B. einige uucicos).
Wenn Du generell allen Anwendungen eine Art 'remote COM port'
anbieten willst, gibt es COMT f&uuml;r Windows (95) und 'telser.device'
f&uuml;r Amigas. Nachteil von COMT: es steht nur 16Bit-Anwendungen zur
Verf&uuml;gung.

COMT kannst Du bei Simtel finden:
<tt><url url="http://educom.sce.fct.unl.pt/ftp/pub/shareware/win-utils/comt2.zip"></tt>


<!-- Dialout
-->

<sect> dialout: Konfiguration des Hinausw&auml;hlens  
<label id="dialout">

<sect1> dialout_config: Wie richte ich das Hinausw&auml;hlen richtig ein?  
<label id="dialout_config">
<p>
Zuerst musst Du entscheiden wie Du hinausw&auml;hlen willst. Du wirst Dich
da nach Deinem Verbindungspartner richten m&uuml;ssen. Dies sind die
haupts&auml;chlichen M&ouml;glichkeiten:
<itemize>
<item> Sync PPP: Das erwarten die meisten Internet Service Provider von
Dir. Siehe Abschnitt <ref id="syncppp" name="syncppp">.
<item> Async PPP: Kann ebenfalls von Deinem Internet Service Provider
benutzt werden. Nimm es, wenn Sync PPP nicht funktioniert. Siehe
Abschnitt <ref id="asyncppp" name="asyncppp">.
<item> Raw IP: Am effizientesten f&uuml;r TCP/IP &uuml;ber ISDN. Es bietet sehr
schnelles Hinausw&auml;hlen, ist aber nicht sehr verbreitet. Siehe Abschnitt
<ref id="rawip" name="rawip">.
<item> X.75: Das brauchst Du zur Einwahl in eine ISDN-Mailbox. Siehe
Abschnitt <ref id="ttyI" name="ttyI">.
<item> Leased line (Standleitung): Zu diesem speziellen Fall siehe
Abschnitt <ref id="leased" name="leased">.
</itemize>

Im Abschnitt <ref id="dod" name="dod"> liest Du wie dial on demand
eingerichtet wird - und welche Gefahren es birgt.

Mehr &uuml;ber erweiterte Eigenheiten des Hinausw&auml;hlens findest Du bei der
Frage <ref id="dialout_advanced" name="dialout_advanced">.

Du solltest Dir auch den Abschnitt <ref id="remote" name="remote">
ansehen, wenn Du eine Verbindung mit einem speziellen entfernten
ISDN-Ger&auml;t aufbauen willst.

<sect1> dialout_dialmode: Wenn ein IP-Paket &uuml;ber die Verbindung geschickt werden soll (was normalerweise ein W&auml;hlen ausl&ouml;st), bekomme ich im Log nur die Meldung 'dial rejected: interface not in dialmode <tt/auto/' zu sehen?  
<label id="dialout_dialmode">
<p>
Die neuen ISDN-Treiber in 2.0.36 sind auf den manuellen W&auml;hlmodus
eingestellt, nicht auf die automatische Anwahl. Das wurde gemacht, um
unerwartete (und unbemerkte) W&auml;hlvorg&auml;nge zu verhindern. (Lies den
umfangreichen Abschnitt &uuml;ber diese W&auml;hlvorg&auml;nge und ihre Gefahren:
<ref id="dod" name="dod">).  Um autodial f&uuml;r ein bestimmtes Interface
(z.B. ippp0) einzurichten, nimmst Du den Befehl <code>isdnctrl dialmode
ippp0 auto</code>

Die Bedeutung der Werte f&uuml;r dialmode ist:
<descrip>
<tag/off/ bewirkt, da&szlig; Du (oder das System) keine Verbindung
aufbauen kannst (weder eingehende noch ausgehende Verbindungen sind
m&ouml;glich). Benutze diese Option um sicherzustellen, da&szlig; keine
Verbindungen aufgebaut werden.

<tag/auto/ bewirkt, da&szlig; sich das Interface im automatischen
W&auml;hlmodus befindet und jedesmal, wenn ein Datenpaket des Netzwerkes den
Verbindungsweg des Interfaces benutzen will, eine Verbindung aufbauen
wird. Du solltest beachten, da&szlig; das unerwartete W&auml;hlvorg&auml;nge
ausl&ouml;sen und zu einer hohen Telefonrechnung f&uuml;hren kann! Das kann
durch einige demons oder andere PCs, die auf das Interface zugreifen,
ausgel&ouml;st werden. Eingehende Anrufe sind ebenfalls m&ouml;glich.

<tag/manual/ (VOREINSTELLUNG) ist ein W&auml;hlmodus, der dazu geschaffen
wurde, die unerwarteten Verbindungsaufbauten zu verhindern. In diesem
Modus wird das Interface nie eine Verbindung von selbst aufbauen. Du
musst die Verbindung explizit mit: 
<code>
isdnctrl dial ippp0
</code>
aufbauen.  Zum Beenden der Verbindung schreibst Du: 
<code>
isdnctrl hangup ippp0
</code>.  
Beachte bitte, da&szlig; <tt/huptimeout/ die Verbindung trotzdem
automatisch beendet! Du musst dies mit: 
<code>
isdnctrl huptimeout ippp0 0
</code> 
abstellen, um sicherzustellen, da&szlig; die Verbindung nur durch
manuelles Auflegen beendet wird. 
</descrip>

Wie Du einem normalen Benutzer das Hinausw&auml;hlen gestattest, erf&auml;hrst
Du bei der Frage <ref id="dialout_permission"
name="dialout_permission">.

<sect1> dialout_advanced: Welche speziellen Leistungsmerkmale des Hinausw&auml;hlens gibt es?  
<label id="dialout_advanced">
<p>
Sieh Dir diese speziellen Leistungsmerkmale an:
<itemize>
<item> Spare Geld, indem Du kurz vor dem n&auml;chsten Geb&uuml;hrenimpuls
einh&auml;ngst: Siehe Abschnitt <ref id="chargeint" name="chargeint">.
<item> Verbindungen auf mehr als einem Kanal: Siehe Abschnitt <ref
id="2channel" name="2channel">.
<item> R&uuml;ckruf: Siehe Abschnitt <ref id="callback" name="callback">.
</itemize>

<sect1> dialout_permission: Wie gestatte ich einem normalen Nutzer, Verbindungen aufzubauen?  
<label id="dialout_permission">
<p>
Der Gebrauch von ISDN h&auml;ngt ab von den Benutzerrechten an den Devices
<tt>/dev/ttyI*</tt> und <tt>/dev/cui*</tt>. Du hast mehrere
M&ouml;glichkeiten, um gezielt Nutzern ISDN Verbindungen zu erlauben.
<enum>
<item>Du kannst die Gruppe 'isdn' in <tt>/etc/group</tt> erstellen und
dann: 
<code>
chgrp isdn /dev/ttyI* /dev/cui*
chmod o-rw /dev/ttyI* /dev/cui*
</code>
eingeben.
Es wird berichtet, da&szlig; Du ebenfalls bei den Programmen <tt/ipppd/
und <tt/isdnctrl/ die Gruppe und die Benutzerrechte auf 'isdn' setzen
musst. Dann haben alle Nutzer, die nicht in der Gruppe 'isdn' sind,
keine Schreib- oder Leserechte f&uuml;r die ISDN ttys. Diejenigen, die ISDN
benutzen d&uuml;rfen, m&uuml;ssen explizit in die Gruppe 'isdn' aufgenommen
werden.
<item>Du kannst festlegen, da&szlig; nur root hinausw&auml;hlen darf, jedoch
Ausnahmen f&uuml;r andere Nutzer mit su1 schaffen (siehe man su1). Editiere
als root <tt>/etc/su1.priv</tt>. F&uuml;ge diese Zeilen hinzu, wenn sie
(oder &auml;hnliche) nicht schon vorhanden sind, und erlaube damit den
Nutzern XXXX und YYYY das W&auml;hlen und Auflegen:
<code>
# log all dialouts in syslog
syslog all
define PPPUSER XXXX YYYY
alias dial /sbin/isdnctrl dial ippp0
alias hangup /sbin/isdnctrl hangup ippp0
ask never
allow PPPUSER prefix dial
allow PPPUSER prefix hangup
</code>
Dann erstelle zwei Links f&uuml;r dial und hangup:
<code>
ln -s /usr/bin/su1 /usr/local/bin/dial
ln -s /usr/bin/su1 /usr/local/bin/hangup
</code>
Nun k&ouml;nnen die Nutzer XXXX und YYYY mit der Eingabe von <tt/dial/
hinausw&auml;hlen und mit <tt/hangup/ auflegen.
<item>Wenn Du nur einen User f&uuml;r die ISDN-Aktionen benutzt, kannst Du
ihn zum Eigent&uuml;mer des ISDN-Interfaces machen.
</enum>

<sect1> dialout_manycards: Wie konfiguriere ich die Hinauswahl mit mehr als einer ISDN-Karte?  
<label id="dialout_manycards">
<p>
Es gibt mehrere M&ouml;glichkeiten, die Hinauswahl einzurichten.
<itemize>
<item>Hinauswahl auf irgendeiner Karte (Voreinstellung: alle
verf&uuml;gbaren Karten bilden einen Pool, zur Hinauswahl wird eine MSN
benutzt): Konfiguriere Deine Karten einfach in der Reihenfolge, die zum
W&auml;hlen benutzt werden soll. Zuerst werden alle Kan&auml;le der ersten Karte
benutzt, dann alle Kan&auml;le der zweiten Karte, usw. Beachte bitte,
da&szlig; das Netz-Interface oder das ttyI-Device versuchen wird, auf
allen Karten die ihm zugeordnete MSN zu benutzen, sogar auf den Karten,
denen diese MSN nicht zugewiesen wurde! In diesem Fall wird die
Telefongesellschaft diese ung&uuml;ltige MSN durch die korrekte MSN
ersetzen. Mit dem Befehl <tt/isdnctrl mapping/ stellst Du die korrekten
MSNs ein (siehe Punkt 'Hinauswahl mit einer bestimmten Karte'). 
<item>Hinauswahl auf einem bestimmten Kanal: Zur Angabe, welcher Kanal
benutzt werden soll, dient der Befehl <tt/isdnctrl bind/ (nicht
pppbind).
<item> Hinauswahl mit einer verschiedenen MSN f&uuml;r jede Karte:
Du stellst dies ein mit dem Befehl <tt/isdnctrl mapping/.
Definiere einfach eine Zuordnung der Ziffern 0 bis 9 zu den MSN's, etwa
so:
<code>
isdnctrl mapping &lt;carddriver1&gt; 111,222,333,,
isdnctrl mapping &lt;carddriver2&gt; 999,888,,777
</code>
Jetzt k&ouml;nntest Du bei der Konfiguration die Telefonnummer 0 verwenden,
wenn Du eigentlich auf &lt;carddriver1&gt; die MSN 111 oder auf
&lt;carddriver2&gt; die MSN 999 meinst. (Weil aber 0 eine besondere
Bedeutung hat, versuche die Nummer 0 nicht zu benutzen.).  
Konfiguriere zum Beispiel f&uuml;r die Telefonnummer die 1, wenn Du
tats&auml;chlich die MSN 222 auf &lt;carddriver1&gt; oder MSN 888 auf
&lt;carddriver2&gt; benutzen m&ouml;chtest.  
Konfiguriere f&uuml;r die Telefonnummer die 2, wenn Du tats&auml;chlich die MSN
333 auf &lt;carddriver1&gt; benutzen m&ouml;chtest (&lt;carddriver2&gt; wird
bei Benutzung die standardm&auml;ssige MSN verwenden.).  
Konfiguriere f&uuml;r die Telefonnummer 3, wenn Du tats&auml;chlich die MSN 777
auf &lt;carddriver2&gt; benutzen m&ouml;chtest (&lt;carddriver1&gt; wird bei
Benutzung die standardm&auml;ssige MSN verwenden.).
<item>Hinauswahl mit einer bestimmten Karte: Nach Installation eines
Patches gegen Kernel 2.2.12, den Karsten Keil auf der Mailingliste zur
Verf&uuml;gung stellte, kannst Du mit den Funktionen des Befehls
<tt/isdnctrl mapping/ das W&auml;hlen mit einigen Karten verhindern.
<code>
isdnctrl mapping &lt;carddriver1&gt; 111,222,333,-,
isdnctrl mapping &lt;carddriver2&gt; 999,888,-,777
</code>
Das funktioniert wie in "Hinauswahl mit einer verschiedenen MSN f&uuml;r
jede Karte" beschrieben, das "-" bewirkt jedoch, da&szlig; das W&auml;hlen
nicht erlaubt ist. Das W&auml;hlen mit Telefonnummer 2 wird nun nur mit der
MSN 333 mit &lt;carddriver1&gt; durchgef&uuml;hrt, w&auml;hrend das W&auml;hlen mit
der Nummer 3 nur mit MSN 777 mit &lt;carddriver2&gt; geschieht.
</itemize>


<!-- Authenticate properly
-->
<sect> pap: Saubere Authentifikation (speziell mit PAP)  
<label id="pap">

<sect1> pap_optionauth: Beim Hinausw&auml;hlen bekomme ich die Meldung 'pppd: peer authentication required but no authentication files accessible.' Was bedeutet das?  
<label id="pap_optionauth">
<p>
Wahrscheinlich wurde irrt&uuml;mlich die Option 'auth' gesetzt. Dann
muss sich die <em>andere</em> Seite authentifizieren.

<sect1> pap_requestauth: Ich kann keine Verbindung aufbauen -  sie wird von der anderen Seite abgelehnt. Im Logfile finde ich eine Meldung, &auml;hnlich wie: 'sent (0) (LCP ConfReq id=0x1 mru 1500 auth pap magic 0xcd12e9c4'  
<label id="pap_requestauth">
<p>
Wie bei der letzten Frage wurde eine Option eingestellt, die verlangt,
da&szlig; die <em>andere</em> Seite sich authentifiziert. Diese Optionen
sollten vermieden werden. M&ouml;gliche Kandidaten sind: '+pap' und '+chap'.

<sect1> pap_rejectauth: Ich kann keine Verbindung aufbauen - sie wird von der Gegenseite abgewiesen. Im Logfile finde ich eine Meldung, &auml;hnlich wie: 'sent (0) (LCP ConfRej id=0x1 auth pap'  
<label id="pap_rejectauth">
<p>
Dein Computer lehnt es ab, sich mit Usernamen (z.B. XXX) und Password
(z.B. YYY) zu identifizieren. Das funktioniert nur, wenn die
Autorisierungsoptionen 'user XXX' und 'remotename YYY'
f&uuml;r ipppd oder pppd richtig in einer korrekten (!) /etc/ppp/pap-secrets
eingetragen sind. Mit einem Password ZZZ sollte des so aussehen:
<code>
XXX YYY ZZZ *
</code>
Wenn in XXX, YYY oder ZZZ spezielle Zeichen enthalten sind, solltest Du
die W&ouml;rter in Anf&uuml;hrungszeichen setzen. Wenn das nicht funktioniert,
kannst Du Wildcards benutzen, etwa so:
<code>
* * ZZZ *
</code>
Dann hat <em>jeder</em> Benutzer das Password ZZZ. Wenn chap zur
Autorisierung ben&ouml;tigt wird, muss /etc/ppp/chap-secrets korrekt
eingestellt sein. Wichtig: das Format ist nicht das gleiche wie bei
pap-secrets!  Lies auf jeden Fall die READMEs oder schau Dir <tt><url
url="http://www.lrz-muenchen.de/&tilde;ui161ab/www/isdn/"></tt> an. Sieh
Dir ebenfalls die n&auml;chste Frage <ref id="pap_passwd" name="pap_passwd">
an.

<sect1> pap_checkpwd: Wie stelle ich fest, welches Password an die Gegenseite geschickt wird?  
<label id="pap_checkpwd">
<p>
Nutze die Optionen <tt/debug/ und <tt/+pwlog/ f&uuml;r ipppd oder pppd. Dann
kannst Du Dein Password im Logfile sehen.

<sect1> pap_passwd: Ich habe Probleme mit der Authentifikation durch PAP oder CHAP. Sie schl&auml;gt fehl obwohl ich sicher bin, Password usw. korrekt eingetragen zu haben.  
<label id="pap_passwd">
<p>
Stefan A. M&uuml;hlenweg <tt><htmlurl
url="mailto:Stefan.A.Muehlenweg@samhh.hanse.de"
name="Stefan.A.Muehlenweg@samhh.hanse.de"></tt> schrieb am 4. Okt 1996:
<quote>
Ich hatte genau das gleiche Problem / die gleiche Fehlermeldung. Der
Grund daf&uuml;r war, da&szlig; ich drei Eintr&auml;ge in chap-secrets /
pap-secrets (f&uuml;r client, server, secret) aber keinen vierten Eintrag
(IP Addresse) hatte. ABER: hinter dem dritten Eintrag kamen einige
Leerzeichen. Nach dem Entfernen dieser Leerzeichen und/oder TABs ist der
(i)pppd jetzt sehr zufrieden mit meinen Authentifizierungs-Dateien.
</quote>
Eine weitere Problemquelle kann das Password selbst sein. Wenn es das
Zeichen '&num;' enth&auml;lt, wird alles Nachfolgende als Kommentar
verstanden. Leerzeichen oder TABs k&ouml;nnen gleiche Probleme
verursachen. L&ouml;sung: Setze das Password in Anf&uuml;hrungszeichen!


<!-- Config Sync PPP
-->

<sect> syncppp: Sync PPP  
<label id="syncppp">

<sect1> syncppp_whichppp: pppd, ipppd, syncPPP, asyncPPP .. was ist das alles? Welchen soll ich benutzen?  
<label id="syncppp_whichppp">
<p>
Siehe zu dieser Frage den Abschnitt in <em/async PPP/:
<ref id="asyncppp_whichppp" name="asyncppp_whichppp">.


<sect1> syncppp_compile: Wie kompiliere ich ISDN4LINUX mit syncPPP?  
<label id="syncppp_compile">
<p>
Zum Kompilieren des Kernels mit dem in ISDN4LINUX enthaltenen syncPPP
musst Du bei der Konfiguration die entsprechenden Fragen mit 'yes'
beantworten. Vergiss nicht, da&szlig; das Modul slhc.o vor dem Modul
isdn.o geladen werden muss, wenn die VJ-Kompression nicht in den Kernel
eingebunden wurde, wenn Du z.B. kein PPP und kein CSLIP im Kernel
hast. Der Gebrauch von VJ-Kompression ist problematisch und funktioniert
nicht verl&auml;&szlig;lich - die Unterst&uuml;tzung daf&uuml;r sollte jedoch
trotzdem im Kernel vorhanden sein, da es sonst zu Nebenwirkungen kommen
kann.

<sect1> syncppp_netinterface: Wie sollte ich mein Netzwerk-Interface benennen?  
<label id="syncppp_netinterface">
<p>
Der Name des Netzwerk-Interfaces sollte <em>immer</em> mit 'ippp'
beginnen, <em>nicht</em> mit 'syncppp' oder 'isdn', da in diesem Fall
die Verst&auml;ndigung mit dem ipppd nicht ordentlich funktionieren wird. Es
sollte also <em>mindestens</em> ein 'ippp0' vorhanden sein.

<sect1> syncppp_config: Wie richte ich ISDN4LINUX mit syncPPP ein?  
<label id="syncppp_config">
<p>
Synchronous PPP ist einfach eine weitere encapsulation f&uuml;r
ISDN4LINUX. Diese encapsulation wird 'syncppp' genannt. Hier folgt ein
Beispiel zur Konfiguration des link level device ippp0:
<code>
/sbin/isdnctrl addif ippp0
/sbin/isdnctrl encap ippp0 syncppp
</code>
Alle in Gebrauch befindlichen ippp*-Devices m&uuml;ssen separat konfiguriert
werden. Jedes ippp*-Device sollte mit einer eigenen IP-Addresse versehen
werden (routing!). Mehrere ippp*-Devices k&ouml;nnen einer einzelnen MSN
zugeordnet werden. Dann k&ouml;nnen mehrere Anrufer diese MSN gleichzeitig
nutzen.

Zum Gebrauch dieser Devices ben&ouml;tigst Du das Programm <tt/ipppd/, das
Du konfigurieren musst. ipppd muss nach dem Installieren der Module
einmal gestartet werden und dann kontinuierlich laufen, um das Hinaus-
und Hineinw&auml;hlen zu erm&ouml;glichen. Es kommuniziert mit den ISDN4LINUX
link level devices durch <tt>/dev/ippp0</tt> bis
<tt>/dev/ippp63</tt>. Ein einzelnes ipppd kann mit allen Devices
zugleich arbeiten. Wenn Du zwei PPP-Verbindungen zugleich brauchst,
musst Du ipppd an zwei Devices binden, usw. Dadurch stellt <tt/ipppd/
das Netzwerk-Device <tt>ippp0</tt> zur Verf&uuml;gung, das mit
<tt>ifconfig</tt> &uuml;berpr&uuml;ft werden kann (obwohl es den gleichen Namen
tr&auml;gt, darf das Netzwerk-Device <tt/ippp0/ nicht mit
<tt>/dev/ippp0</tt> verwechselt werden, das zur Kommunikation zwischen
ipppd und dem link level verwendet wird).

ipppd hat eine weitere Option: 'useifip' benutzt die IP-Addresse des
verbundenen Netzwerk-Interfaces (wenn diese nicht 0.0.0.0 lautet. Sogar
dann versucht ipppd, die Point-to-Point-Addresse als remote IP zu
benutzen). Zu Anfang solltest Du alle Kompressionsoptionen deaktivieren
(lzs/stac, bsd, van jacobson), sp&auml;ter kannst Du versuchen, sie zu
aktivieren (siehe Frage <ref id="syncppp_compression"
name="syncppp_compression">).

Es ist sehr wichtig, die Authentifikations-Informationen sauber
einzustellen. Unsaubere Authentifikation ist das vermutlich meist
beschriebene Problem in der Mailingliste. Arbeite bitte erst selbst den
Abschnitt <ref id="pap" name="pap"> komplett durch, bevor Du andere um
Hilfe bittest.

In dem Paket isdn4kernel-util findest Du ein Konfigurationsbeispiel in
der Datei <tt>etc/rc.isdn.syncppp</tt>.

<sect1> syncppp_busy: Wie stelle ich fest, da&szlig; ein Verbindungsaufbau erfolglos war (besetzt)?  
<label id="syncppp_busy">
<p>
Wenn Du die Option <tt/defaultroute/ angegeben hast, wartest Du ein paar
Sekunden und kannst dann pr&uuml;fen, ob die default route existiert. Eine
weitere M&ouml;glichkeit besteht durch die Option <tt>useifip</tt>. Du
findest dann im syslog Eintr&auml;ge wie <tt>'Local IP: x.y.z.a'</tt>
und/oder <tt>'Remote IP: x.y.z.a'</tt>. In beiden F&auml;llen besteht eine
Verbindung.

<sect1> syncppp_logindelay: Wie kann ich das Login beschleunigen?  
<label id="syncppp_logindelay">
<p>
Lass Dir eine Login-Prozedur im 'Debug-Log' protokollieren und suche
danach, welche Optionen der andere Computer ablehnt. Danach
konfigurierst Du ipppd ohne diese nicht ben&ouml;tigten Optionen. Ein
Seiteneffekt ist, da&szlig; solche unben&ouml;tigten Optionen die Redundanz
vergr&ouml;&szlig;ern (wenn der andere Computer z.B. Fehler hat und die
Optionen nicht korrekt ablehnt). Wie Du ein Logfile erstellst siehst Du
in <ref id="syncppp_log" name="syncppp_log">.

<sect1> syncppp_2configs: Ich m&ouml;chte Verbindungen mit entfernten Maschinen aufbauen, die unterschiedliche Konfigurationen ben&ouml;tigen. Die einzige Art dazu, die ich fand, besteht darin, den ipppd zu beenden und einen neuen mit anderer Konfiguration f&uuml;r die Verbindung mit der zweiten Maschine zu starten.    
<label id="syncppp_2configs">
<p>
Du musst ein Netzwerk-Interface explizit an ein ippp Device binden, mit
dem Du einen f&uuml;r dieses Interface individuell eingestellten ipppd
verbinden kannst. Mit dem (leider schlecht dokumentierten) Befehl
<code>
isdnctrl pppbind &lt;interface&gt; &lt;Number&gt;
</code>
kannst Du das Interface interface an das Device Number binden. Du l&ouml;st
diese Bindung wieder mit 'pppunbind'. 

<sect1> syncppp_pppbind: Wie funktioniert der (wenig dokumentierte) Befehl 'pppbind' in isdnctrl?  
<label id="syncppp_pppbind">
<p>
Zuerst musst Du wissen, wie ipppd seine Daten bekommt. Alle Daten, die
&uuml;ber die ISDN-Leitung hereinkommen, werden von den Netzwerk-Devices
empfangen, die mit isdnctrl eingestellt werden. Dann werden die Daten an
eines der Devices /dev/ippp* &uuml;bergeben - an eines, an dem der
Systemdienst ipppd auf Daten wartet.

Was die Netzwerk-Interfaces betrifft, so k&ouml;nnen alle ipppds die gerade
eingegangenen Daten behandeln. Daher ist es normalerweise unm&ouml;glich,
vorherzusagen, welcher ipppd Daten von welchem Netzwerk-Interface
empfangen wird.

In der Praxis installierst Du normalerweise mehrere ipppds mit
unterschiedlichen Einstellungen. Jeder davon sollte Daten
<em>ausschlie&szlig;lich</em> von einem bestimmten Netzwerk-Interface
empfangen, das ebenfalls speziell eingestellt wurde. Der Befehl
'pppdbind' erf&uuml;llt genau diesen Zweck. Mit:
<code>
isdnctrl pppbind &lt;interface&gt; &lt;Number&gt;
</code>
wird das Interface &lt;interface&gt; an das Device
/dev/ippp&lt;number&gt; gebunden.

Beispiel: Die folgende Konfiguration bindet das Interface 'ippp5'
an /dev/ippp2:
<code>
isdnctrl pppbind ippp5 2
</code>
Dementsprechend l&ouml;st der Befehl 'pppunbind' diese Bindung wieder
auf.

<sect1> syncppp_dynip: Ich m&ouml;chte dynamisch zugeteilte IP-Addressen nutzen. Wie muss ich das Netzerk-Device konfigurieren?  
<label id="syncppp_dynip">
<p>
Zumindest musst Du eine route angeben, die ein Datenpaket an das ippp
Netzwerk-Interface &uuml;bergibt, um ein Hinausw&auml;hlen auszul&ouml;sen. Eine
defaultroute auf das Interface ippp sollte funktionieren. Nun musst Du
Deinem Interface eine Dummy-Addresse zuteilen. Wenn Du aus irgendwelchen
Gr&uuml;nden die defaultroute nicht auf das Interface ippp setzen kannst,
nimmst Du irgendeine Addresse aus dem Subnet, aus dem Du Deine
dynamische IP-Nummer erwartest und setzt eine 'network route' f&uuml;r
dieses Subnet auf das Interface ippp. 
Rufe ipppd mit der Option 'ipcp-accept-local' auf um das &Uuml;berschreiben
der Dummy-Addresse zu erm&ouml;glichen. Du musst wissen, wie ipppd die
Addressen bekommt, die er einstellen muss. Wenn Du keine Option
aktivierst, versucht ipppd, die Addresse des localhost zu &uuml;bertragen!
Mit der Option 'noipdefault' verlangt er eine Addresse von der
entfernten Maschine. Mit 'useifip' bekommt er die Addressen vom
Netz-Interface. Du kannst die Addressen auch in der Optionszeile mit der
Option 'a.b.c.d:e.f.g.h' setzen. 
Hinweis: die IP-Addresse der entfernten Maschine muss lokal
gesetzt werden oder die entfernte Maschine muss sie in einem IPCP
Request senden. Wenn Deine Seite die IP-Addresse nach der Verhandlung
nicht kennt, wird sie die Verbindung abbrechen! Du musst das
&Uuml;berschreiben der Addressen mit den Optionen 'ipcp-accept-local/remote'
erlauben wenn Du Deine eigene oder die entfernte Addresse ausdr&uuml;cklich
gesetzt hast. Versuche als Beispiel diese Optionen:
<code>
/sbin/ipppd :&dollar;REMOTE noipdefault /dev/ippp0
</code>
wobei REMOTE die Addresse der entfernten Maschine ist (der Maschine, von
der Du Deine Addresse bekommst). 

<sect1> syncppp_ipx: Wie kann ich IPX &uuml;ber den ipppd betreiben?  
<label id="syncppp_ipx">
<p>
&Uuml;bergib dem ipppd die Option <tt/+ipx-protocol/.

<sect1> syncppp_faster: Wie kann ich meine Datentransferraten per PPP verbessern?  
<label id="syncppp_faster">
<p>
Du kannst mehr Kan&auml;le mittels MPPP einrichten (siehe Abschnitt
MPPP). Eine weitere M&ouml;glichkeit ist die Nutzung von Kompression, siehe
Frage <ref id="syncppp_compression" name="syncppp_compression">.

<sect1> syncppp_compression: Welche Kompressionsarten kann ich mit ipppd verwenden? 
<label id="syncppp_compression">
<p>
<itemize>
<item><em>Van Jacobson compression</em> (header compression) ist im
experimentellen Stadium. Bei manchen entfernten Ger&auml;ten funktioniert
sie, bei anderen nicht. Versuche sie auf eigenes Risiko. Wenn Du sicher
gehen willst, deaktiviere sie. 
<item><em>Lzs compression</em> (manchmal auch <em>Stac
compression</em> genannt) arbeitet ganz gut. Es ist jedoch etwas
manuelle Arbeit notwendig, um den Code in den ipppd einzuf&uuml;gen (siehe
Paket isdn4k-util). 
<item><em>Bsd compression</em> scheint ebenfalls zu funktionieren, ist 
aber im experimentellen Stadium. Du findest sie im CVS-Baum.
</itemize>

<!-- Trouble ipppd
-->

<sect1> syncppp_strategy: Ich kann keine Verbindung bekommen. Wie finde ich das Problem?  
<label id="syncppp_strategy">
<p>
Die Meldungen des ipppd sind sehr hilfreich... (siehe n&auml;chste Frage:
<ref id="syncppp_log" name="syncppp_log">)
<itemize>
<item>Schau Dir die Fehlermeldungen an und beachte die folgenden
Fragen... 
<item>Schau, ob Du ein paar Meldungen mit dem Text 'LCP-conf-req
SENT' (weniger als zehn) und dann ein 'Term-Req' findest.
<item>&Uuml;berpr&uuml;fe, ob die ISDN-Karte richtig konfiguriert wurde, wenn
der Computer scheinbar nicht w&auml;hlt (IRQ, IO, Protokoll falsch?)
<item>Erscheinen wenigstens ein paar 'RECV' Meldungen: gut! Die
Karte w&auml;hlt und der empfangende Computer versucht zu
antworten. Vielleicht funktioniert die Authentifizierung per pap/chap
nicht (siehe Frage <ref id="pap" name="pap">). Pr&uuml;fe die Einstellungen
des ipppd!
<item>Eine Meldung sagt, da&szlig; der ipppd aus irgendeinem Grund
beendet wurde: nicht so gut! Schau in <tt>/var/log/messages</tt>,
<tt>/var/log/debug</tt> und <tt>/var/adm/daemon</tt> (wenn vorhanden)
nach. Es k&ouml;nnte ein Fehler im ipppd sein.
<item>Die Fehlermeldung <tt>cause E0010</tt> ist <bf/KEIN/ Fehler! Es
ist nur die informative Meldung, da&szlig; die Verbindung beendet wurde.
</itemize>

<sect1> syncppp_log: Wie bekomme ich ein Log des ipppd?  
<label id="syncppp_log">
<p>
Wenn die Option "debug" f&uuml;r den ipppd gesetzt wurde, erscheinen die
Meldungen normalerweise in <tt>/var/log/messages</tt>,
<tt>/var/log/debug</tt> oder <tt>/var/adm/daemon</tt> (abh&auml;ngig von
Deiner Distribution).

Zur Fehlersuche kannst Du das PPP-Log in eine gesonderte Datei
umleiten. Editiere dazu die Datei <tt>/etc/syslog.conf</tt> und f&uuml;ge
die folgende Zeile hinzu (Achtung: gebrauche KEINE Leerzeichen sondern
TABs - Du findest weitere Details mit <tt>man 5 syslog.conf</tt>):
<code>
daemon.*          /var/log/ppp-log
</code>
Nun werden alle Informationen des Dienstes PPP in die Datei
/var/log/ppp-log geschrieben.  Emil Stephan <tt><htmlurl
url="mailto:ste@esqhen.su.eunet.de" name="ste@esqhen.su.eunet.de"></tt>
schrieb dazu:
<quote>
Entferne das Kommentar-Zeichen vor dieser Zeile in /etc/syslog.conf:
<code>
&num;*.=debug        /tmp/debug
</code>
Nach der &Auml;nderung dieser Datei kannst Du den syslogd mit 'kill -1 pid
of syslogd' neu starten. Die Meldungen in /tmp/debug k&ouml;nnen zur
Optimierung der PPP-Optionen genutzt werden.
</quote>

<sect1> syncppp_nopppsupport: Beim Start des ipppd bekomme ich die Fehlermeldung 'this systems lacks ppp support'.  
<label id="syncppp_nopppsupport">
<p>
Pr&uuml;fe, ob das Device 'ippp0' existiert (z.B. mit dem Programm
'ifconfig'). 
Der ipppd <em>braucht</em> dieses Device mit exakt <em>diesem</em>
Namen. Wenn es nicht existiert, muss es definiert werden:
<code>
isdnctrl addif ippp0
isdnctrl encap ippp0 syncppp
(weitere Informationen in der Dokumentation zu I4L...)
</code>
Vielleicht hast Du den ipppd mit den Quellen eines Kernels, den Du nicht
benutzt, kompiliert...
Siehe auch die Frage 'Wie sollte ich mein Netzwerk-Interface
benennen?' unter 'Sync PPP' im vorhergehenden Bereich
'Konfiguration'. 

<sect1> syncppp_nousabledevice: Wenn ich ipppd starten will, bekomme ich die Meldung 'Can't find usable ippp device'  
<label id="syncppp_nousabledevice">
<p>
Diese Meldung taucht dann auf, wenn das Verbindungs-Interface
hinausw&auml;hlen soll, ipppd aber noch nicht l&auml;uft oder nicht verf&uuml;gbar
ist.

<sect1> syncppp_starterror: Beim Start von ipppd bekomme ich nur Fehlermeldungen vom I4L-Treiber.  
<label id="syncppp_starterror">
<p>
Wenn ipppd gestartet wird, ruft er Funktionen auf, die den Transport
eines Netzwerkpaketes ausl&ouml;sen k&ouml;nnen (z.B. gethostbyname()). Ohne
ipppd (da zu dieser Zeit ipppd noch nicht komplett gestartet ist) kann
dieser Netzwerkzugriff nicht durchgef&uuml;hrt werden.  Versuche, die
gesuchten Host-Namen in die lokale /etc/hosts zu schreiben oder sonst
irgendwie zu definieren, soda&szlig; sie ohne Zugriff auf das
ISDN-/ippp-Interface aufgel&ouml;st werden k&ouml;nnen.

<sect1> syncppp_framesdelayed: Ich bekomme die Meldung <tt>IP frames delayed</tt> - aber keine Verbindung.  
<label id="syncppp_framesdelayed">
<p>
Hast Du tats&auml;chlich hinausgew&auml;hlt? Sieh Dir die Frage <ref
id="dialout_dialmode" name="dialout_dialmode"> und Deine Konfiguration
der verschiedenen Dialmodi an.

<sect1> syncppp_noroute: Ich kann mit dem Befehl <tt>isdnctrl dial ippp0</tt> nicht hinausw&auml;hlen. Die Route zu ipppd scheint zu fehlen, obwohl ich sie <bf/wirklich/ gesetzt habe (<tt>network unreachable</tt>). Mit dem alten Kernel 2.0 funktionierte alles einwandfrei!  
<label id="syncppp_noroute">
<p>
In den neueren Kernel muss der Befehl <tt>route</tt> als letztes
Kommando vor dem W&auml;hlbefehl stehen. Anderenfalls l&ouml;scht der
Kernel die Route.

<sect1> syncppp_nodefaultroute: Nachdem ipppd hinausgew&auml;hlt hat ist meine defaultroute verschwunden.  
<label id="syncppp_nodefaultroute">
<p>
Das liegt am Kernel. Bei neueren Kernel (= 2.0.x) gibt es einige
&Auml;nderungen beim Routing. L&ouml;sung: installiere ein Script
/etc/ppp/ip-up, das in etwa so aussieht:
<code>
&num;!/bin/sh
/sbin/route add default ippp0
</code>
Beachte bitte, da&szlig; das bei Kernel 2.2.x NICHT funktioniert (das
Routing wurde wieder ge&auml;ndert). &Uuml;bergib statt dessen die Option
"defaultroute" an den ipppd.

Wenn Du Deine Verbindungen manuell herstellst, kannst Du so etwas wie
dieses Script benutzen:
<code>
/sbin/isdn
&num;! /bin/sh
case &dollar;1 in
on)
/sbin/isdnctrl dial ippp0       &num;  aufbauen der Verbindung
sleep 5                         &num;  abwarten
/sbin/route add default ippp0   &num;  Route setzen
;;
off)
/sbin/isdnctrl hangup ippp0     &num;  Verbindung beenden
/sbin/route del default         &num;  L&ouml;schen der Route
;;
*)
echo -e '\a Usage: 'isdn on' or 'isdn off''
;;
esac
</code>
Beachte bitte, da&szlig; bei Kernel 2.2.x die Kommandos <tt>route add
default</tt> und <tt>route del default</tt> NICHT benutzt werden
d&uuml;rfen. &Uuml;bergib statt dessen die Option "defaultroute" an den
ipppd.

<sect1> syncppp_packettoolarge: Ich bekomme oft die Fehlermeldung <tt>hscx_empty_fifo: incoming packet too large</tt>  
<label id="syncppp_packettoolarge">
<p>
Vermutlich ist eine der Kompressionsoptionen aktiviert (funktionieren
mit I4L nicht so gut). Mehr dazu in der n&auml;chsten Frage.  Ein weiterer
m&ouml;glicher Grund k&ouml;nnte ein IRQ-Problem sein - siehe Frage 'Warum
sollte ich IRQ 12 und 15 f&uuml;r meine ISDN-Karte vermeiden?'.  Das Problem
kann auch durch '&num;'-Zeichen in der Datei pap-secrets verursacht
werden. In diesem Fall musst Du den Benutzernamen und/oder das Passwort
mit Anf&uuml;hrungszeichen einrahmen (je nachdem, was betroffen ist).

<sect1> syncppp_slow: Die Verbindung mit ipppd scheint zu stehen, bricht aber schlie&szlig;lich zusammen oder ist sehr langsam.  
<label id="syncppp_slow">
<p>
Vermutlich ist eine der Kompressionsoptionen aktiviert (die I4L nicht
sauber behandeln kann). Verbreiteter Fehler: '-vj' muss *zus&auml;tzlich* zu
'-vjccomp' gesetzt werden, um die VJ-Kompression v&ouml;llig abzuschalten -
in den Beispielscripts von ipppd ist diese Option schon nicht mehr
enthalten.  Auch andere Kompressionsmodi (bsd, pccomp) k&ouml;nnen Probleme
verursachen. Daher solltest Du alle Kompressionsoptionen deaktivieren
(siehe auch Frage <ref id="syncppp_compression"
name="syncppp_compression">). Auch die Option 'noccp' kann da helfen.

<sect1> syncppp_loadproblem: Ich habe nur dann Probleme mit ipppd, wenn die Verbindung sehr stark belastet wird. Dann bleibt alles stehen. Wodurch kann das hervorgerufen werden?  
<label id="syncppp_loadproblem">
<p>
Sven Engelhardt <tt><htmlurl url="mailto:sven@sik.de"
name="sven@sik.de"></tt> schrieb am 12. Dezember 1996:
<quote>
Wir sind ein ISP in Dresden und benutzen Linux (neben anderen Systemen)
f&uuml;r unseren Zugang (mit I4L ebenso wie mit externen
Terminaladaptern).  Wir haben dieses Problem haupts&auml;chlich mit
Kunden, die unter Windows 95 und NT die 'enthaltene' (Modem Netzwerk)
Software benutzen. Es ist dabei unerheblich, ob der Kunde sich mit
asynchronem oder synchronem PPP einw&auml;hlt. Es spielt auch keine
Rolle, welche Modememulation er auf seiner Seite benutzt. Was sie
gemeinsam haben ist, da&szlig; die Verbindung mit Microsoft's
Modemadapter und Microsoft's PPP hergestellt wird (obwohl mir ein
Kollege k&uuml;rzlich von einem &auml;hnlichen Problem mit einem
Macintosh-Kunden erz&auml;hlte).  Da es bei PPP keinen Unterschied
macht, wer der Server und wer der Client ist, solltest Du Deinen ISP
fragen, welche Hardware er zur Einwahl benutzt (wir hatten keine
Probleme mit Linux-Kunden und Benutzern von Trumpet Winsock, daher
vermuten wir einen Fehler in MS-PPP).  Die folgende Abhilfe funktioniert
normalerweise bei uns: (es ist keine Kur, aber es lindert die
Schmerzen...)
<itemize>
<item>Reduziere den Wert f&uuml;r Max MTU auf 576 oder sogar 296
<item>Reduziere das DefaultRcvWindow auf 2144
</itemize>
Bei Windows 95 sind das zwei Eintr&auml;ge in der Registry, unter Linux
kannst Du die Optionen 'mtu 576' und 'mru 576' f&uuml;r PPP
setzen. (Siehe auch: <tt><url
url="http://www.winfiles.com/connect/trouble.html"></tt>)
</quote>

Erik Corry <tt><htmlurl url="mailto:ec@sign-tronic.dk"
name="ec@sign-tronic.dk"></tt> f&uuml;gte am 16. Dezember 1996 hinzu:
<quote>
Bei mir half weder das Abschalten der PPP Kompressionsoption noch das
Setzen von mru/mtu auf 296. Was half, war der AT-Befehl:
<code>
AT&amp;B512
</code>
der die gesendeten Pakete auf 512 Bytes begrenzt.
</quote>

<sect1> syncppp_mtu: Mein ipppd funktioniert. Ich bekomme jedoch laufend die Meldung 'pppd(104): ioctl(SIOCSIFMTU): Invalid argument'.  
<label id="syncppp_mtu">
<p>
Wenn der Wert mtu nicht festgesetzt ist, wird ein Defaultwert angenommen
- m&ouml;glicherweise '0', der nat&uuml;rlich nicht korrekt sein
kann. F&uuml;ge <tt>'mtu 1024'</tt> zu Deinen Optionen f&uuml;r ipppd
hinzu (1500 kann auch funktionieren).

<sect1> syncppp_1stpacket: Bei automatischer Hinauswahl mit dynamischer Zuteilung der IP-Addresse geht das erste IP-Paket verloren.  
<label id="syncppp_1stpacket">
<p>
Es gibt ein paar Probleme mit der Hinauswahl in Verbindung mit syncPPP
und dynamischer Zuteilung der IP-Addresse. In diesem Fall &auml;ndert sich
Deine IP-Addresse w&auml;hrend Pakete auf die Versendung warten. Alle
Pakete, die vor dieser IP-Address&auml;nderung verschickt werden, haben dann
die falsche R&uuml;ckantwort-Addresse und werden nie eine R&uuml;ckmeldung
erhalten. M&ouml;gliche L&ouml;sungen sind:
<itemize>
<item>Manuelle Hinauswahl mit 'isdnctrl dial ipppN'
<item>Benutze diald zur Kontrolle &uuml;ber den Zeitpunkt des
Verbindungsauf-/abbaus.
<item>Besorge Dir eine feste IP-Addresse
<item>Eine Abhilfe ist in den neuesten Kernels enthalten und kann so
aktiviert  werden:
<code>
echo 7 > /proc/sys/net/ipv4/ip_dynaddr
</code>
Bei einer SuSE-Distribution kannst Du diese Abhilfe durch das Setzen von
<tt/IP_DYNIP='yes'/ in <tt>/etc/rc.config</tt> aktivieren.
<item>Erh&ouml;he den Wert f&uuml;r die Wiederholung des
Verbindungsaufbaus auf Deiner Windows-Maschine. &Auml;ndere in der
Registry den Wert
<tt>Hkey_Local_Machine\\System\\CurrentControlSet\\Services\\VxD\
\MSTCP\\MaxConnectRetries</tt> von 3 auf einen h&ouml;heren Wert (5 oder
7).
</itemize>

<sect1> syncppp_droppacket: Was bedeutet die Meldung 'No phone number, packet dropped'?  
<label id="syncppp_droppacket">
<p>
Michael Engert <tt><htmlurl url="mailto:michi@bello.wor.de"
name="michi@bello.wor.de"></tt> schrieb im Nov/Dez 1996:

Das bedeutet, da&szlig; Dein Computer ein IP-Paket von jemandem hat, der
vor wenigen Sekunden online war aber die Verbindung inzwischen
unterbrochen hat. Dein Computer versucht nun, dieses Paket zu
verschicken und findet auch eine passende Route. Das Interface
isdn(0|1|...) kann jedoch den Zielcomputer nicht erreichen, da es keine
Telefonnummer zum Hinausw&auml;hlen findet.

<sect1> syncppp_leadingzero: Warum w&auml;hlt mein ipppd eine Null zuviel (<tt>'ippp0: dialing 0 089XXXXXX...'</tt>)? Ich habe keine Nebenstellen!  
<label id="syncppp_leadingzero">
<p>
Die erste Null wird nicht gew&auml;hlt. Sie zeigt die Anzahl der
W&auml;hlversuche, festgelegt vom Parameter <tt/isdnctrl dialmax/.

<sect1> syncppp_ethfake: Wenn ich die Werte meines ISDN-Devices mit ifconfig abfrage, wird es mit HWaddr und IRQ=0 und base address = 0 angezeigt.  
<label id="syncppp_ethfake">
<p>
Das ISDN-Device t&auml;uscht ein Ethernet-Device vor. Es ignoriert IRQ und baseaddr
und ben&ouml;tigt nur die HWaddr f&uuml;r die Ethernet-Encapsulation.

<sect1> syncppp_lzsproblem: Ich bekomme eine Fehlermeldung: <tt>kernel check for lzs failed</tt>?
<label id="syncppp_lzsproblem">
<p>
Das bedeutet, da&szlig; ipppd versucht, die LZS-Kompression zu nutzen,
aber kein kompiliertes Modul mit dem entsprechenden Code findet. Die
Fehlermeldung hat nur kosmetische Bedeutung, da das System
weiterarbeitet. Du kannst entweder die LZS-Kompression abstellen (setze
<tt>noccp</tt> als Option für ipppd) oder das LZS Modul kompilieren und
laden.


<!-- Config Async PPP
-->

<sect> asyncppp: Konfiguration von asynchronem PPP  
<label id="asyncppp">

<sect1> asyncppp_whichppp: pppd, ipppd, asyncPPP, syncPPP - was ist das? Welches sollte ich benutzen?  
<label id="asyncppp_whichppp">
<p>
<bf>asyncPPP</bf> ist ein auf Zeichen basierendes Protokoll, das
vorwiegend auf analogen seriellen Leitungen verwendet wird (async =
asynchron). Du musst dazu das Programm <tt/pppd/ mit den Devices ttyI*
benutzen.

Im Gegensatz dazu ist <bf>syncPPP</bf> ein bit-orientiertes Protokoll
(sync = synchron), bei dem das originale <tt/pppd/ nicht benutzt werden
kann. Michael Hipp hat eine abgeleitete Version namens <tt/ipppd/
geschrieben, die die Netz-Devices ipppd* benutzt.

I4L kann beide Arten verwenden. Es kommt darauf an, was Deine
ISDN-Gegenstelle benutzt. Wenn Du sofort nach Verbindungsaufbau Frames
gesendet bekommst, bist Du vermutlich mit einer Maschine mit syncPPP
verbunden. Ein Anzeichen einer asyncPPP-Verbindung ist es, wenn Du &uuml;ber
einen Terminalschirm einloggen und dann <tt/pppd/ starten kannst.

Normalerweise funktioniert <bf/syncPPP/ recht gut und es ist etwas
effizienter. Die Vorteile neuer Leistungsmerkmale des <tt/pppd/
erh&auml;ltst Du beim Gebrauch von <bf/asyncPPP/.

<sect1> asyncppp_config: Wie richte ich asyncPPP ein?  
<label id="asyncppp_config">
<p>
Richte einen ganz normalen pppd ein, allerdings zum Gebrauch eines der
ttyI* Devices, z.B. /dev/ttyI0. Du kannst mehrere pppds mit
unterschiedlicher Einstellung auf unterschiedlichen ttyI* Devices
einrichten.

Es ist sehr wichtig, da&szlig; die Authentifizierungsinformationen
richtig eingestellt werden. Unsaubere Authentifikation ist das
vermutlich meist beschriebene Problem in der Mailingliste. Bitte,
arbeite den Abschnitt <ref id="pap" name="pap"> erst selbst komplett
durch, bevor Du andere um Hilfe bittest.

Bei Problemen solltest Du auch den Abschnitt &uuml;ber die Probleme bei
syncPPP beachten, da sowohl pppd (asyncPPP) als auch ipppd (syncPPP)
viele Konfigurationsprobleme gemein haben.

<sect1> asyncppp_logindelay: Wie kann ich das Login beschleunigen?  
<label id="asyncppp_logindelay">
<p>
Lass Dir eine Login-Prozedur im 'Debug-Log' protokollieren und suche
danach, welche Optionen der andere Computer ablehnt. Danach
konfigurierst Du ipppd ohne diese nicht ben&ouml;tigten Optionen. Ein
Seiteneffekt ist, da&szlig; solche unben&ouml;tigten Optionen die Redundanz
vergr&ouml;&szlig;ern (wenn der andere Computer z.B. Fehler hat und die
Optionen nicht korrekt ablehnt). Wie Du ein Logfile erstellst siehst Du
in 'Wie erstelle ich ein Log f&uuml;r ipppd'.

<sect1> asyncppp_fast: Wie kann ich meine Datentransferraten per PPP verbessern?    
<label id="asyncppp_fast">
<p>
Du kannst mehrere Kan&auml;le mit MPPP nutzen (siehe Frage <ref
id="2channel_mppp" name="2channel_mppp">).  
F&uuml;r alle, denen das zu teuer ist und die <em>asyncPPP</em> benutzen,
gibt es einen kleinen Trick. Mit der Option 'asyncmap 0' vermeidest Du,
da&szlig; Steuerzeichen (ASCII-Codes kleiner als 32) in extra Zeichen
eingerahmt werden, die ihre Sonderstellung markieren sollen (derartige
Mechanismen m&uuml;ssen zwischen beiden Partnern abgesprochen werden,
andernfalls kommt es zu Missinterpretationen und
Synchronisationsverlust).
Wenn die andere Seite das mitmacht, verbesserst Du die Transferrate um
ungef&auml;hr 12&percnt; (im Besten aller F&auml;lle!).

<sect1> asyncppp_log: Wie erstelle ich ein Log des pppd?  
<label id="asyncppp_log">
<p>
Schau bei der Frage <ref id="syncppp_log" name="syncppp_log"> nach, es
funktioniert mit pppd genauso.

<sect1> asyncppp_suddendeath: Der Verbindungsaufbau funktioniert gut. Der pppd bricht jedoch kurz danach ab (d.h., das erste Byte geht durch, danach h&auml;lt alles an).  
<label id="asyncppp_suddendeath">
<p>
Das wird vermutlich durch eine nicht korrekte Blockgr&ouml;&szlig;e auf
Deiner Seite verursacht. Verwende f&uuml;r Dein ttyI*-Device den Init-String
<tt/AT&amp;B512/ oder eine noch kleinere Blockgr&ouml;&szlig;e.


<!-- Raw IP
-->

<sect> rawip: Raw IP  
<label id="rawip">

<sect1> rawip_whatis: Was ist Raw IP, wann sollte ich es benutzen?  
<label id="rawip_whatis">
<p>
Raw IP kommt ohne Protokolle wie X.75, HDLC (f&uuml;r Modememulation, usw.)
oder PPP aus. Die TCP/IP-Pakete werden direkt ausgetauscht.  Raw IP hat
sowohl Vor- als auch Nachteile.  Vorteile:
<itemize>
<item> Kein handshaking (= schnellerer Verbindungsaufbau)
<item> Autorisierung durch Caller ID (= schnell, sicher, kein Password)
<item> Feste IP-Addresse (= eine abgebbrochene Verbindung kann durch
Wahlwiederholung fortgesetzt werden)
<item> H&ouml;here Datentransferraten
<item> Bessere Stabilit&auml;t (kleinerer Treiber = fast ohne Fehler)
</itemize>
Nachteile:
<itemize>
<item> Kein handshaking 
=&gt; Die Konfiguration muss vorher stattfinden (IP-Addressen,...)
=&gt; sollte nicht mit mehreren Providern gleichzeitig genutzt werden 
<item> Autorisierung nur durch Caller ID
=&gt; Einwahl nur von einer vorher bekannten Telefonnummer m&ouml;glich
<item> Feste IP-Addresse
=&gt; muss im Voraus bekannt sein, es werden mehr IP-Addressen
ben&ouml;tigt, kein dynamisches Zuteilen von Addressen m&ouml;glich.
</itemize>
Aufgrund dieser Zusammenstellung sollte klar sein, unter welchen
Voraussetzungen die Verwendung von raw IP sinnvoll ist.
 

<!-- ttyI* devices
-->

<sect> ttyI: Konfiguration der ttyI* Devices ('Modememulation')  
<label id="ttyI">

<sect1> ttyI_nomodem: Die ttyI* Devices emulieren doch ein analoges Modem, oder nicht?  
<label id="ttyI_nomodem">
<p>
Nein! Die ttyI* Devices bieten nur ein &auml;hnliches
Kommunikations-Interface, f&uuml;r das alle Befehle mit <em/AT/
beginnen. Das vereinfacht die Benutzung alter Software, die f&uuml;r Modems
geschrieben wurde. <bf>Die Verbindung mit einem entfernten analogen
Modem mittels ttyI* Devices ist nicht m&ouml;glich!</bf> Die tats&auml;chliche
Verbindung l&auml;uft digital, nicht analog.

<sect1> ttyI_dev: Welche Devices sollte ich f&uuml;r ausgehende/eingehende Rufe verwenden?  
<label id="ttyI_dev">
<p>
Es sollten nur die ttyI* Devices verwendet werden. Die cui* Devices
werden nur aus Kompatibilit&auml;tsgr&uuml;nden angelegt. Seit es mgetty gibt
besteht kein Grund, die cui* Devices weiterhin zu benutzen. Bei ihrer
Verwendung funktioniert das locking nicht einwandfrei (mehrere Programme
k&ouml;nnten gleichzeitig versuchen, auf das gleiche Device zuzugreifen).

<sect1> ttyI_hdlc: Wie stelle ich die Modememulation von X.75 um auf HDLC?  
<label id="ttyI_hdlc">
<p>
Mit der Option S14=3; z.B. 'ATS14=3'..

<sect1> ttyI_uucp: Wie kann ich mit Taylor-UUCP unter Verwendung von ISDN4LINUX Nachrichten holen?  
<label id="ttyI_uucp">
<p>
Wie gewohnt, genauso wie mit seriellen Schnittstellen. Benutze einfach
/dev/ttyI* als Device. Du musst nur die richtige MSN oder EAZ f&uuml;r die
Modememulation per Init-String setzen: 'AT&amp;Emsn/eaz'.

<sect1> ttyI_speed: Welche Geschwindigkeit sollte ich f&uuml;r die ttyI* Devices einstellen?  
<label id="ttyI_speed">
<p>
Das spielt keine Rolle. Der Treiber nutzt intern immer die volle
Geschwindigkeit von ISDN. Das wird auch in der Verbindungsmeldung
angezeigt.


<!-- Trouble ttyI* devices
-->

<sect1> ttyI_nocarrier: Beim W&auml;hlen mit 'ATD.....' bekomme ich immer die Antwort 'NO CARRIER'.  
<label id="ttyI_nocarrier">
<p>
Vor dem W&auml;hlen musst Du den String 'AT&amp;E123456' eingeben
(wobei 123456 Deiner MSN entspricht; bei 1TR6 muss die einstellige EAZ
angegeben werden).


<sect1> ttyI_noincall: Mein ttyI* Device/pppd registriert keine ankommenden Gespr&auml;che.  
<label id="ttyI_noincall">
<p>
Vermutlich hast Du Deiner Modememulation nicht mitgeteilt (mit
<tt>AT&amp;E</tt>), welche MSN benutzt werden soll. Wenn Deine MSN
z.B. 123456 lautet, musst Du <tt>AT&amp;E123456</tt> eingeben.

<sect1> ttyI_callphone: Warum kann ich nicht &uuml;ber die ttyI* Devices mit meinem Telefon oder Fax w&auml;hlen?  
<label id="ttyI_callphone">
<p>
Das kannst Du. ISDN unterscheidet jedoch die verschiedenen Dienste. Alle
&uuml;ber die ttyI* Devices hinausgehenden Rufe benutzen den Dienst 'Digital
Data', der zu Telefon und Fax inkompatibel ist. Dadurch geht der Ruf nie
hinaus. &Auml;ndere die Diensteerkennung mit dem Befehl <tt>ATS18=1</tt> auf
Audio, dann kannst Du das Telefon oder das Fax w&auml;hlen lassen.

<sect1> ttyI_noconnect: Ich bekomme keine Verbindung zu meiner ISDN Mailbox/BBS.  
<label id="ttyI_noconnect">
<p>
Da gibt es mehrere m&ouml;gliche Protokolleinstellungen. Es gibt HDLC, X.75
und mehrere m&ouml;gliche Blockgr&ouml;&szlig;en bei X.75. Die Blockgr&ouml;&szlig;e
&uuml;bergibst Du der Modememulation mit <tt>AT&amp;B</tt>. Gebr&auml;uchlich
ist eine Blockgr&ouml;&szlig;e von 2048 Byte: <tt>AT&amp;B2048</tt>.

<sect1> ttyI_forcehangup: Meine Modememulation h&auml;ngt. Wie kann ich meine Karte zum Auflegen zwingen?  
<label id="ttyI_forcehangup">
<p>
Wenn tats&auml;chlich kein Prozess mehr Deine Modememulation benutzt,
versuche dieses:
<code>
cu -l /dev/ttyI0 dir
+++
ath0
&tilde;.
</code>
Vor und nach '+++' musst Du eine Sekunde warten, sonst erkennt Deine
Modememulation die Escapesequenz nicht (wie bei einem normalen
Modem). Beachte Prozesse (mit 'ps -ax'), die sowas wie 'I0' oder 'I1' in
der zweiten Spalte zeigen. Sie haben ein ISDN Terminal als
kontrollierendes Terminal. Du musst sie eventuell mit kill beenden.


<sect1> ttyI_channelclosed: W&auml;hrend einer Verbindung &uuml;ber ttyI bekomme ich eine Meldung des Kernels: 'teles_writebuf: channel not open'. Danach wird keine Eingabe mehr von der Verbindung angenommen.  
<label id="ttyI_channelclosed">
<p>
Das kann geschehen, wenn der Partner die gro&szlig;en Frames von I4L
nicht annehmen kann und den B-Kanal w&auml;hrend der &Uuml;bertragung
schlie&szlig;t. Versuche, die Frames mit 'AT&amp;B512' zu verkleinern.

<sect1> ttyI_uucp: Beim Gebrauch von UUCP mit X.75 bekomme ich immer &Uuml;bertragungsfehler!  
<label id="ttyI_uucp">
<p>
Andreas Gutzwiller <tt><htmlurl url="mailto:andy@hippo.proxyon.imp.com"
name="andy@hippo.proxyon.imp.com"></tt> schrieb am 5. Dezember 1996:
<quote>
Ich musste folgende Einstellungen benutzen, sonst bekam ich nur
Fehlermeldungen.
<code>
&num; Prot
protocol-parameter g packet-size 512
protocol-parameter g short-packets y
protocol-parameter g window 7
protocol-parameter g remote-window 7
protocol-parameter v packet-size 512
</code>
Nun erreiche ich mit gro&szlig;en Paketen ca. 7300 cps.
</quote>
Holger Burbach <tt><htmlurl url="mailto:holly@cthulhu.pfalz.de"
name="holly@cthulhu.pfalz.de"></tt> bot am 5. Februar 1997 eine andere
L&ouml;sung an:
<quote>
Ich habe mehrere XP-User, die ohne Probleme pollen. Ich tat das
Folgende: Zuerst setzte ich die Gr&ouml;&szlig;e der zu sendenden Pakete
f&uuml;r ttyI? auf 1024 ('AT&amp;B1024') und anschlie&szlig;end die
Paketgr&ouml;&szlig;e f&uuml;r das g Protokoll in UUCP:
<code>
protocol-parameter g packet-size 2048
protocol-parameter g remote-packet-size 0
</code>
Wie gesagt, es funktioniert gut..
</quote>


<!-- Dial on demand = Unwanted dialouts
-->

<sect> dod: Unerw&uuml;nschte Hinauswahl mit dial-on-demand  
<label id="dod">

<sect1> dod_how: Wie funktioniert dial-on-demand?  
<label id="dod_how">
<p>
Nachdem Du ein Netzwerk-Interface eingerichtet und eine Route daf&uuml;r
definiert hast, werden alle IP-Pakete, f&uuml;r die eine Route dorthin
eingestellt wurde, zu diesem Interface geleitet. Wenn <tt/autodial/
aktiviert wurde (siehe Frage <ref id="dialout_dialmode"
name="dialout_dialmode"> zu den Dialmodes), wird das Interface beim
Vorliegen von abzusendenden IP-Paketen automatisch eine Hinauswahl
durchf&uuml;hren. Das bedeutet, da&szlig; <bf>jeder</bf> Benutzer eine
Hinauswahl verursachen kann.

Beispiel: Du &ouml;ffnest einen Browser mit leerer Startseite oder mit einer
lokalen Homepage. Es passiert nichts. Wenn Du nun einen URL eingibst,
werden dadurch IP-Pakete zum Netzwerk-Interface gesendet und es wird
eine Hinauswahl ausgel&ouml;st.

Der Gebrauch von dial-on-demand ist ein gef&auml;hrliches (= kostspieliges)
Feature: siehe Frage <ref id="dod_disaster" name="dod_disaster">.

<sect1> dod_disaster: Was ist ein Geb&uuml;hren-GAU?  
<label id="dod_disaster">
<p>
Der Geb&uuml;hren-GAU kann aus verschiedenen Gr&uuml;nden eintreten (Details
unter <ref id="dod_causes" name="dod_causes">). Das Resultat ist jedoch
gleich: Dein Computer w&auml;hlt Deinen ISP &ouml;fter an als Dir lieb ist und
erh&ouml;ht dadurch Deine Telefonrechnung um einen gro&szlig;en Betrag
(besonders dann, wenn Du nicht nur die Online-Zeit sondern auch einen
Mindestbetrag/Einheitsbetrag f&uuml;r jede Einwahl bezahlen musst). Der
Ausdruck 'gro&szlig;er Betrag' ist recht dehnbar. Alles ist m&ouml;glich:
<itemize>
<item>"Billig": Jede DNS-Anfrage &ouml;ffnet die Leitung und verursacht
mehrere W&auml;hlvorg&auml;nge pro Tag (ja nach Deinen Programmen). Bei 10
Vorg&auml;ngen pro Tag sind das etwa 300 unn&ouml;tige W&auml;hlvorg&auml;nge pro Monat.
<item>"Nicht ganz so billig": Irgendein Windows 95 Computer in Deinem
LAN l&ouml;st alle 15 Minuten einen W&auml;hlvorgang f&uuml;r eine seiner albernen
Meldungen aus (siehe Frage <ref id="dod_winclient"
name="dod_win95">). Das macht 96 Anwahlen pro Tag oder 2880 pro Monat.
<item>"Mittelma&szlig;": Dein Email-Programm ist so eingestellt,
da&szlig; es alle 5 Minuten pr&uuml;ft, ob neue Nachrichten bei Deinem ISP
bereit liegen. Das ergibt 288 W&auml;hlvorg&auml;nge pro Tag, 8640 pro Monat.
<item>"Kostspielig": 'Keep alive'-Pakete verhindern, da&szlig; Deine
Verbindung je getrennt wird. Du bist dauernd online. Hinweis: DIES IST
NICHT DER SCHLIMMSTE FALL!
<item>"Noch kostspieliger": Irgend etwas geht schief mit den dynamischen
Addressen und es bleiben beim Auflegen offene Sockets &uuml;brig. Diese
l&ouml;sen beim Versuch, das Problem zu l&ouml;sen, eine neue Anwahl aus. Da Du
jetzt aber eine neue IP-Addresse hast, kann das Problem nicht aufgel&ouml;st
werden. Die Verbindung wird schlie&szlig;lich beendet (abh&auml;ngig von
Deiner Timeout-Einstellung), wird aber sofort wieder hergestellt, da die
Sockets eine weitere Anwahl ausl&ouml;sen. Hast Du kein Gl&uuml;ck, so bekommst
Du nie die gleiche IP-Addresse wieder und die Sache wiederholt sich
endlos. Du bist fast dauernd online, jedoch musst Du zus&auml;tzlich noch
f&uuml;r viele W&auml;hlvorg&auml;nge bezahlen: Wenn Dein Timeout auf 30 Sekunden
steht, werden daraus 2880 W&auml;hlvorg&auml;nge pro Tag, 86400 pro Monat. 
<item>"Am kostspieligsten - Schlimmster Fall": Du konfigurierst
dialout/callback falsch. Wenn Dein (der initiierende) Computer Deinen
ISP anw&auml;hlt und dieser dann die Verbindung abbricht (weil z.B. die
Anmeldung fehlschl&auml;gt - vielleicht ist er auch falsch konfiguriert), so
w&auml;hlt Dein Computer sofort neu. Dies wird nur begrenzt durch die Zeit,
die f&uuml;r das W&auml;hlen ben&ouml;tigt wird. Wenn wir f&uuml;r jeden Versuch 2
Sekunden veranschlagen (konservativ gesch&auml;tzt), werden daraus 43200
Vorg&auml;nge pro Tag oder 1296000 pro Monat!
</itemize>

Dies ist kein Scherz, all diese Dinge sind tats&auml;chlich passiert, sogar
bei richtigen ISDN4LINUX-Experten! Schau bei Frage <ref id="dod_off"
name="dod_off"> nach, wie Du jedes Risiko, da&szlig; dies Dir passiert,
vermeiden kannst.

<sect1> dod_causes: Wodurch wird ein Geb&uuml;hren-GAU ausgel&ouml;st?  
<label id="dod_causes">
<p>
Da gibt es viele M&ouml;glichkeiten. Bei Frage <ref id="dod_strategy"
name="dod_strategy"> erf&auml;hrst Du, wie Du herausfindest was gerade
passiert. Bei der Frage <ref id="dod_disaster" name="dod_disaster">
erf&auml;hrst Du dann, wie teuer das sein kann. Es folgt eine nicht
vollst&auml;ndige Liste von Ursachen:
<enum>
<item>Du hast Deinen Kernel irrt&uuml;mlich mit der Option Bridging
kompiliert.
<item>ARP Anfragen oder Broadcasts? Du solltest <tt>ifconfig</tt> mit
den Optionen <tt>-arp</tt> und <tt>-broadcast</tt> aufrufen und dadurch
das Herstellen von Verbindungen aus diesen Gr&uuml;nden vermeiden. Du
erkennst diese Ursache daran, da&szlig; Du einen W&auml;hlvorgang hast aber
<em/keine/ Daten &uuml;bertragen werden.
<item>Andere Broadcasts von den Interfaces werden von ISDN
weitergeleitet. 
<item>Wenn IP-Verbindungen noch ge&ouml;ffnet sind w&auml;hrend die Leitung
geschlossen wird und die IP-Addressen dynamisch vergeben werden, ist die
Katastrophe unausweichlich. Es wird eine neue Verbindung aufgebaut, um
die offenen IP-Verbindungen zu schlie&szlig;en. Das misslingt, da die
neue IP-Addresse anders lautet. Die Leitung wird aufgelegt aber die
offenen IP-Verbindungen sind immer noch vorhanden. Daher wird neu
gew&auml;hlt, und so weiter... Dies wird nur durch den RST-Revoking Patch
vermieden, der in die Kernel 2.0.x eingebunden ist, jedoch nicht in den
Kerneln 2.1/2.2/2.3. Du kannst jedoch einen angepassten Patch f&uuml;r die
Kernel 2.2.x und etwas Hintergrundwissen dazu von <url
url="http://www.another.de/linux/router/"> bekommen. Benutze dabei die
Option "defaultroute" des ipppd anstatt <tt>route add/del default</tt>
in ip-up/ip-down. 
<item>Anfragen von Deinem lokalen DNS l&ouml;sen einen W&auml;hlvorgang aus:
siehe Frage <ref id="dod_localdns" name="dod_localdns">.
<item>Sendmail l&ouml;st den W&auml;hlvorgang aus: siehe Frage <ref
id="dod_sendmail" name="dod_sendmail">.
<item>Windows 95 Clients l&ouml;sen den W&auml;hlvorgang aus: siehe Fragen <ref
id="dod_winclient"  name="dod_win95">,
<ref id="dod_localdns" name="dod_localdns">,
und <ref id="dod_winclient" name="dod_win95b">.
<item>Samba l&ouml;st den W&auml;hlvorgang aus: siehe Frage <ref id="dod_samba"
name="dod_samba">.
<item>Netscape l&ouml;st beim Start einen W&auml;hlvorgang aus: siehe Frage <ref
id="dod_netscape"  name="dod_netscape">.
<item>Schlie&szlig;e manuell noch offene IP-Verbindungen wenn die
Leitung unterbrochen wird: siehe Frage <ref id="dod_closeipconnect"
name="dod_closeipconnect">.
<item>Dein Computer ist abgest&uuml;rzt, erzeugt aber noch Interrupts: siehe
Frage <ref id="dod_onlineoncrash" name="dod_onlineoncrash">.
</enum>

<sect1> dod_off: Wie kann ich Dial-on-Demand verl&auml;sslich abschalten?  
<label id="dod_off">
<p>
<enum>
<item>Wenn Du immer manuell w&auml;hlen willst, setze den Dialmode auf
<tt/manual/ (siehe Frage <ref id="dialout_dialmode"
name="dialout_dialmode">). Dann benutze <tt>isdnctrl dial
&lt;device&gt;</tt> zum Hinausw&auml;hlen und <tt>isdnctrl hangup
&lt;device&gt;</tt> zum Beenden der Verbindung.
<item>Richte Deinen Dialmode korrekt ein (siehe Frage <ref
id="dialout_dialmode" name="dialout_dialmode">). Setze z.B. den Dialmode
auf <tt/manual/ in <tt/ip-down/. Dann findet eine automatische
Hinauswahl nur einmal statt, wenn Du den Dialmode auf <tt/auto/ setzt.
<item>Entferne die Telefonnummer des Interfaces oder stelle eine
ung&uuml;ltige Nummer ein. Dann kannst Du an den Beschwerden im syslog
sehen, ob ein Prozess Pakete in die Welt hinaus schicken will.
<item>Schalte das System ab.
<item>L&ouml;sche die Route zum ISDN-Device.
Ein Beispiel, wie jedes automatische W&auml;hlen vermieden wird:
<code>
/sbin/route del default
/sbin/isdnctrl system off
/sbin/ifconfig ippp0 down
</code>
So l&auml;uft wieder alles normal:
<code>
/sbin/isdnctrl system on
/sbin/ifconfig ippp0 up 
/sbin/route add &dollar;GATE-IP dev ippp0
/sbin/route add default ippp0
</code>
Diese Methode hat den Nachteil, da&szlig; &uuml;berhaupt kein W&auml;hlvorgang
m&ouml;glich ist.
</enum>

<sect1> dod_strategy: Wie &uuml;berpr&uuml;fe ich unerkl&auml;rbare W&auml;hlvorg&auml;nge?  
<label id="dod_strategy">
<p>
Das Finden der Ursache von unerwarteten W&auml;hlvorg&auml;ngen ist der erste
Schritt, sie zu stoppen.
Dieses Finden ist jedoch normalerweise schwieriger als die
Probleml&ouml;sung. Hier sind Vorschl&auml;ge, was Du tun kannst:
<itemize>
<item> Zuerst trennst Du Deinen Dialout-Server von Deinem LAN, um
herauszufinden, wer f&uuml;r die W&auml;hlvorg&auml;nge verantwortlich ist: der
Dialout-Server selbst oder ein Client in Deinem LAN. Bei Windows Clients
siehe Frage <ref id="dod_winclient" name="dod_winclient">.
<item> Versuche, mit 'isdnctrl verbose 3' herauszufinden, welches
TCP/IP-Paket die Verbindung ausl&ouml;st. Es sollte in den Kernelmeldungen
(anzusehen mit <tt>dmesg</tt>) etwas in dieser Art auftauchen: <tt>OPEN:
141.76.60.54 - 193.171.67.253 TCP, port: 1686 - 540</tt>. In diesem
Beispiel versucht unser Computer, auf dem Port 540 Mail abzuholen (UUCP
&uuml;ber TCP/IP &uuml;ber ISDN) - die Portnummer kann man in
<tt>/etc/services</tt> nachsehen. Beachte bitte, da&szlig; nur das
ausl&ouml;sende Paket gemeldet wird.
<item> Wenn Du ipppd benutzt: erstelle ein tcpdump, das Dir die Daten
der syncPPP encapsulation zeigt (dazu ben&ouml;tigst Du eventuell einen
Patch - siehe Frage <ref id="trouble_tcpdump" name="trouble_tcpdump">).
<item> Versuche, einen Systemdienst nach dem anderen zu deaktivieren und
pr&uuml;fe, ob sich die Sache beruhigt. named, sendmail und auch smbd
(Samba) sind gute Kandidaten f&uuml;r das Aufbauen von Verbindungen (siehe
Fragen <ref id="dod_localdns" name="dod_localdns">, <ref
id="dod_sendmail" name="dod_sendmail">, <ref id="dod_samba"
name="dod_samba">).
<item> Wenn broadcasts das Problem sind, kannst Du auch die Zieladdresse
auf das dummy0-Interface legen. Das ist zwar nicht sauber aber es
funktioniert.
</itemize>

<sect1> dod_winclient: Kann es sein, da&szlig; die Win95-Maschine in meinem LAN automatische W&auml;hlvorg&auml;nge ausl&ouml;st?  
<label id="dod_winclient">
<p>
Ja. Beim Start von Windows 3.11/95 versucht dieses, sich mit dem
Nameserver Deines Providers zu unterhalten (falls bekannt) um einige
Domains aufzul&ouml;sen (z.B. WORKGROUP.xxx). Hier folgen M&ouml;glichkeiten,
dieses zu vermeiden:
<itemize>
<item> Schalte die Option <tt>Use DNS for Windows Names Resolution</tt>
auf allen Windows-Computern Deines LAN ab.
<item> Setze einen lokalen DNS auf, der alle Anfragen beantwortet. Siehe
Frage <ref id="dod_localdns" name="dod_localdns">.
</itemize>

<sect1> dod_localdns: Ich habe einen lokalen DNS eingerichtet. Warum l&ouml;st dieser unerw&uuml;nschte Anwahlen aus? Wie finde ich die Ursache?  
<label id="dod_localdns">
<p>
Schalte in named den Debug-Level 1 ein und schau Dir das Logfile in
<tt>/var/tmp</tt> an. Du findest da sehr oft normale DNS-Anfragen von
Windows-Maschinen. Das Problem ist, da&szlig; Namen wie
"WORKGROUP.domain.de" abgefragt werden, d.h., Namen, die der DNS nicht
kennen kann. Windows scheint nach seinem master browser oder einem
Domain-Controller zu suchen (deutschsprachige Leser finden in der ct
12/99, Seite 224: "Schnitzeljagd - Netzwerkumgebung und Browserdienst im
Windows-Netzwerk" weitere Details). Zur Umgehung dieses Problems muss
der Name der Workgroup per DNS aufgel&ouml;st werden k&ouml;nnen. Oder setze
einen Primary Domain Controller in Deinem LAN ein.

<sect1> dod_sendmail: Wie kann ich erreichen, da&szlig; sendmail zwar keine Verbindungen aufbaut aber trotzdem die lokale Mail ausliefert?  
<label id="dod_sendmail">
<p>
Zuerst musst Du sendmail dazu bringen, keine DNS-Verbindungen zu
&ouml;ffnen. Du musst die Optionen 'nodns' und 'nocanonify' aktivieren.

Wenn Du einen smarthost hast, musst Du sicherstellen, da&szlig; wegen
ihm kein Nameserver abgefragt wird. Du kannst den smarthost direkt mit
seiner IP-Addresse angeben oder seinen Namen in /etc/hosts eintragen
(/etc/host.conf sollte dann die Zeile 'order hosts bind' enthalten).

Setze alle nicht lokalen Mailer auf 'expensive'
('define(SMTP_MAILER_FLAGS, e)') und verbiete dann sendmail, automatisch
&uuml;ber diese <it>teueren</it> Wege zu verbinden (mit
'define('confCON_EXPENSIVE', 'True')'). Der Aufruf von sendmail sollte
keine Zeitangabe f&uuml;r die Option '-q' enthalten (d.h., nur '-bd -os
-q'). '-os' bewirkt, da&szlig; alle Mails in die Warteschlange
eingereiht werden (was nicht verhindert, da&szlig; lokale Mails sofort
ausgeliefert werden). Der einzige Haken ist, da&szlig; sendmail beim
Booten Mail, die noch in der Warteschlange liegt, ausliefern will,
obwohl das Netzwerk noch nicht l&auml;uft. Deshalb solltest Du beim Booten
alle Mails aus /var/mqueue entfernen bevor sendmail gestartet wird und
nach dem Start von sendmail wieder dort ablegen.

Mail an <it>teuere</it> Mailer wird nun nur durch den expliziten Aufruf
'sendmail -q' abgeschickt.

<sect1> dod_samba: Das Samba-Paket l&ouml;st bei mir immer W&auml;hlvorg&auml;nge aus. Wie kann ich das vermeiden?  
<label id="dod_samba">
<p>
Andreas Glahn <tt><htmlurl url="mailto:andreas@tao.westfalen.de"
name="andreas@tao.westfalen.de"></tt> schrieb am 31 Januar 1997: Ich
hatte das gleiche Problem. Dann gab ich beim Start des Samba-Demons
diesem die interne IP-Addresse, die ich hier zuhause benutze. Seither
wird eine Anfrage von Samba nicht mehr an das default gateway geschickt
sondern bleibt intern.

Schau Dir die Konfiguration mit netstat und tcpdump an. Mit tcpdump
findest Du schnell heraus, zu welcher IP-Addresse Samba verbinden will.

Mein interner Linux Computer hat z.B.: 192.168.99.99
und
mein Win95 Computer hat:               192.168.99.88

Auf dem Linux Computer starte ich Samba mit:
<code>
nmdb -S -B 192.168.99.255 -I 192.168.99.99
</code>
Schau Dir auch die vorherige Frage an: benutze -broadcast und vielleicht
-arp bei der Definition des Interfaces!

<sect1> dod_netscape: Wie kann ich Netscape abgew&ouml;hnen, beim Start eine Verbindung aufzubauen?  
<label id="dod_netscape">
<p>
Meistens ist in den Preferences eine nicht lokale Homepage
eingetragen. Nur eine Homepage, die Netscape sofort laden kann
(z.B. 'file://localhost/xxx'), l&ouml;st keinen sofortigen W&auml;hlvorgang
aus. Alternativ kannst Du einen Cache Demon einrichten, der oft
ben&ouml;tigte Seiten speichert.

Ein Proxy d&uuml;rfte keine Anwahl ausl&ouml;sen, selbst wenn der komplette Name
eingegeben wird. Nur bei Angabe eines neuen Proxy fragt Netscape einen
DNS ab und l&ouml;st dadurch einen W&auml;hlvorgang aus.  Steffan Henke
<tt><htmlurl url="mailto:henker@informatik.uni-bremen.de"
name="henker@informatik.uni-bremen.de"></tt> schrieb jedoch am 17. M&auml;rz
1997:
<quote>
Ungl&uuml;cklicherweise hat uns die Wirklichkeit eingeholt. Ich h&ouml;rte,
da&szlig; Netscape jetzt in Version.4.02 tats&auml;chlich eine Verbindung
aufbaut...
</quote>

<sect1> dod_closeipconnect: Nach dem Auflegen einer Leitung stelle ich mit <tt>netstat -nt</tt> fest, da&szlig; IP-Verbindungen noch offen sind. Wie kann ich diese manuell schlie&szlig;en?  
<label id="dod_closeipconnect">
<p>
Du kannst das Interface 'runterfahren' und dann wieder 'starten'. Dann
wird es versuchen, hinaus zu w&auml;hlen. Wenn Du aber vorher die
anzuw&auml;hlende Telefonnummer entfernt hast, erh&auml;ltst Du die Meldung 'no
outgoing number...' im syslog und sobald das Interface wieder gestartet
ist werden alle offenen Verbindungen geschlossen.

<sect1> dod_onlineoncrash: Ist es m&ouml;glich, da&szlig; selbst bei einem abgest&uuml;rzten Computer eine ISDN-Verbindung bestehen bleibt (und die Geb&uuml;hren weiterlaufen)?  
<label id="dod_onlineoncrash">
<p>
Der ISAC Chipset, der auf vielen ISDN-Karten benutzt wird, kann im auto
Modus oder im non-auto Modus laufen. Im auto Modus kann die Verbindung
bei abgest&uuml;rztem Computer bestehen bleiben (die Karte h&auml;lt sie am
Leben). Da der HiSax Treiber den non-auto Modus benutzt, sollte das mit
ISDN4LINUX nicht passieren. Wenn einmal kein Interrupt mehr auf Deiner
Maschine verarbeitet wird, wird die Verbindung sp&auml;testens nach einer
halben Minute beendet. Ein Weiterbestehen der Verbindung kann nur in dem
unwahrscheinlichen Fall passieren, wenn die Maschine abst&uuml;rzt, jedoch
Interrupts weiterhin normal verarbeitet werden.


<!-- Chargeint  
-->  

<sect> chargeint: Chargeint  
<label id="chargeint">

<sect1> chargeint_whatis: Was macht eigentlich Chargeint?  
<label id="chargeint_whatis">
<p>
Chargeint ist eine M&ouml;glichkeit, Deine Kosten zu reduzieren, wenn diese
auf Deiner <bf/Onlinezeit/ basieren und das Intervall zwischen zwei
Einheiten (das Geb&uuml;hrenintervall) relativ gro&szlig; ist (z.B. pro
Minute).

Chargeint beendet die Verbindung nur zwei Sekunden vor dem Ende eines
Geb&uuml;hrenintervalls. Je nach Tageszeit und Datum erkennt isdnlog
selbst&auml;ndig die L&auml;nge des Intervalls.

<sect1> chargeint_config: Wie soll ich Chargeint einrichten?  
<label id="chargeint_config">
<p>
Du kannst die L&auml;nge einer Geb&uuml;hreneinheit manuell mittels isdnctrl
Parameter <tt/chargeset/ bestimmen oder isdnlog so einstellen, da&szlig;
es automatisch abl&auml;uft:
<enum>
<item>Stelle isdnlog so ein, da&szlig; es alle Informationen &uuml;ber
Deinen Standort und Deine Telefongesellschaft hat (und dadurch die
Geb&uuml;hren kennt). 
<item>Starte isdnlog mit den Optionen <tt>-h0</tt> und <tt>-w</tt>.
<item>Stelle den huptimeout (Zeit ohne Datenverkehr, nach der I4L ein
Beenden der Verbindung herbeif&uuml;hrt) nach Deinem Belieben ein. Z.B.:
<code>
/sbin/isdnctrl huptimeout ippp0 5
</code>
Damit wird I4L nach einer 5 Sekunden dauernden Inaktivit&auml;t der Leitung
(huptimeout) 2 Sekunden vor dem Ende der Geb&uuml;hreneinheit auflegen.
</enum>

<sect1> chargeint_whennot: Wann ist es <bf/unsinnig/, Chargeint zu benutzen?  
<label id="chargeint_whennot">
<p>
<enum>
<item>Der Gebrauch von Chargeint ist unsinnig, wenn Deine Kosten nach
dem <bf/Datenvolumen/ berechnet werden oder Du einen <bf/Pauschalbetrag/
bezahlst. Chargeint kann Deine Kosten nur bei <bf/zeitabh&auml;ngiger/
Berechnung reduzieren.
<item>Es macht auch keinen Sinn, wenn Deine Kosten in kleinen
Zeiteinheiten (z.B. pro Sekunde statt pro Minute) berechnet werden.
<item>Chargeint kann sinnvoll sein (oder auch nicht), wenn Du f&uuml;r jede
neue Einwahl einen festen Betrag zus&auml;tzlich zu den variablen Kosten
zahlen musst (das h&auml;ngt von der H&ouml;he der Geb&uuml;hren ab).
<item>Es gibt Probleme, wenn die IP-Addresse dynamisch vergeben
wird. Eine abgebrochene Verbindung kann nicht einfach wieder gestartet
werden, da die IP-Addresse sich dabei ver&auml;ndert. Die unterbrochenen
FTP-, telnet- oder WWW-Verbindungen m&uuml;ssen dann wieder neu aufgebaut
werden.
</enum>

<sect1> chargeint_correcttime: Wie kann ich sicher gehen, da&szlig; der Chargeint-Patch die korrekte Zeit benutzt?  
<label id="chargeint_correcttime">
<p>
Am besten synchronisierst Du die Uhr Deines Computers mit der in der
Vermittlungsstelle. Das geschieht beim Aufruf von isdnlog mit der Option
<tt>-t2</tt>.
Hinweis: Man sollte dabei jedoch bedenken, da&szlig; die Uhren der VSts
selten &uuml;bereinstimmen (wichtig bei Preselection und Call-by-Call),
selten &uuml;berhaupt die genaue Zeit anzeigen, und au&szlig;erdem bei ISDN
sowieso nur Minuten und keine Sekunden &uuml;bertragen werden!

<sect1> chargeint_nohangup: Die Verbindung wird nicht durch einen Timeout beendet.  
<label id="chargeint_nohangup">
<p>
Chargeint legt nur auf, wenn es keine Aktivit&auml;t auf der Leitung
gab. Vielleicht benutzt Dein ISP einen Router (z.B. Cisco), der alle
zehn Sekunden ein 'keep alive' Paket sendet. Wenn die Cisco auf ihre
'keep alive' Pakete keine Antwort bekommt, wird sie das Routing
einstellen. Das geschieht normalerweise nach dem 4. oder 5. Paket. Die
beste L&ouml;sung besteht darin, den Provider zu bitten, keine 'keep alive'
Pakete in der Cisco-Konfiguration einzustellen (<tt>'no
keepalive'</tt>).

M&ouml;glicherweise sind es auch nicht die 'keep alive' Pakete, die die
Verbindung offen halten, sondern eher OSPF Routing Updates. Das
Versenden dieser Updates kann nur an der Cisco abgeschaltet werden. Du
kannst 'snapshot server' auf dem BRI Interface einstellen. Das bewirkt,
da&szlig; Routing Updates nur hinausgeschickt werden, wenn sie durch
dieses Interface empfangen wurden.


<!-- 2 and more channels: MPPP, raw bundling
-->

<sect> 2channel: Kanalb&uuml;ndelung (MPPP, raw bundling)  
<label id="2channel">

<sect1> 2channel_whatis: Was ist Kanalb&uuml;ndelung und wie kann ich es verwenden?  
<label id="2channel_whatis">
<p>
Kanalb&uuml;ndelung wird von ISDN4LINUX zur Zeit in zwei Variationen unterst&uuml;tzt:
<itemize>
<item><bf>Raw Bundling</bf> (Konfiguration von sogenannten <tt>slave
channels</tt>)
<item><bf>MPPP</bf> (basiert auf syncPPP)
</itemize>
Beide Variationen haben ihre Vor- und Nachteile. Schau Dir die folgenden
Fragen an.

<sect1> 2channel_raw: Was ist 'raw bundling'?  
<label id="2channel_raw">
<p>
Raw bundling arbeitet &auml;hnlich wie rawIP, nur mit mehreren
Kan&auml;len. Daher hat es auch die theoretischen Vor- und Nachteile von
rawIP. Raw bundling ben&ouml;tigt f&uuml;r jeden benutzten Kanal ein
Netzwerk-Interface. Eines davon, das sogenannte Master Interface,
kontrolliert das Herstellen und Abbrechen der Verbindungen. F&uuml;r jeden
weiteren Kanal wird ein sogenanntes Slave Interface eingerichtet, das
automatisch vom Master Interface aktiviert wird.

<sect1> 2channel_rawconfig: Wie konfiguriere ich raw bundling?  
<label id="2channel_rawconfig">
<p>
Das Master Interface wird wie normal mit 
<code>
isdnctrl addif &lt;master_interface&gt;
</code>
erstellt und konfiguriert. F&uuml;r alle ben&ouml;tigten abh&auml;ngigen Kan&auml;le
werden dann Slave Interfaces mit dem Befehl:
<code>
isdnctrl addslave &lt;master_interface&gt; &lt;slave_interface&gt;
</code>
erstellt und wie &uuml;blich konfiguriert (z.B. 'isdnctrl sdelay
slave_interface delay').

<sect1> 2channel_rawgoodbad: Was sind die Vor- und Nachteile des raw bundling?  
<label id="2channel_rawgoodbad">
<p>
Raw bundling hat alle Vor- und Nachteile des rawIP. Im Vergleich zu MPPP
hat raw bundling den Vorteil, da&szlig; ISDN4LINUX die ben&ouml;tigten
abh&auml;ngigen Kan&auml;le selbst &ouml;ffnet und schlie&szlig;t. Leider hat raw
bundling immer noch Probleme mit den Transferraten. Siehe weiter unten.

<sect1> 2channel_mppp: Was ist MPPP?  
<label id="2channel_mppp">
<p>
MPPP oder MP oder MPP (Warnung: MP ist auch eine Abk&uuml;rzung von 'Multi
Processor') steht f&uuml;r Multi Point to Point und bedeutet das B&uuml;ndeln
von mehreren Kan&auml;len zu einem logischen Strom. Es ist eine Abart des
normalen syncPPP. Deshalb erbt es auch dessen Vor- und Nachteile. Nur
zur Information: ipppd betreibt MPPP nach RFC 1717 anstatt nach dem
neueren RFC 1990 (MLP).

Im Gegensatz zu raw bundling wird als Interface zum ipppd nur ein
Netzinterface ben&ouml;tigt, da der ipppd alle seine Kan&auml;le selbst
verwaltet. Herein kommende Daten werden vom ipppd zuf&auml;llig auf alle
verf&uuml;gbaren Kan&auml;le verteilt. Diese Kan&auml;le m&uuml;ssen nicht unbedingt
ISDN-Kan&auml;le sein. Theoretisch k&ouml;nnen Modemverbindungen mit
ISDN-Kan&auml;len vermischt werden. Hier jedoch besch&auml;ftigen wir uns nur
mit ISDN-Kan&auml;len.

<sect1> 2channel_mpppconfig: Wie richte ich MPPP ein?  
<label id="2channel_mpppconfig">
<p>
Zuerst definierst Du ein (normales) Interface f&uuml;r ipppd
(i.a. 'isdnctrl addif ippp0', usw.). Dieses Interface wird als Master
Interface benutzt. Anschlie&szlig;end musst Du f&uuml;r jeden
zus&auml;tzlichen Kanal ein Slave Device einrichten (z.B.: 'isdnctrl
addslave ippp0 &lt;slave_interface&gt;', mehr Details im I4L
Manual). Die Aktivierung der Kanalb&uuml;ndelung erfolgt durch die
Option '+mp' beim Aufruf des ipppd.

Zum Gebrauch der Kanalb&uuml;ndlung musst Du zuerst das 'Master
Device' aktivieren. Anschlie&szlig;end werden die Slave Channels
hinzugef&uuml;gt:
<code>
isdnctrl addlink device
</code>
Sie werden mit dem Befehl:
<code>
isdnctrl removelink ippp0
</code>
wieder deaktiviert. Dies ist anders als bei den anderen encapsulations
von ISDN4LINUX!

Beachte auch, da&szlig; das Slave Device dazu im W&auml;hlmodus <tt/auto/
sein muss. Zur manuellen Steuerung benutzt Du
<code>
isdnctrl dial slave
</code>
und
<code>
isdnctrl hangup slave
</code>

Bei syncPPP gibt es keine automatische Aktivierung der Slave
Devices. Sie m&uuml;ssen manuell hinzugef&uuml;gt und wieder entfernt
werden. Es gibt daf&uuml;r jedoch das Programm <tt>ibod</tt> (<url
url="http://www.compound.se/ibod.html">).

Ein Beispielscript findest Du in der Datei
<tt>etc/rc.isdn.syncppp.MPPP</tt> im isdn4k-utils Paket (leider nicht in
allen I4L-Versionen).

Denke daran, da&szlig; Dein Provider den Gebrauch dieser Features
erlauben muss. Es kann auch vorkommen, da&szlig; die Menge der
gleichzeitig ge&ouml;ffneten Kan&auml;le limitiert ist und bei
&Uuml;berschreitung dieses Limits alle Verbindungen abgebrochen
werden.

<sect1> 2channel_mpppgoodbad: Was sind die Vor- und Nachteile von MPPP?  
<label id="2channel_mpppgoodbad">
<p>
Ein Nachteil ist es, da&szlig; der Slave Channel 'manuell' aktiviert
werden muss. ipppd kann den Slave Channel nicht nach Bedarf an- und
abschalten. Die normalen automatischen Funktionen des ipppd sind
entweder unzuverl&auml;ssig (automatisches Auflegen) oder funktionieren
&uuml;berhaupt nicht (automatisches Hinausw&auml;hlen). Das gilt jedoch nicht
f&uuml;r die anderen encapsulations.  Die Transferraten sind sehr gut
(ca. 30 KB/s mit 4 Kan&auml;len).

<sect1> 2channel_mpppcompile: Ich habe MPPP ausprobiert aber es funktioniert nicht. Der ipppd schreibt im debug log so etwas wie das: ' ...  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 ...'  
<label id="2channel_mpppcompile">
<p>
Du hast vergessen, die Unterst&uuml;tzung f&uuml;r MPPP/RFC1717 in das ISDN
Subsystem zu kompilieren. Kompiliere den Kernel mit dieser aktivierten
Option neu.


<!-- Pecularities of your counterpart (remote device)
-->

<sect> remote: Eigenheiten des remote ISDN Device 
<label id="remote">

<sect1> remote_win95: Wie konfiguriere ich Windows95 zur erfolgreichen Einwahl zu meinem ISDN4LINUX Computer?  
<label id="remote_win95">
<p>
Konfiguriere Dein Dialout Network wie folgt:
<itemize>
<item>Typ des Servers: PPP:Windows 95, Windows NT 3.5, Internet
<item>Erweiterte Optionen: deaktiviere alle Optionen
<item>Netzwerk Protokolle: nur TCP/IP
<item>Standard Gateway
<item>Schalte vorerst die IP Header Compression ab (mehr Details zur
Kompression findest Du bei <ref id="syncppp_compression"
name="syncppp_compression">).
<item>Den Rest der Einstellungen f&uuml;r TCP/IP (IP-Addresse,
Nameserver,...) stellst Du nach Deinen Gegebenheiten ein.
</itemize>

<sect1> remote_mac: Ich m&ouml;chte Daten mit einem Macintosh (Leonardo card) austauschen. Was muss ich oder der Mac User dabei beachten?  
<label id="remote_mac">
<p>
Zur Zeit wird das Leonardo Protokoll nicht von I4L unterst&uuml;tzt. Wenn Du
den Mac anrufst, sollte er das Protokoll auf X.75 oder HDLC setzen. Wenn
er Dich anruft, muss er das Protokoll explizit in der gew&auml;hlten Nummer
angeben (z.B.  durch Einf&uuml;gen eines 'X' f&uuml;r X.75).

<sect1> remote_macpap: Ein Macintosh mit einer Leonardo Karte versucht sich einzuw&auml;hlen und will chap md5 benutzen. Wie kann ich das auf CHAP/PAP umwandeln?  
<label id="remote_macpap">
<p>
Du kannst es nicht. Der Mac User muss LeoPort (im Lieferumfang der Karte
enthalten) benutzen und den CTB port auf die ISDN Karte einstellen. Dann
kann er mittels FreePPP 2.5v2 <tt><url
url="http://www.rockstar.com"></tt> die Leo als Modem
einrichten. FreePPP wird wie &uuml;blich eingestellt. Danach kann PAP/CHAP
eingerichtet werden.

<sect1> remote_cisco: Wie verh&auml;lt sich ISDN4LINUX mit einer Cisco (HDLC) als Gegenpart?  
<label id="remote_cisco">
<p>
Auf dem Cisco Router muss das Senden von 'keep alive' Paketen
abgestellt werden. ISDN4LINUX muss f&uuml;r HDLC, transparent, mit Cisco
encapsulation eingestellt werden:
<code>
isdnctrl l2_prot &lt;interface&gt; hdlc
isdnctrl l3_prot &lt;interface&gt; trans
isdnctrl encap &lt;interface&gt; cisco-h
</code>

<sect1> remote_ispa: Welche Einstellungen braucht ISPA usw. (DOS, Windows) um mit den Standardeinstellungen von ISDN4LINUX zurecht zu kommen?  
<label id="remote_ispa">
<p>
Die folgenden Einstellungen sind m&ouml;glich (diese gelten auch f&uuml;r die
anderen Treiber von H. Hanewinkel (CINDI, CANDI, WISPA...), zu finden
auf <tt><url
url="http://www.informatik.uni-bremen.de/&tilde;henker/dank"></tt>):
<verb>
i4l side                             ISPA side
====================================================
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         /
---------------------------------------------------- 
</verb>
Der Parameter mit den wenigsten Problemen ist -h0.


<sect> leased: Standleitungen 
<label id="leased">

<!-- Config Leased line/D64S  
-->  

<sect1> leased_nosignal: Wie funktioniert der Aufbau und das Beenden einer Verbindung mit D64S ohne Signal&uuml;bertragung?  
<label id="leased_nosignal">
<p>
Die Daten werden einfach hinaus gesendet! Au&szlig;er mit einem ping
gibt es keine andere M&ouml;glichkeit herauszufinden, ob die D64S- oder
2MBit-Leitung steht oder nicht. Nur S01- oder S02-Leitungen haben einen
D-Kanal mit dem Signale &uuml;bertragen werden k&ouml;nnen. Die besten bekannten
L&ouml;sungen benutzen diese 16kb auch f&uuml;r den Datentransport um auf
144kb/s anstatt 128kb/s zu kommen (I4L kann nur bis 128kb/s
&uuml;bertragen).

<sect1> leased_hisaxconfig: Wie konfiguriere ich meine Karte mit I4L auf einer D64-Standleitung?  
<label id="leased_hisaxconfig">
<p>
Eine sp&auml;tere Version des neuen HiSax-Treibers unterst&uuml;tzt D64. Die
Konfiguration ist normal mit den folgenden Besonderheiten. HiSax muss im
leased mode laufen:
<code>
/sbin/hisaxctrl HiSax 5 &lt;channel&gt;
</code>
wobei HiSax mit 'id=HiSax' aufgerufen wurde und &lt;channel&gt;
entweder 0 oder 1 sein kann. Zus&auml;tzlich zur normalen Konfiguration sind
die folgenden Befehle wichtig:
<code>
/sbin/isdnctrl bind HiSax,&lt;channel&gt;
/sbin/isdnctrl eaz isdn0 1
/sbin/isdnctrl addphone isdn0 out 2
/sbin/isdnctrl addphone isdn0 in  3
</code>
wenn der Name des Interfaces 'isdn0' lautet. Das Interface muss
auf 'up' gesetzt werden und es muss eine Route auf das Interface
gelegt werden. Schau Dir die Readmes im HiSax-Paket an.

<sect1> leased_x75: Wie konfiguriere ich X.75 auf einer D64-Standleitung?  
<label id="leased_x75">
<p>
Benutze eine neuere Version von HiSax. Initialisiere zuerst das ttyI*
Device, das Du benutzen willst, mit 'AT&amp;E0' (Verwendung des ersten
B-Kanals) und 'ATS0=1' (automatisches Antworten auf das erste
Signal). Dann versetzt Du HiSax in den leased mode:
<code>
/sbin/hisaxctrl HiSax 5 &lt;channel&gt;
</code>
wobei &lt;channel&gt; 0 oder 1 sein kann. Dadurch wird ein Anruf f&uuml;r
MSN1 auf dem konfigurierten Kanal (0 oder 1) simuliert (Als incoming
number wird LEASED0 gesetzt).

<sect1> leased_splitline: Kann ich mit ISDN einen Kanal als Standleitung und den anderen Kanal als W&auml;hlleitung benutzen?  
<label id="leased_splitline">
<p>
Ja, kannst Du. Aber Du musst sicher stellen, da&szlig; Du den jeweils
richtigen Kanal benutzt!


<!-- Dialin
-->

<sect> dialin: Konfiguration eines Einwahl(Dial-In)-Servers  
<label id="dialin">

<sect1> dialin_config: Wie kann ich anderen den Zugang &uuml;ber ISDN erm&ouml;glichen?
<label id="dialin_config">
<p>
Einige Konfigurationsbeispiele findest Du auf 
<url url="http://www.rosat.mpe-garching.mpg.de/~web/ISDN.html">.
Wenn Du mit der Einrichtung Probleme hast, versuche das neueste Paket
von ISDN4LINUX zu bekommen (siehe Frage <ref id="distrib_getlatest"
name="distrib_getlatest">).
Wie gewohnt kannst Du auch in der Mailingliste nachfragen.
Im Allgemeinen gibt es mehrere M&ouml;glichkeiten, Dial-In einzurichten. Es
kommt darauf an, wie Du m&ouml;chtest, da&szlig; sich andere bei Dir
einw&auml;hlen.
<itemize>
<item>Richte Netzwerk-Devices zur Einwahl &uuml;ber syncppp oder rawip
ein. Setze die Option <tt/secure off/ um jedem die Einwahl zu
erm&ouml;glichen oder <tt/secure on/ um die Einwahl nur &uuml;ber ISDN-Nummern
zu erm&ouml;glichen, die Du mit <tt>isdnctrl addphone &lt;device&gt; in
&lt;Telefonnummer&gt;</tt> eintr&auml;gst.
Es wurde berichtet, da&szlig; Du die Option <tt/ms-dns/ f&uuml;r ipppd
setzen musst damit die IPCP-Verhandlung funktioniert.
<item>Benutze die ttyI* Devices f&uuml;r asyncppp oder X.75.
</itemize>
Es folgen weitere Details zur Einstellung der ttyI* Devices. Die
Konfiguration ist wie bei einem seriellen Port. Starte ein getty (mgetty
von Gert Doering ist sehr empfehlenswert) auf einem der ISDN Devices
(/dev/ttyI*). Der Eintrag in /etc/inittab sollte etwa so aussehen:
<code>
I0:56:respawn:/usr/local/sbin/mgetty ttyI0
I1:56:respawn:/usr/local/sbin/mgetty ttyI1
</code>
Der folgende Init-String muss in die <tt>mgetty.config</tt> eingetragen
werden, damit mgetty weiss, auf welche MSN oder EAZ es lauschen
muss. Wenn Deine MSN z.B. 123456 lautet:
<code>
port ttyI0
modem-type data
speed 38400
init-chat '' ATZ OK AT&amp;E123456 OK AT&amp;B512 OK
</code>
Die Blockgr&ouml;&szlig;e wurde f&uuml;r X.75 auf 512 Bytes gesetzt.
Alternativ kannst Du auch die gesamte Einstellung in
<tt>/etc/inittab</tt> in einer Zeile schreiben (hier wegen der
Randeinstellungen in 2 Zeilen gedruckt!):
<code>
i0:45:respawn:/sbin/mgetty -D -m '"" ATZ OK AT&amp;E123456 OK
AT&amp;B512 OK' -s 38400 ttyI0
</code>
Der eleganteste Weg ist der Gebrauch von iprofd. Die Benutzung dieses
Systemdienstes wird m&ouml;glich durch den Befehl <tt>AT&amp;W0</tt> in der
I4L Modememulation. Du startest iprofd mit einem Pfad als Parameter,
z.B. <tt>'iprofd /etc/i4lprofile'</tt>. Dann &ouml;ffnest Du mit
minicom oder einem anderen Terminalprogramm ein ISDN tty Device und
gibst den n&ouml;tigen AT-Befehl manuell ein. 
Danach gibst Du den Befehl <tt>AT&amp;W0</tt> ein. Der Kernel veranlasst
daraufhin iprofd dazu, die aktuelle Konfiguration in die Datei zu
schreiben. Von nun an reicht es aus, iprofd in Deinem ISDN Initscript zu
starten und die entsprechenden ISDN tty Devices mit <tt>ATZ</tt> zu
initialisieren.

<sect1> dialin_manyparallel: Wie kann ich mehreren Leuten gleichzeitig die Einwahl erm&ouml;glichen?  
<label id="dialin_manyparallel">
<p>
Du musst exakt so viele gettys oder Netzwerk Interfaces einrichten, wie
sich Leute gleichzeitig einw&auml;hlen d&uuml;rfen. Diese gettys oder Netzwerk
Interfaces k&ouml;nnen die gleiche MSN benutzen, da mehrere Leute
gleichzeitig mit der gleichen MSN verbunden sein k&ouml;nnen (solange freie
B-Kan&auml;le vorhanden sind). Es kann jedoch nur ein getty jeweils einem
einzelnen ttyI* Device zugeordnet sein.

<sect1> dialin_hdlc: Jemand m&ouml;chte sich mit HDLC durch mein mgetty einw&auml;hlen. Ist ttyI1 korrekt oder muss ich mit ttyI0 beginnen?  
<label id="dialin_hdlc">
<p>
Das spielt keine Rolle. Es hat auch nichts mit der Nummer des B-Kanals
(0 oder 1) zu tun. Du musst nur HDLC im Init-String aktivieren
(ATS14=3).

<sect1> dialin_autoppp: Ist es mit mgetty m&ouml;glich, beim Empfang von LCP-Frames den pppd automatisch zu starten?  
<label id="dialin_autoppp">
<p>
Ja, ist es. Dieses Feature nennt sich 'AutoPPP'. Siehe
Konfiguration von mgetty.

<sect1> dialin_passwd: Wie bringe ich (i)pppd dazu, bei einer Einwahl die Passw&ouml;rter mit /etc/passwd statt mit /etc/ppp/pap-secrets zu vergleichen?  
<label id="dialin_passwd">
<p>
ipppd muss mit den Optionen 'login' und 'auth' gestartet werden. In
/etc/ppp/pap-secrets muss bei einer Beschr&auml;nkung auf bestimmte User
f&uuml;r jeden dieser User die folgende Zeile existieren:
<code>
login-name * '' *
</code>
Um allen Usern die Einwahl zu erlauben gen&uuml;gt:
<code>
* * '' *
</code>
Die letztere Wirkung tritt auch ein, wenn keine Datei pap-secrets existiert.

<sect1> dialin_ignored: Ich bekomme dauernd die Meldung 'isdn_tty: call from XXX - YYY ignored'. Wieso ignoriert ISDN4LINUX (syncPPP) diesen Einwahlversuch?  
<label id="dialin_ignored">
<p>
Da gibt es zwei m&ouml;gliche Erkl&auml;rungen.
Entweder ist Deine eigene MSN (hier: YYY) nicht korrekt mit 'isdnctrl
eaz interface YYY' eingetragen. Oder es wurde die Option 'isdnctrl
secure interface on' gesetzt, ohne die Anrufe von dieser Nummer (hier:
XXX) mit 'isdnctrl addphone interface in XXX' zu erlauben.

<sect1> dialin_async: Eine SunISDN versucht sich in mein I4L-System einzuw&auml;hlen.  
<label id="dialin_async">
<p>
Die Sun versucht mit asyncPPP zu kommunizieren. ipppd kann damit nicht
umgehen, Du musst die ttyI* Devices und den normalen pppd benutzen.



<!-- Callback
-->

<sect> callback: Callback  
<label id="callback">

<sect1> callback_delay: Ein hereinkommender Ruf wird von I4L abgelehnt. Anschlie&szlig;end ruft I4L zur&uuml;ck. Die Rufablehnung wird von der anderen Seite nicht erkannt und sie versucht, sich weiterhin bei I4L einzuw&auml;hlen.  
<label id="callback_delay">
<p>
Die meisten Probleme bei Callback k&ouml;nnen durch die Einstellung des
callback delay mit <tt>isdnctrl cbdelay</tt> gel&ouml;st werden. Eine
Sekunde gen&uuml;gt in den meisten F&auml;llen.

<sect1> callback_cisco: Aus irgendeinem Grund kann I4L nicht bei einer Cisco zur&uuml;ckrufen?  
<label id="callback_cisco">
<p>
Torsten Hentschel <tt><htmlurl url="mailto:Torsten.Hentschel@DInet.de"
name="Torsten.Hentschel@DInet.de"></tt> schrieb am 03. Oktober 1996:
<quote>
Eine Cisco w&auml;hlt m&ouml;glicherweise so schnell und h&auml;ufig, da&szlig; der
ipppd keine Chance des Zur&uuml;ckrufens hat. Die Ciscos sind so
programmiert (klare Aussage eines Cisco-Entwicklers):
Wenn eine Cisco ein Paket empf&auml;ngt, das durch eine auf 'dial on
demand' eingestellte Telefonverbindung hinausgehen soll, und es ist ein
B-Kanal zur Hinauswahl frei, wird sofort gew&auml;hlt. Wenn in einem solchen
Fall (wie bei Delta Internet seit einem halben Jahr) eine Cisco mit 8
B-Kan&auml;len auf der anderen Seite steht und jemand ein einfaches 'ping
RemoteIP' eingibt, wird die Cisco im schlimmsten Fall alle 8 B-Kan&auml;le
zum Hinausw&auml;hlen benutzen. Nat&uuml;rlich kann sie nicht eine Telefonnummer
gleichzeitig auf zwei B-Kan&auml;len w&auml;hlen (es w&auml;re sofort
'besetzt'). Die Programmierung der Cisco ist nicht so dumm, sie richtet
den n&auml;chsten B-Kanal zum Hinausw&auml;hlen ein bevor sie annimmt, da&szlig;
der vorherige B-Kanal versagt hat. Solch eine Cisco arbeitet wie ein
Maschinengewehr was das Hinausw&auml;hlen betrifft. Und I4L bekommt keinen
freien B-Kanal zur Einwahl wenn die Cisco das nicht will. 
Das Schlechte daran ist, da&szlig; eine Cisco immer (auch bei einer
Konfiguration mit 'callback client' = I4L ruft zur&uuml;ck) erwartet,
da&szlig; die andere Seite den Ruf annimmt, beide auflegen und dann der
R&uuml;ckruf kommt. Username und Password m&uuml;ssen beim Gebrauch von PPP
immer vor einem R&uuml;ckruf ausgetauscht werden. Dadurch stellt man sicher,
da&szlig; die Person, die den R&uuml;ckruf verlangt, auch dazu berechtigt
ist. (Cisco scheint sich an die Regel der (Deutschen) Telekom zu halten,
da&szlig; keine Informationen ohne B-Kanal-Verbindung ausgetauscht
werden d&uuml;rfen. Ein R&uuml;ckruf-Verlangen, identifiziert nur durch die  
anrufende Telefonnummer, kann im Zweifelsfall als &Uuml;bertragung von
Informationen betrachtet werden).
</quote>

Torsten Hentschel <tt><htmlurl url="mailto:Torsten.Hentschel@DInet.de"
name="Torsten.Hentschel@DInet.de"></tt> schrieb zus&auml;tzlich am 20. November 1996:
<quote>
Ich habe den R&uuml;ckruf &uuml;ber PPP mit zwei CISCOs oft versucht. Nach
meiner Erfahrung werden Versuche mit der Kombination CISCO - Linux nicht
funktionieren.  Eine CISCO handelt ein R&uuml;ckruf-Verlangen immer per PPP
aus. Dazu muss die Gegenseite zuerst den Ruf annehmen und die gesamte
Verhandlung (Berechtigung,...) durchf&uuml;hren. Dann legen beide auf und
der R&uuml;ckruf wird durchgef&uuml;hrt.  Die Befehle von isdnctrl in Linux
beeinflussen nur die Netzwerk-Devices des Kernels und haben keinen oder
nur wenig Einflu&szlig; darauf, wie ipppd R&uuml;ckrufe durchf&uuml;hrt. ipppd
erkennt nicht, da&szlig; er einen R&uuml;ckruf der Gegenseite erwarten soll.
Daher lehnt er das Angebot der CISCO &uuml;ber PPP, da&szlig; sie zum
R&uuml;ckruf bereit ist, ab. Dann nimmt die CISCO an, da&szlig; sie nicht
zur&uuml;ck rufen soll (sie erwartet ein explizites R&uuml;ckruf-Verlangen
w&auml;hrend der PPP-Verhandlung zu sehen).  Die CISCO best&auml;tigt dies, wenn
Du bei ihr einloggst und ihre Debug-Meldungen &uuml;ber die Einwahlversuche
Deines Linux-Computers mit den folgenden Befehlen ansiehst:
<code>
deb ppp chap
deb ppp negotiotion
deb ppp error
term mon
</code>
Du musst Dich &uuml;ber telnet einloggen, nicht auf der Konsole, da sonst
die CISCO das Loggen nicht &uuml;ber das serielle Interface durchf&uuml;hren
kann.
</quote>

<sect1> callback_ascend: Callback von einer Ascend funktioniert nur, wenn ich im Ascend-Menue 'Active=Yes' eingebe. Dann w&auml;hlt die Ascend mich aber auch an, wenn meine Maschine ausgeschaltet ist.  
<label id="callback_ascend">
<p>
Ulrich Klein <tt><htmlurl url="mailto:ulik@hprc.tandem.com"
name="ulik@hprc.tandem.com"></tt> schrieb am 14. Dezember 1996:
<quote>
Irgendwo in den Ascend-Menues kannst Du 'dial broadcast' auf 'no' oder
'off' setzen. Anderenfalls wird das Ding mit jedem Rundruf
w&auml;hlen. Zumindest mir half das. Falls jemand aus dem Netzwerk, an das
die Ascend angeschlossen ist, wirklich eine Verbindung aufbauen will,
musst Du die etwas seltsamen Filter benutzen. Ich glaube, es gibt da
einen, der nur als R&uuml;ckruf hinausw&auml;hlt.
</quote>

<sect1> callback_banzai: Wie kann ich eine Banzai zur&uuml;ckrufen?
<label id="callback_banzai">
<p>
Jan-Olaf Droese <tt><htmlurl url="mailto:jano@layla.RoBIN.de"
name="jano@layla.RoBIN.de"></tt> schrieb am 31. Januar 1997:
<quote>
Auf der Seite der Banzai sollte ein 'c' zu der zu w&auml;hlenden Nummer
hinzugef&uuml;gt werden. Dadurch ist sie bereit f&uuml;r den R&uuml;ckruf. Zur
Sicherheit kannst Du die Anzahl der W&auml;hlversuche der Banzai auf 1
setzen, soda&szlig; es keine Ruf&uuml;berschneidungen gibt.  Auf der
I4L-Maschine habe ich folgende Einstellungen vorgenommen:
<code>
isdnctrl callback isdn0 in
isdnctrl cbdelay isdn0 1
</code>
</quote>

<!-- Isdnlog
-->

<sect> isdnlog: Isdnlog 
<label id="isdnlog">

<sect1> isdnlog_rates: Wo bekomme ich die aktuellsten Geb&uuml;hreninformationen? 
<label id="isdnlog_rates">
<p>
Dies ist die Homepage der "Rate Data Crew": <tt><url
url="http://rates4linux.sourceforge.net/"></tt>. Dort bekommst die
neuesten Dateien mit den Geb&uuml;hrenraten (die sich recht schnell &auml;ndern)
oder kannst einen Blick auf die neuesten Nachrichten werfen.

Es gibt f&uuml;r diesen Bereich auch eine Mailingliste. Du abonnierst diese
durch eine Email mit dem Subject "subscribe" an: <tt><htmlurl
url="mailto:rates4linux-users-request@lists.sourceforge.net"
name="rates4linux-users-request@lists.sourceforge.net"></tt> (mit "help"
im Subject bekommst Du Instruktionen).  
Du schreibst an die Mailingliste mittels Email an: <tt><htmlurl
url="mailto:rates4linux-users@lists.sourceforge.net"
name="rates4linux-users@lists.sourceforge.net"></tt>.


<sect1> isdnlog_servicetype: Kann ich den Dienstetyp eines ankommenden Anrufes in der Ausgabe von isdnrep sehen? 
<label id="isdnlog_servicetype">
<p>
Andreas Kool <tt><htmlurl url="mailto:akool@Kool.f.EUnet.de"
name="akool@Kool.f.EUnet.de"></tt> schrieb am 03. Dezember 1996:
<quote>
Indirekt in isdnrep, ja -- sobald Du ein Alias f&uuml;r die dekodierten
Dienstetypen in Deiner 'isdnlog.conf' angegeben hast ...
</quote>

<sect1> isdnlog_callerid1: Warum bekomme ich nicht immer die Nummer eines Anrufers ('Caller ID') durch die Deutsche Telekom &uuml;bermittelt?
<label id="isdnlog_callerid1">
<p>
Aus Gr&uuml;nden des Datenschutzes werden Telefonnummern des analogen Netzes
nicht &uuml;bermittelt, es sei denn, der Anrufer hat dies der Telekom
ausdr&uuml;cklich erlaubt (das ist kostenlos).

Die Teilnehmer mit einem ISDN-Anschlu&szlig; m&uuml;ssen andererseits
ausdr&uuml;cklich die &Uuml;bermittlung der Nummer durch die Telekom verweigern
oder beantragen, die &Uuml;bermittlung auf Call-by-Call-Basis (CLIR) zu
verweigern oder zu gestatten. Die Verweigerung bei Call-by-call ist
kostenlos, die &Uuml;bertragung bei Call-by-Call kostenpflichtig. Es scheint
jedoch f&uuml;r die Telekom <em>extrem</em> schwierig zu sein, das beim
ersten Versuch richtig einzustellen. Wenn Du Wert auf die &Uuml;bertragung
der Caller ID legst, solltest Du sehr genau pr&uuml;fen, ob alles richtig
konfiguriert wurde.

<sect1> isdnlog_callerid2: Erhalte ich die Caller ID bei ausl&auml;ndischen Anrufen? 
<label id="isdnlog_callerid2">
<p>
Ja, bei Anrufen aus L&auml;ndern, die das mit der Caller ID nicht ganz so
streng sehen wie Deutschland (z.B. USA, Canada).

<sect1> isdnlog_spoofcallerid: Ich habe geh&ouml;rt, da&szlig; in Wirklichkeit zwei Caller IDs &uuml;bertragen werden?
<label id="isdnlog_spoofcallerid">
<p>
Richtig, die eine ist 'benutzer-generiert' und nicht &uuml;berwacht und die
andere ist 'netzwerk-generiert' (durch die Telefongesellschaft). Wie der
Name schon sagt wird die erste Nummer vom Benutzer bereitgestellt
w&auml;hrend die zweite vom Netzwerk &uuml;bertragen wird.  Die Bereitstellung
einer Caller ID ist nur mit einer PBX &uuml;ber eine Point-to-Point
Konfiguration mit dem Feature 'CLIP no screening' m&ouml;glich.

<sect1> isdnlog_betterlogging: Wieso zeichnet isdnlog die Nummern, die mit meinen anderen ISDN-Ger&auml;ten gew&auml;hlt werden, nicht auf, obwohl es die Kosten aufzeichnet?
<label id="isdnlog_betterlogging">
<p>
Weil die ISDN-Karte, wie alle ISDN-Ger&auml;te, separate Leitungen f&uuml;r das
Senden und das Empfangen hat (RX und TX Leitungen). Isdnlog m&uuml;sste die
Daten der empfangenden Leitung lesen um die gew&auml;hlte Nummer zu
erkennen. Dies ist nicht m&ouml;glich, zumindest nicht f&uuml;r die
Teles-Karten, wie Karsten Keil <tt><htmlurl
url="mailto:keil@isdn4linux.de" name="keil@isdn4linux.de"></tt> am
12. Februar 1997 schrieb:
<quote>
Dies ist der Fall bei allen Karten mit 1 Siemens ISAX; er hat (und
braucht) nur  1 Sender und 1 Empf&auml;nger.
Theoretisch ist es m&ouml;glich, den gesamten D-Kanal mit nur einem
Empf&auml;nger (sogar mit dem ISAC) auszulesen; die D-Bits der RX-Leitung
werden (etwas verz&ouml;gert) auf die TX-Leitung kopiert, &uuml;ber die die
Zugriffskontrolle (Kollisionskontrolle) des S0-Busses
stattfindet. Leider ist es mit dem ISAC nicht m&ouml;glich, die echo bits im
TA-Modus aus einem Register auszulesen.
</quote>
In den n&auml;chsten Fragen findest Du vielleicht eine L&ouml;sung.

<sect1> isdnlog_reversedcard: Wie erreiche ich, da&szlig; isdnlog auch die Nummern zeigt, die von anderen ISDN-Ger&auml;ten gew&auml;hlt werden?
<label id="isdnlog_reversedcard">
<p>
Da gibt es zwei M&ouml;glichkeiten: Erstens bietet die Deutsche Telekom den
Service COLP (Connected Line Identification Presentation) f&uuml;r ca. DM 10
pro Monat an, der alle gesendeten Daten zur&uuml;ck sendet. Diese k&ouml;nnen
dann von isdnlog von der TX-Leitung ausgelesen werden.

Alternativ bietet isdnlog die M&ouml;glichkeit, mit einer zweiten,
'umgepolten' ISDN-Karte zu arbeiten. 'Umgepolt' bedeutet in diesem Fall,
da&szlig; die RX-Leitung mit dem TX-Anschluss der Karte verbunden wird;
die RX Leitung der Karte sollte nirgends angeschlossen (stillgelegt)
werden!  Aufgrund dieser Schaltung kann diese ISDN-Karte f&uuml;r sonst
nichts benutzt werden. Die ganze Schaltung sieht dann etwa so aus:
<verb>
      3 -- RX+ 2a ---------------\
ISDN  4 -- TX+ 1a -- open         ------------  ISDN
bus   5 -- TX- 1b -- open         ------------  card
      6 -- RX- 2b ---------------/ 
</verb>
Beachte bitte, da&szlig; dies nur funktioniert, wenn die zweite Karte
einen ISAC-Chip besitzt (z.B. alte Teles-Karten, Fritz! classic), da
dabei ein spezieller Bug/Feature dieses Chips genutzt wird. Alle anderen
Karten, wie IPAC-Karten (z.B. ELSA QS1000pro), funktionieren nicht in
der Rolle der umgepolten Karte. HFC-PCI-Karten verf&uuml;gen &uuml;ber ein
spezielles Feature. Bei ihnen kann man einen B-Kanal opfern und daf&uuml;r
das gesamte D-Kanal-Protokoll auslesen - alles mit einer Karte. Dies
wird auch von ISDN4LINUX unterst&uuml;tzt.

Eine dritte (theoretische) M&ouml;glichkeit besteht f&uuml;r die Besitzer einer
eigenen PBX an die die anderen Ger&auml;te angeschlossen sind. Wenn die PBX
alle ausgehenden Gespr&auml;che protokollieren kann, so kann man das
auslesen (&uuml;blicherweise &uuml;ber einen seriellen Anschlu&szlig;).

Es gibt einen Grund, warum isdnlog dies bisher nicht unterst&uuml;tzt. Zur
Auswertung dieser Daten muss isdnlog sofort nach RELEASE COMPLETE darauf
zugreifen k&ouml;nnen, bevor irgendwelche anderen Daten &uuml;ber den D-Kanal
geschickt werden. Die bisher getesteten Anlagen waren dazu alle zu
langsam (besonders die verbreitete ISTEC). Die einzige M&ouml;glichkeit
w&auml;re, die Daten hinterher zusammenzuf&uuml;gen. Aber da gibt es wiederum
Probleme mit den verschiedenen Zeitangaben. Wer auch immer einen Versuch
damit wagen will ist willkommen (Ich werde die Logs meiner Ackermann
Euracom zur Verf&uuml;gung stellen - Matthias Hessler <tt><htmlurl
url="mailto:hessler@wi-inf.uni-essen.de"
name="hessler@wi-inf.uni-essen.de"></tt>).

<sect1> isdnlog_rategraphic: Wie kann ich die Transferraten grafisch anzeigen?
<label id="isdnlog_rategraphic">
<p>
Du kannst 'xisdnload' benutzen. Clemens Perz <tt><htmlurl
url="mailto:listperz@gwsnet.ttt.de" name="listperz@gwsnet.ttt.de"></tt>
beschrieb am 06. Februar 1997 eine weitere M&ouml;glichkeit:
<quote>
Auf Sunsite fand ich ein kleines Tool f&uuml;r die Konsole namens netload
und passte es f&uuml;r die ISDN-Interfaces an. Damit kannst Du sehr leicht
den aktuellen Verkehr auf der Leitung beobachten. Du findest es auf:
<tt><url url="ftp://ftp.region.trier.de/pub/unix/linux/sources/
network/isdn/netload-0.92.isdn.tar.gz"></tt>.
Starte es einfach mit <tt>netload isdnxx</tt>.
</quote>

<sect1> isdnlog_2callerid: Isdnlog (=2.52) zeigt bei einem Anrufer <em>zwei</em> Telefonnummern an! Welche davon ist korrekt?
<label id="isdnlog_2callerid">
<p>
Der Anrufer hat vermutlich das (teure) Feature CLIP (= Calling Line
Identification Presentation, no screening) aktiviert, was bedeutet,
da&szlig; jede beliebige Telefonnummer &uuml;bertragen werden kann. Sieh
nach bei der Frage <ref id="isdnlog_spoofcallerid"
name="isdnlog_spoofcallerid">.

Andreas Kool <tt><htmlurl url="mailto:akool@Kool.f.EUnet.de"
name="akool@Kool.f.EUnet.de"></tt> schrieb am 26. Januar 1997:
<quote>
Jedenfalls kannst Du nur Software/Anlagen t&auml;uschen, die den Screening
Indicator (Anzeige, da&szlig; die &uuml;bertragenen Nummern auf Korrektheit
gepr&uuml;ft werden) nicht auswerten - isdnlog (>=2.52) zeigt sowohl die
korrekte als auch die vorgegebene Telefonnummer an. 'CLIP, no
screening' wurde urspr&uuml;nglich geschaffen um firmeninterne Rufnummern im
&ouml;ffentlichen Netz zu &uuml;bertragen.
</quote>

<sect1> isdnlog_soundbusy: Ich habe ein Script erstellt um Sound mit cat auf /dev/sound oder einem anderen Ger&auml;t abzuspielen. Wenn einige Ereignisse gleichzeitig geschehen erhalte ich eine Fehlermeldung: <tt>Can't open output file '/dev/sound': Device or resource busy</tt>.
<label id="isdnlog_soundbusy">
<p>
Auf das Sound-Device kann nur jeweils ein Prozess zugreifen. Du brauchst
eine h&ouml;here Instanz, die den Zugriff auf das Sound-Device
koordiniert. Das k&ouml;nnte NAS (Network Audio System) und rplay sein.

<sect1> isdnlog_noshell: Isdnlog soll ein Programm mit umgeleiteter Ausgabe aufrufen (z.B. <tt>play anruf.au 2&gt;/dev/null</tt>). Warum erz&auml;hlt mir ISDN dann: <tt>Can't start '/usr/local/bin/play anruf.au 2&gt;/dev/null' with execvp()</tt>? 
<label id="isdnlog_noshell">
<p>
Weil isdnlog keine (Bourne-)Shell ist ;-). Isdnlog kann nur
<bf>echte</bf> Programme starten. Schreibe einfach ein kleines Script
und mach es ausf&uuml;hrbar (chmod +x):
<code>
&num;!/bin/sh
/usr/local/bin/play anruf.au 2&gt;/dev/null
</code>

<sect1> isdnlog_blankscreen: Bei der Hinauswahl wird der Bildschirm kurze Zeit dunkel? 
<label id="isdnlog_blankscreen">
<p>
Das kann passieren, wenn Du isdnlog mit der Option <tt>-t1</tt> oder
<tt>-t2</tt> startest, denn dann wird die Zeit mit der digitalen
Vermittlungsstelle abgeglichen. Der Bildschirmschoner denkt, da&szlig; mehr
als x Minuten vergangen sind und das bewirkt einen kurzen Blackout des
Bildschirms.


<!-- Audio
-->

<sect> audio: Umgang mit Audio &uuml;ber ISDN
<label id="audio">
<p>
Die meisten der hier aufgef&uuml;hrten Antworten stammen aus dem vbox Manual
von Matthias Hessler <tt><htmlurl
url="mailto:hessler@wi-inf.uni-essen.de"
name="hessler@wi-inf.uni-essen.de"></tt> und Bernhard Hailer
<tt><htmlurl url="mailto:dl4mhk@lrz.uni-muenchen.de"
name="dl4mhk@lrz.uni-muenchen.de"></tt>. Du bekommst das Manual auf:
<tt><url url="http://www.lrz-muenchen.de/&tilde;ui161ab/www/isdn/"></tt>
- klicke auf 'Audio!'. Die Antworten sind zwar sehr veraltet, k&ouml;nnen
Dir aber vielleicht ein paar Hinweise geben?

<sect1> audio_format: Welches Format benutzt vbox f&uuml;r die Audio-Meldungen (.msg) bei der Annahme eines Anrufes?
<label id="audio_format">
<p>
Du bekommst das Format von den Meldungen mit rmdgetheader. Die
Beispielmeldungen in den Paketen werden im Format 4 aufgenommen (die
neueste Zyxel-Kompression).


<sect1> audio_recordmsg: Wie kann ich meine eigenen Meldungen f&uuml;r vboxgetty aufnehmen?
<label id="audio_recordmsg">
<p>
Rufe zuerst Deine Nummer, auf die vboxgetty antworten soll, an und
hinterlasse eine Nachricht. Dann benenne diese Nachricht um in *.msg
(standard.msg f&uuml;r die allgemeine Meldung des Anrufbeantworters) und
kopiere sie in das Verzeichnis, in dem sich alle Meldungen befinden
(normalerweise /var/spool/vbox/user/messages, wobei user der Benutzer
ist, f&uuml;r den vboxgetty konfiguriert wurde). Du kannst eine Meldung auch
mit Mikrofon und Soundkarte aufnehmen.

<sect1> audio_play: Wie kann ich Audio-Nachrichten lokal mit /dev/audio abspielen?
<label id="audio_play">
<p>
Das geht mit vbox am besten mit dem Format 6 (uLaw - muss beim
kompilieren eingebunden sein). Du kannst dann die Nachrichten einfach
mit dem folgenden Befehl abspielen:
<code>
cat xxx &gt; /dev/audio
</code>
wobei xxx die Nachrichtendatei ist.

<sect1> audio_convertto: Wie kann ich von vbox aufgenommene Audio-Nachrichten in andere Formate (z.B. von uLaw in WAV) konvertieren? 
<label id="audio_convertto">
<p>
Das Standardwerkzeug zum Umformen aller Soundformate ist SOX. SOX kann
man als Sourcecode f&uuml;r Unix und DOS auf <tt><url
url="http://www.powerweb.de/mpeg/util/msdos/sox10c.zip"></tt> bekommen
(inklusive Quellcode, der unter Linux kompilierbar ist).

<sect1> audio_convertfrom: Wie kann ich WAV f&uuml;r uLaw formatieren (f&uuml;r meine vbox-Ansage)? 
<label id="audio_convertfrom">
<p>
Wir bekamen am 15. Januar 1997 den folgenden Tip von Christian Stueble
<tt><htmlurl url="mailto:stueble@ls6.informatik.uni-dortmund.de"
name="stueble@ls6.informatik.uni-dortmund.de"></tt>: 
<quote>
Bei mir funktioniert die folgende (etwas indirekte) Methode: 
<code>
sox file.wav -r 8000 file.ul rate
rmdcatheader -u file.ul &gt; file.msg
cat file.ul &gt;&gt; file.msg
</code>
Vielleicht musst Du andere Parameter f&uuml;r SOX eingeben. Als ersten Test
kannst Du <tt>cat file.msg &gt; /dev/audio</tt> versuchen. Du solltest
dabei etwas h&ouml;ren k&ouml;nnen.
</quote>

<!-- Audio Troubleshooting
-->

<sect1> audio_e0265: Mein vboxgetty bekommt einen Modem-Timeout und meldet den Fehler E0265.
<label id="audio_e0265">
<p>
Vermutlich ben&ouml;tigst Du einen Patch, der vor einiger Zeit (08. Dezember
1999) in der Mailingliste gepostet wurde.


<sect1> audio_noanswer: Mein vboxgetty beantwortet keine ankommenden Gespr&auml;che.
<label id="audio_noanswer">
<p>
vboxgetty ben&ouml;tigt '.vboxrc' im Verzeichnis des Benutzers, f&uuml;r den
vboxgetty konfiguriert wurde. In dieser Datei steht die Anzahl der
Rufsignale nach denen vboxgetty abheben soll.

<sect1> audio_nocat: Wenn vboxgetty eine Nachricht in einem Format aufgezeichnet hat, das ich nicht mit 'cat xxx &gt; /dev/audio' abspielen kann; wie kann ich mir dann die Nachricht anh&ouml;ren?
<label id="audio_nocat">
<p>
Vboxgetty kann alle Formate abspielen. Du kannst die Nachricht in die
Standard-Meldung-Datei (standard.msg im Nachrichten-Verzeichnis)
kopieren und Dich selbst anrufen. Dabei wird Dir die Nachricht
vorgespielt. (Vergiss nicht, danach die Originaldatei zur&uuml;ck zu
kopieren :-) ). Siehe Frage <ref id="audio_recordmsg"
name="audio_recordmsg">.

<sect1> audio_earlyrecording: Am Anfang einer von vboxgetty aufgenommenen Nachricht h&ouml;rt man oft einen Teil meiner eigenen Ansage? 
<label id="audio_earlyrecording">
<p>
Dies ist ein bekannter Fehler, der beim Umschalten zwischen dem
Abspielen der Ansage und dem Aufnehmen der Nachricht passiert. Bisher
ist keine L&ouml;sung bekannt.


<!-- Countryspecific pecularities
-->

<sect> L&auml;nder, in denen ISDN4LINUX unterst&uuml;tzt wird
<label id="countries">

<sect1> country_which: In welchen L&auml;ndern funktioniert ISDN4LINUX? 
<label id="country_which">
<p>
Uns sind zumindest die folgenden L&auml;nder bekannt:
<itemize>
<item>Australien
<item>Belgien
<item>D&auml;nemark
<item>Deutschland
<item>Finnland
<item>Frankreich (siehe Frage <ref id="country_france"
name="country_france">)
<item>Gro&szlig;britannien (siehe Frage <ref id="country_uk"
name="country_uk">)
<item>Indien
<item>Irland
<item>Israel
<item>Italen (siehe Frage <ref id="country_italy" name="country_italy">)
<item>Japan
<item>Luxemburg
<item>Niederlande (siehe Frage <ref id="country_netherlands"
name="country_netherlands">)
<item>Norwegen
<item>&Ouml;sterreich (siehe Frage <ref id="country_austria"
name="country_austria">)
<item>Pakistan (siehe Frage < <ref id="country_pakistan"
name="country_pakistan">)
<item>Peru
<item>Polen
<item>Portugal (siehe Frage <ref id="country_portugal"
name="country_portugal">) 
<item>Schweden
<item>Schweiz (siehe Frage <ref id="country_switzerland"
name="country_switzerland">) 
<item>Singapur
<item>Spanien
<item>Ungarn
<item>USA (siehe Frage <ref id="country_northamerica"
name="country_northamerica">) 
</itemize>
Wenn Dein Land nicht in dieser Liste steht, so bedeutet das nicht,
da&szlig; I4L dort nicht funktioniert. Es bedeutet nur, da&szlig; wir
bisher dar&uuml;ber noch keinen Bericht bekamen. Suche in der Mailingliste
nach anderen Usern aus Deinem Land.

<sect1> country_certified: Ist ISDN4LINUX von den Telekommunikations-Beh&ouml;rden f&uuml;r den Betrieb zugelassen? 
<label id="country_certified">
<p>
Das kommt auf den benutzten Treiber und Dein Land an. Wir haben nur
Informationen &uuml;ber Deutschland (sende mir Informationen &uuml;ber
andere L&auml;nder, wenn Du welche hast). Diese gelten jedoch auch
f&uuml;r die meisten europ&auml;ischen L&auml;nder, da eine Zulassung
in einem Staat der EU auch von allen anderen Staaten der Gemeinschaft
akzeptiert werdem muss.  Diese Treiber sind f&uuml;r den Betrieb in
Deutschland zugelassen:
<itemize>
<item>Aktive Karten: die Zulassung gilt f&uuml;r die komplette Karte
inklusive der Firmware. Daher gilt die Zulassung auch f&uuml;r den Betrieb
dieser Karten mit ISDN4LINUX. 
<item>Karten der Serie Elsa Quickstep (neuer Name: Microlink PCI)
<item>Eicon Diva 2.01 PCI
</itemize>

<sect> 1tr6: Deutsche Eigenheiten bei 1TR6 
<label id="1tr6">

<sect1> 1tr6_eaz: Welche EAZ soll ich mit I4L benutzen?  
<label id="1tr6_eaz">
<p>
Du kannst alle verf&uuml;gbaren EAZ nehmen. Zwei EAZs haben jedoch eine
spezielle Bedeutung und k&ouml;nnen Probleme verursachen:
<verb>
EAZ 0: Gruppenruf (alle Telefone der Anlage l&auml;uten)
EAZ 9: Gruppenruf (kein Telefon der Anlage l&auml;utet)
</verb>
Gernot Zander <tt><htmlurl url="mailto:hifi@scorpio.in-berlin.de"
name="hifi@scorpio.in-berlin.de"></tt> schrieb am 06. Januar 1997 dazu:
<quote>
Ich w&uuml;rde die 0 nicht benutzen, da es f&uuml;r meinen Geschmack zu
wahrscheinlich ist, da&szlig; I4L alle Audio-Verbindungen an sich
reissen w&uuml;rde.
</quote>

<sect1> 1tr6_extension: Ich benutze 1TR6 an einer Nebenstelle - die Nebenstellennummer hat mehr als eine Ziffer (z.B. 206). Wie lautet meine EAZ? 
<label id="1tr6_extension">
<p>
Jens Ey <tt><htmlurl url="mailto:jens@jeyhh.shnet.org"
name="jens@jeyhh.shnet.org"></tt> schrieb am 10. Januar 1997:
<quote>
Die EAZ f&uuml;r Nebenstellen ist normalerweise die letzte Ziffer der
Nebenstellennummer. Als EAZ f&uuml;r den Linux Computer solltest Du in
diesem Fall '6' benutzen.
</quote>

<sect1> 1tr6_spv: Was ist eine SPV?  
<label id="1tr6_spv">
<p>
SPV steht f&uuml;r 'semipermanente Verbindung' und ist eine (mittlerweile
&uuml;berholte) Spezialit&auml;t der Deutschen Telekom. Wie bei einer
Standleitung ist der Verbindungspartner festgelegt, die Verbindung wird
jedoch nur hergestellt, wenn sie ben&ouml;tigt wird (was dann allerdings
viel schneller als bei einer W&auml;hlverbindung geschieht). Da die Telekom
die Leitung in der &uuml;brigen Zeit f&uuml;r andere Verbindungen nutzen kann,
ist eine SPV billiger als eine Standleitung.

Diese SPV darf nicht mit der &Ouml;sterreicher SPV verwechselt werden. Die
&Ouml;sterreicher SPV besteht aus einem Kanal als Standleitung und einem
Kanal als W&auml;hlleitung.

<sect1> 1tr6_spv: Unterst&uuml;tzt ISDN4LINUX SPVs? Wie?  
<label id="1tr6_spv">
<p>
Zur Aktivierung von SPVs musst Du ein 'S' vor die zu w&auml;hlende Nummer
setzen. Das funktioniert recht gut mit Modememulationen und auch mit
definierten Netzwerk-Interfaces.


<sect> Andere L&auml;nder


<sect1> country_austria: &Ouml;sterreich: Wir haben weder eine MSN noch eine EAZ, nur eine normale Telefonnummer. Was m&uuml;ssen wir f&uuml;r I4L angeben? 
<label id="country_austria">
<p>
In &Ouml;sterreich werden ISDN-Leitungen standardm&auml;&szlig;ig <em>ohne</em>
MSN installiert (im Unterschied zu Deutschland). Das bedeutet, da&szlig;
bei einem Anruf f&uuml;r die installierte ISDN-Nummer beim Empf&auml;nger ein
'Gruppenruf' angezeigt wird. I4L meldet dann 'incoming call without CPN'
('CPN' = called party number (Nummer des angew&auml;hlten
Empf&auml;ngers)). L&ouml;sung: Setze die empfangende 'MSN' (in Wirklichkeit:
keine) auf '0', dann antwortet I4L auf den Gruppenruf. Anderenfalls
wartet es auf die Anzeige der Nummer, die I4L mitgeteilt wurde, und das
wird nicht passieren (nur bei *zus&auml;tzlicher* MSN). Das gleiche gilt
f&uuml;r die Einstellungen f&uuml;r Dein getty.

Andererseits solltest Du die hinausw&auml;hlende MSN korrekt eintragen (ohne
Ortsvorwahl) -- obwohl eine falsche MSN von Deinem
Telefondienste-Anbieter durch die richtige MSN ersetzt wird.

<sect1> country_france: Frankreich: Wie sieht unsere MSN aus? 
<label id="country_france">
<p>
Wenn Du keine MSN hast, musst Du nur die letzten 4 Ziffern Deiner
Telefonnummer als lokale Nummer angeben. Du hast da den Vorteil,
da&szlig; Du auch Sub-Addressing nutzen kannst. Wenn Deine Telefonnummer
01 41 33 67 87 lautet und Du die Subaddresse 02 nutzen willst, tr&auml;gst
Du als lokale Nummer des HiSax-Treibers die 6787.02 ein.

<sect1> country_italy: Italen: Wie sieht unsere MSN aus?
<label id="country_italy">
<p>
ISDN4LINUX funktioniert auch in Italien (ICN Karte). Die MSN ist die
Telefonnummer mit der italienischen Ortsvorwahl, jedoch ohne die
vorangestellte 0. Wenn z.B. meine Telefonnummer 72004681 und meine
Ortsvorwahl 045 lauten, so ist meine MSN 4572004681. Nun wird ISDN4LINUX
mit der Einstellung <tt>AT&amp;E4572004681</tt> gut funktionieren.

<sect1> country_netherlands: Niederlande: Wie sieht unsere MSN aus? 
<label id="country_netherlands">
<p>
In den Niederlanden enth&auml;lt die MSN (anders als in Deutschland)
<em>auch die Ortsvorwahl</em> - allerdings ohne die vorangestellte 0.

<sect1> country_northamerica: Nordamerika: K&ouml;nnen wir ISDN4LINUX bei uns nutzen? 
<label id="country_northamerica">
<p>
Leider k&ouml;nnen europ&auml;ische ISDN-Karten in Nordamerika nicht benutzt
werden. In Europa stellt normalerweise die Telefongesellschaft den
Netzwerk-Abschlu&szlig; (NTBA) zur Verf&uuml;gung. In Nordamerika muss
<em>der Kunde</em> dieses Ger&auml;t (NT-1) selbst besorgen! Daher besitzen
dort die meisten ISDN-Karten einen integrierten NT-1.

Es gibt da noch andere Unterschiede. So hat z.B. ein PRI (Primary Rate
Interface) in Europa 30 B-Kan&auml;le, in Nordamerika nur 23. Es wird dort
auch das Kanal-Protokoll NI-1 benutzt. NI-1 ist mit DSS1 verwandt
(beide sind Q.931-Protokolle), jedoch haben beide ganz verschiedene
Funktionsgruppen und sind daher nicht kompatibel zueinander.

Leider wurden bisher weder das NT-1 noch das 5ESS-Protokoll in
ISDN4LINUX implementiert.

Allerdings hat die Firma 'Spellcaster' einen ISDN4LINUX-Treiber f&uuml;r
ihre eigenen (aktiven) Karten geschrieben. Weitere Informationen
erh&auml;ltst Du bei:
<verb>
Ian James
Customer Service Manager
SpellCaster Telecommunications Inc.
73 Laird Drive, Suite 206
Toronto, Ontario
Canada M4G 3T4
Phone: 1 (800) 238-0547
Fax: (416) 425-0854
</verb>
E-mail:  <tt><htmlurl url="mailto:ipj@spellcast.com"
name="ipj@spellcast.com"></tt> oder <tt><htmlurl
url="mailto:sales@spellcast.com" name="sales@spellcast.com"></tt> 
Website: <tt><url url="http://www.spellcast.com"></tt>

Leider lautet die letzte Nachricht, da&szlig; die Produktion dieser
Karten eingestellt wurde. Wir werden Dich informieren, wenn wir einen
anderen Hersteller f&uuml;r ISDN-Karten f&uuml;r Nordamerika gefunden
haben.

<sect1> country_pakistan: Pakistan: Was sollten wir als MSN eingeben?  
<label id="country_pakistan">
<p>
Anscheinend gibt es dort keine MSN-Funktion. Daher sollte als MSN die
'0' benutzt werden.

<sect1> country_portugal: Portugal: Was sollten wir als MSN benutzen?
<label id="country_portugal">
<p>
Solange nur eine Telefonnummer oder MSN beantragt wird, sendet die
Telefongesellschaft keine Caller ID. Also sollte die MSN auf '0' gesetzt
werden. Wenn mehr als eine MSN beantragt wurde, sollten diese wie
&uuml;blich eingetragen werden.

<sect1> country_switzerland: Schweiz: Wir haben weder eine MSN noch eine EAZ, nur eine normale Telefonnummer. Was m&uuml;ssen wir mit I4L benutzen?   
<label id="country_switzerland">
<p>
In der Schweiz musst Du die <em>letzte Ziffer</em> Deiner Telefonnummer
als MSN/EAZ nehmen ('6' wenn Deine Telefonnummer '123456' lautet).

<sect1> country_uk: Gro&szlig;britannien: Was sollen wir als MSN benutzen? 
<label id="country_uk">
<p>
Das h&auml;ngt von Deiner Art von ISDN ab.
<itemize>
<item> ISDN: Erlaubt keine normalen MSNs in Gro&szlig;britannien. Jede
einzelne MSN ist eine einzelne Ziffer (0 - 9), entsprechend der
letzten Ziffer Deiner Telefonnummer. Entweder hast Du <em>keine</em>
MSNs (dann stellst Du in ISDN4LINUX die '0' als MSN ein, i.a. mit
<tt>AT&amp;E0</tt>) oder 10 MSNs. In dem Fall bekommst Du einen Block
mit 10 fortlaufenden Telefonnummern (xxx0-xxx9), von denen jeweils die
letzte Ziffer (0-9) Deine MSN ist (0 wird benutzt, wenn Du eine
ung&uuml;ltige Nummer einstellst).  

<item> ISDN2e: Scheint normales EuroISDN zu sein. Du bekommst MSNs,
die Du benutzen und in ISDN4LINUX einstellen kannst (?)

<item> BTHH (BT HomeHighway): zus&auml;tzlich zu 2 ISDN-Anschl&uuml;ssen
bekommst Du noch 2 analoge Leitungen mit separaten
Telefonnummern. Anrufe von und zu diesen analogen Ports werden
allerdings nicht auf der ISDN-Leitung angezeigt, obwohl sie einen
B-Kanal belegen. Zus&auml;tzliche MSNs sind <em>nicht</em> verf&uuml;gbar
(benutze darum '0' als MSN f&uuml;r ISDN4LINUX). Geb&uuml;hrenanzeige ist gegen
extra Bezahlung erh&auml;ltlich. Stelle in ISDN4LINUX nur Deine 'digitale'
Telefonnummer als MSN ein.
<item> BTBH (BT BusinessHighway): Der zus&auml;tzliche 'Papierkrieg'
inklusive einer Bonit&auml;tspr&uuml;fung verschafft Dir MSNs und andere Extras
gegen gesonderte Bezahlung. Dar&uuml;ber hinaus ist es ziemlich so wie bei
BTHH. Trage in ISDN4LINUX Deine 'digitale' Nummer und/oder Deine MSNs
ein.
</itemize>
Beachte bitte, da&szlig; BT ein unerwartetes 'Feature' bei
internationalen Anrufen bietet. Bei internationalen Datenverbindungen
musst Du 000&lt;Landescode&gt; (drei Nullen) w&auml;hlen anstatt  dem
&uuml;blichen 00&lt;Landescode&gt; (zwei Nullen) f&uuml;r internationale
Sprechverbindungen.

&Uuml;brigens: bei der Einstellung einer BT Speedway Karte kannst Du die AVM
Fritz Karte ausw&auml;hlen (entweder ISA oder PCI - je nachdem, welche Du
hast).

Du solltest Dir auch einmal die Seite <htmlurl
url="http://www.wurtel.demon.nl/i4l-howto-uk.html"
name="http://www.wurtel.demon.nl/i4l-howto-uk.html"> ansehen.

<sect> misc: Verschiedenes
<label id="misc">

<sect1> misc_nonullcable: Kann ich zwei ISDN-Ger&auml;te direkt mit einer Art 'Nullmodem-Kabel' verbinden?   
<label id="misc_nonullcable">
<p>
Nein, das ist nicht m&ouml;glich. Das Konzept von ISDN erlaubt das nicht. Es
wird ein NTBA oder eine Anlage mit einem internen Bus ben&ouml;tigt.

<sect1> misc_uisdn: Kann ISDN4LINUX parallel zu UISDN laufen?
<label id="misc_uisdn">
<p>
Ja. Beide ISDN-Pakete laden das Modul isdn.o. Allerdings sind die
Benennungsregeln unterschiedlich. Tip: Benenne Urlichs isdn.o um in
uisdn.o und &auml;ndere lib/modules/modules.isdn (oder wie auch immer die
Datei heisst, die die Module auflistet und vom Script gelesen wird)
entsprechend.  Gl&uuml;cklicherweise sind die Standardnamen der ISDN-Devices
auch verschieden.


<sect> glossary: ISDN-spezifische Begriffe, die in dieser FAQ benutzt werden  
<label id="glossary">
<p>
<descrip>
<tag/active card/
<label id="glossary_active">
Es gibt Karten in verschiedenen Versionen: passive, semi-aktive und
aktive. Aktive Karten behandeln das D-Kanal- und B-Kanal-Protokoll mit
ihrer Hardware. Die zus&auml;tzliche Hardware macht sie
teurer. Daf&uuml;r sind sie aber auch eher geeignet, wenn es um eine
niedrige Beanspruchung der CPU geht (wenn sich z. B. mehrere
ISDN-Karten in einem Computer befinden). Wegen dieser speziellen
Hardware wird auch ein spezieller Treiber ben&ouml;tigt.
Abh&auml;ngig von der Hardware / dem Treiber sind spezielle Aufgaben
wie z.B. das Senden/Empfangen von G3-Faxen m&ouml;glicherweise sehr
leicht zu implementieren.  Wenn Du diese Features brauchst, dann kaufe
Dir eine aktive Karte.

<tag/AOC-D/
'Advice Of Charge During the Call' (Geb&uuml;hren&uuml;bermittlung
w&auml;hrend des Gespr&auml;ches).

<tag/AOC-E/
'Advice of Charge at the End of the Call' (Geb&uuml;hren&uuml;bermittlung am
Ende des Gespr&auml;ches). In Deutschland ist dieser Service im
'Komfortanschlu&szlig;' enthalten. 

<tag/BRI/ 
BRI steht f&uuml;r Basic Rate Interface und ist das am weitesten
verbreitete Interface. In Europa enth&auml;lt ein BRI 2 B-Kan&auml;le
f&uuml;r die Daten&uuml;bertragung und 1 D-Kanal f&uuml;r die
Verwaltung der Daten&uuml;bertragung. Die Alternative w&auml;re ein
PRI (Primary Rate Interface).

+<tag/CLIP/
+CLIP (Calling Line Identification Presentation = Anzeige der
Anruferkennung) kann vom ISDN-Dienstleister angeboten werden. Wenn Du
jemanden anrufst so wird Deine Telefonnummer an das andere Telefon
&Uuml;bertragen. Das Gegenteil zu CLIP ist CLIR. In Deutschland ist
CLIP der Normalfall.

<tag/CLIR/ 
CLIR (Calling Line Identification Restriction = Einschr&auml;nkung der
Identifikation der Anruferkennung) kann vom ISDN-Provider angeboten
werden: man kann (von Ruf zu Ruf) die &Uuml;bermittlung der eigenen
Caller ID an den Angerufenen vermeiden. Das Gegenteil von CLIR ist
CLIP. In Deutschland muss das beantragt werden, ist aber kostenfrei
(die Call-by-Call-&Uuml;bermittlung der Caller ID ist jedoch
kostenpflichtig).

<tag/COLP/
COLP (Connected Line Identification Presentation) ist ebenfalls ein
Angebot des ISDN-Providers. Du bekommst auf Deinen Antrag hin ein
erweitertes W&auml;hl-Protokoll. Du bekommst R&uuml;ckmeldungen
&uuml;ber Deine ausgehenden Verbindungen von Deiner
Telefongesellschaft. In Deutschland muss COLP beantragt werden und ist
kostenpflichtig. Mehr Informationen als durch COLP bekommst Du durch
eine umgekehrt angeschlossene zweite ISDN-Karte.

<tag/CVS Tree/
Die Entwickler von I4L haben sich zu einem Team zusammen
geschlossen. Das Tool CVS erleichtert den Mitgliedern des Teams Patches
zu erstellen und einzuarbeiten. Des weiteren wird die Entwicklung des
Projektes dadurch dokumentiert und die Reproduktion alter Versionen
erleichtert.

<tag/EAZ/ 
Dies ist ein deutsches &Auml;quivalent f&uuml;r eine MSN. In
Deutschland werden EAZ und MSN synonym benutzt obwohl man je nach
benutztem Protokoll Unterschiede machen sollte. Das, was im
Euro-ISDN-Protokoll MSN genannt wird, war die EAZ im deutschen
1TR6-ISDN-Protokoll (ein deutscher Vorl&auml;ufer des Euro-ISDN).

<tag/HDLC/
Ein gebr&auml;uchliches low-level Protokoll.

<tag/HSCX/ 
Ein Siemens-Chip, den man wie den ISAC auf vielen passiven
Karten findet. Er &uuml;bernimmt den seriellen Bus vom ISAC und setzt
zwischen diesem und den B-Kan&auml;len beim Empfang (demultiplexing) oder
Senden (multiplexing, Einsetzen der Bits in der korrekten Anordnung) um.

<tag/ISAC/
Ein Siemens-Chip, den man wie den HSCX auf vielen passiven Karten findet. Er
ist f&uuml;r die Kommunikationsschicht 1 verantwortlich und sitzt daher
(fast) direkt in der Leitung. Er behandelt das D-Kanal-Protokoll und
sendet die S0-Daten zu einem speziellen seriellen Bus (IOM). Beim
Senden verf&auml;hrt er entgegengesetzt. 

<tag/MSN/ 
Im Gegensatz zu einer normalen Telefonverbindung kann eine
ISDN-Verbindung mehr als eine Telefonnummer haben - jede einzelne davon
wird MSN (Multiple Subscriber Number) genannt.

<tag/passive card/
<label id="glossary_passive">
Es gibt Karten in verschiedenen Versionen: passive, semi-aktive und
aktive. Passive Karten verarbeiten das D-Kanal- und B-Kanal-Protokoll
softwarem&auml;&szlig;ig. Dadurch sind sie kosteng&uuml;nstiger,
jedoch nur dort einsetzbar, wo die CPU die zus&auml;tzliche Arbeit
leisten kann (bei normalem Datenverkehr ist jeder Computer ab einem
486er oder gar einem 386er in der Lage, eine oder zwei Karten zu
versorgen). Da nur wenige Hardware-Chips weit verbreitet sind, kann
ein allgemeiner Treiber (HiSax) f&uuml;r fast alle passiven Karten
eingesetzt werden.

<tag/PBX/
Eine PBX (Private Branch eXchange = Private Telefonanlage) dient dazu,
verschiedene interne Ger&auml;te mit dem ISDN-Netzwerk zu
verbinden. Das gilt normalerweise f&uuml;r analoge Ger&auml;te, die
nicht direkt an das ISDN-Netzwerk angeschlossen werden
k&ouml;nnen. Die PBX kann auch einen internen digitalen S0-Bus
f&uuml;r den Anschlu&szlig; von ISDN-Ger&auml;ten zur Verf&uuml;gung
stellen, &uuml;ber den interne Gespr&auml;che ohne Umweg &uuml;ber die
Vermittlungsstelle gef&uuml;hrt werden k&ouml;nnen (dabei werden
Geb&uuml;hren der Telefongesellschaft vermieden).

<tag/Point-to-Point Mode/ 
Dein Interface kann entweder im Multi-Device-Mode (Mehrger&auml;teanschluss)
oder im Point-to-Point-Mode (Anlagenanschluss) konfiguriert werden. Beim
Mehrger&auml;teanschluss k&ouml;nnen mehrere ISDN-Ger&auml;te gleichzeitig am
ISDN-Bus angeschlossen sein. Normalerweise sind diesem Bus nur wenige
Nummern zugeteilt und die Ger&auml;te k&ouml;nnen sich die Anrufe ausw&auml;hlen,
die sie annehmen wollen. Im Gegensatz dazu erlaubt der Anlagenanschluss
nur ein Ger&auml;t, das alle Anrufe entgegen nimmt. Das ist normalerweise
f&uuml;r kleine Firmen gedacht, die ihre PBX anschlie&szlig;en und die
letzten Ziffern ihrer Telefonnummern selbst, unter eigener Kontrolle,
verwalten wollen. Diese Konfiguration bietet normalerweise noch
zus&auml;tzliche Leistungen, ist aber auch kostspieliger.

<tag/PRI/
PRI steht f&uuml;r Primary Rate Interface und wird benutzt, wenn ein
einzelnes oder mehrere BRI nicht gen&uuml;gend Bandbreite liefern. In
Europa enth&auml;lt ein PRI 30 B-Kan&auml;le f&uuml;r den Datenverkehr
und 1 D-Kanal f&uuml;r die Verwaltung des Datenverkehrs.

<tag/semi-active card/
<label id="glossary_semiactive">
Es gibt Karten in verschiedenen Versionen: passive, semi-aktive und
aktive. Es gibt f&uuml;r semi-aktive Karten keine feste Definition, das
Folgende ist also unsere Definition: semi-aktive Karten verarbeiten das
B-Kanal-Protokoll mit ihrer Hardware, einem speziellen DSP (Digital
Signal Processor), das D-Kanal-Protokoll wird jedoch der Software
&uuml;berlassen. Dadurch sind sie besser f&uuml;r spezielle Aufgaben geeignet,
z.B. f&uuml;r das Senden und Empfangen von analogen G3-Faxen. F&uuml;r ihre
spezielle Hardware wird ein besonderer Treiber ben&ouml;tigt. Beachte aber,
da&szlig; aus Marketing-Gr&uuml;nden manche Karten als semi-aktiv bezeichnet
werden, in Wirklichkeit aber passive Karten sind (z.B. Teleint).

<tag/subaddressing/
Beim W&auml;hlen kann man eine zus&auml;tzliche Nummer angeben, die
Sub-Addresse. Die Subaddresse wird an die Gegenstelle &uuml;bertragen, die
darauf reagieren kann. Dieses Feature ist vielleicht nicht &uuml;berall
verf&uuml;gbar, zumindest nicht kostenlos (au&szlig;er in Frankreich). 

<tag/TEI/
TEI steht f&uuml;r Terminal End Identifier. Die lokale Vermittlungsstelle
(bei einem internen S0 die PBX) ordnet automatisch oder permanent jedem
Endger&auml;t einen TEI zu. Das erm&ouml;glicht die Addressierung des
D-Kanals. TEIs haben die folgende Werte: 
<itemize>
<item>0-63 = permanente TEIs (z.B. 0 f&uuml;r Point-to-Point Verbindungen)
<item>64-126 = automatisch zugeteilte TEIs
<item>127 = Sendung an alle Ger&auml;te (z.B. ein eingehender Anruf)
</itemize>

<tag/UUS/
UUS steht f&uuml;r User-to-User Signalling. Es bedeutet, da&szlig; beim
Anruf einige Bytes mit Benutzerdaten zusammen mit den Daten f&uuml;r den
Verbindungsaufbau gesendet werden. Diese Eigenschaft wurde in
Deutschland in der Vergangenheit zu stark ausgenutzt, soda&szlig; die
lokalen Vermittlungsstellen immer weniger freie Kan&auml;le hatten (die
Rufanmeldung bewirkt die Reservierung eines B-Kanals). Seither ist
dieses Feature normalerweise kostenpflichtig und die Menge der Daten ist
limitiert (abh&auml;ngig von Deinem ISDN-Provider). Sieh Dir die
Benutzungsbestimmungen an. Kurz gesagt, ist es nur erlaubt, wenn Du
tats&auml;chlich eine Verbindung aufbauen willst. Beachte bitte, da&szlig;
laut einigen Berichten einige fehlerhafte PBX (wie die ISTEC 1003) eine
Verbindung ablehnen, wenn ihnen die Unterst&uuml;tzung f&uuml;r UUS angezeigt
wird.
</descrip>

</article>

<!-- $Id: i4lfaq-de.sgml,v 1.5 2000/07/23 16:05:24 hessler Exp $ -->

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:nil
sgml-parent-document:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
