Initial import from FreeBSD RELENG_4:
[dragonfly.git] / share / examples / isdn / contrib / i4b-ppp-newbie.txt
1 $FreeBSD: src/share/examples/isdn/contrib/i4b-ppp-newbie.txt,v 1.1.2.1 2001/08/10 14:59:48 obrien Exp $
2
3                               PPP mit isdn4bsd
4      _________________________________________________________________
5    
6    Version 1.01
7    Datum: 22.02.1999
8    Autor: [1]Dominik Brettnacher <domi@saargate.de>
9    
10    - Anmerkungen und Verbesserungsvorschläge sind willkommen -
11    
12     1. vorab
13        Dieser Text soll Neulingen helfen, sich mittels isdn4bsd und BSD
14        per PPP z.B. bei ihrem Provider einwählen zu können.
15        isdn4bsd bringt einiges an Dokumentation und
16        Konfigurationsbeispielen mit, jedoch ist es nicht immer leicht,
17        die entsprechenden Hinweise gut miteinander zu kombinieren, so daß
18        am Schluß das dabei herauskommt, was man haben möchte.
19     2. Wo bekomme ich isdn4bsd?
20        hier solle es keine allzu großen Probleme geben: isdn4bsd ist auf
21        dem FTP-Server [2]ftp.consol.de erhältlich. Man beachte dabei, daß
22        man sich nicht, wie üblich, als anonymous, sondern als isdn4bsd
23        einloggen muß. Benutzer von Browsern geben als Adresse
24        [3]ftp://isdn4bsd@ftp.consol.de und als Passwort ihre
25        eMail-Adresse an.
26        Wertvolle Informationen findet man in der Datei README.
27     3. Welche ISDN-Karten werden unterstützt?
28        Informationen darüber findet man in der README-Datei.
29     4. Ich benutze einen externen ISDN-Adapter - was nun?
30        Externe Adapter benötigen keine direkte Unterstützung, weil sie
31        über die serielle Schnittstelle angesteuert werden. Man kann also
32        das normale PPP benutzen. man ppp hilft hier sicher weiter.
33     5. isdn4bsd installieren
34        Wie man isdn4bsd installiert, steht in der Datei
35        FreeBSD/INSTALLATION (für NetBSD und OpenBSD analog). Eine
36        Beispielkonfiguration des Kernel sieht so aus:
37 [...]
38 #
39 # i4b passive ISDN cards support (isic - I4b Siemens Isdn Chipset driver)
40 # note that the ``options'' and ``device'' lines must BOTH be defined !
41 #
42 # Non-PnP Cards:
43 # --------------
44 #
45 # AVM A1 or AVM Fritz!Card
46 options "AVM_A1"
47 device    isic0 at isa? port 0x300 net irq 15 flags 4 vector isicintr
48 #
49 # ISDN Protocol Stack
50 # -------------------
51 #
52 # Q.921 / layer 2 - i4b passive cards D channel handling
53 pseudo-device  "i4bq921"
54 #
55 # Q.931 / layer 3 - i4b passive cards D channel handling
56 pseudo-device  "i4bq931"
57 #
58 # layer 4 - i4b common passive and active card handling
59 pseudo-device  "i4b"
60 #
61 # ISDN devices
62 # ------------
63 #
64 # userland driver to do ISDN tracing (for passive cards only)
65 pseudo-device   "i4btrc" 4
66 #
67 # userland driver to control the whole thing
68 pseudo-device   "i4bctl"
69 #
70 # userland driver for access to raw B channel
71 #pseudo-device   "i4brbch"       4
72 #
73 # userland driver for telephony
74 #pseudo-device   "i4btel"        2
75 #
76 # network driver for IP over raw HDLC ISDN
77 #pseudo-device   "i4bipr"     4
78 # enable VJ header compression detection for ipr i/f
79 #options       IPR_VJ
80 #
81 # network driver for sync PPP over ISDN
82 pseudo-device  "i4bisppp"     1
83 pseudo-device  sppp      1
84 #
85 #---------------------------------------------------------------------------
86 [...]
87        Nachdem ein neuer Kernel kompiliert und das System neugestartet
88        wurde, kann es weiter gehen.
89     6. Konfiguration isdnd.rc
90        Die für ISDN wichtigste Konfigurationsdatei ist
91        /etc/isdn/isdnd.rc. Mit man isdnd.rc erhält man Informationen über
92        die Einstellungen, die man dort vornehmen kann. Im Folgenden ein
93        Beispiel:
94
95
96 #==============================================================================
97 # SYSTEM section: isdnd global configuration parameters
98 #==============================================================================
99 system
100
101 # accounting
102 # ----------
103
104 acctall         = on                    # generate info for everything
105 acctfile        = /var/log/isdnd.acct   # name & location of accounting file
106 useacctfile     = yes                   # generate accouting info to file
107
108 # monitor
109 # -------
110
111 monitor-allowed = no                    # global switch: monitor on/off
112 monitor-port    = 451                   # default monitor TCP port
113
114 # Monitor rights are granted due to the most specific host/net spec, i.e. in
115 # the example below host 192.168.1.2 will have the rights specified on that
116 # line, even so it belongs to net 192.168.1.0/24 as well.
117 #
118 # A monitor specification may either be:
119 #
120 #  - the name of a local (UNIX-domain) socket; this MUST start with a "/"
121 monitor         = "/var/run/isdn-monitor"
122 monitor-access  = fullcmd
123 monitor-access  = channelstate, logevents
124 monitor-access  = callin, callout
125
126 # ratesfile
127 # ---------
128
129 ratesfile       = /etc/isdn/isdnd.rates # name & location of rates file
130
131 # regular expression pattern matching
132 # -----------------------------------
133
134 #regexpr        = "connected.*KTS"      # look for matches in log messages
135 #regprog        = connectKTS            # execute program when match is found
136
137 # realtime priority section
138 # -------------------------
139
140 rtprio          = 25                    # modify isdnd's process priority
141
142 ###############################################################################
143 entry
144 name                    = lf
145 usrdevicename           = isp
146 usrdeviceunit           = 0
147 isdncontroller          = 0
148 isdnchannel             = -1
149 local-phone-incoming    = 012345678
150 remote-phone-incoming   = 876543210
151 local-phone-dialout     = 012345678
152 remote-phone-dialout    = 876543210
153 remdial-handling        = first
154 dialin-reaction         = accept
155 dialout-type            = normal
156 b1protocol              = hdlc
157 idletime-incoming       = 240
158 idletime-outgoing       = 30
159 earlyhangup             = 5
160 ratetype                = 0
161 unitlength              = 90
162 unitlengthsrc           = rate
163 dialretries             = 3
164 dialrandincr            = on
165 recoverytime            = 25
166
167 connectprog             = is-up
168 disconnectprog          = is-down
169
170        Wichtig sind hier für den Neuling die vier *-phone-* Einträge, die
171        jeweils die lokale Rufnummer und die der Gegenstelle für ein- und
172        ausgehende Verbindungen angeben.
173    
174     7. ISDN-Verbindungen aufbauen
175        um ISDN-Verbindungen aufzubauen, bedarf es einiger Befehle, die
176        beim Systemstart aufgerufen werden. Man kann sie zum Beispiel am
177        Ende von /etc/rc.local unterbringen. Hier gibt es aber durchaus
178        noch andere Lösungen:
179        [...]
180        # start ISDN
181        echo -n 'ppp / ISDN...'
182        echo -n 'isdnd...'
183        /usr/local/bin/isdnd
184        echo -n 'ifconfig...'
185        ifconfig isp0 link1 0.0.0.0 1.1.1.1 netmask 0xffffff00
186        ifconfig isp0 down
187        echo -n 'sppp...'
188        spppcontrol isp0 myauthproto=pap myauthname="xxx"
189        myauthsecret="xxx" hisauthproto=none
190        echo -n 'ifconfig...'
191        ifconfig isp0 up
192        echo -n 'setting routes...'
193        route add default -interface isp0
194        echo '.'
195        Ändern muß man hier eventuell die Zieladresse des Providers (im
196        Beispiel 1.1.1.1). Man bekommt diese entweder vom Provider, oder
197        aber man muß einen Versuch daransetzen, sie selbst herauszufinden.
198        Wie das funktioniert, steht in der Datei FAQ des isdn4bsd-Paketes.
199        Auch am Aufruf von spppcontrol (Vorsicht: spppcontrol bis
200        hisauthproto=none ist eine Zeile!) muß noch etwas umgestellt
201        werden:
202           + myauthproto steht für das Authentifizierungsprotokoll.
203             Möglich sind pap oder chap.
204           + myauthname ist der PPP-Benutzername.
205           + myauthsecret ist das PPP-Kennwort.
206        Wenn man nun die Befehle in /etc/rc.local ausführt, kann man mit
207        einem ping auf eine beliebige Adresse außerhalb des lokalen Netzes
208        eine Verbindung öffnen. Sie wird automatisch nach einiger
209        Inaktivität (siehe isdnd.rc) wieder geschlossen.
210    
211     8. Es funktioniert nicht - was kann ich tun?
212        Es gibt einige Möglichkeiten zur Fehlerdiagnose:
213           + dmesg gibt Aufschluß darüber, ob die Karte richtig erkannt
214             wurde.
215           + ifconfig (siehe rc.local) kann mit dem Parameter debug
216             aufgerufen werden und gibt dann einiges an Informationen aus.
217           + die Nachrichten in /var/log/messages können außerdem
218             hilfreich sein
219    
220     9. wer kann mir helfen?
221           + die erste Adresse für ISDN-Probleme ist die Mailingliste
222             [4]freebsd-isdn@freebsd.org - man bestellt sie, indem man
223             eine Mail mit dem Text subscribe freebsd-isdn an
224             [5]majordomo@freebsd.org schickt.
225           + auch die deutschsprachige Mailingliste kann hilfreich sein.
226             Mit einer Mail an [6]majordomo@de.freebsd.org, die im Text
227             subscribe de-bsd-questions enthält bestellt man sie.
228      _________________________________________________________________
229
230 References
231
232    1. mailto:domi@saargate.de
233    2. ftp://isdn4bsd@ftp.consol.de/
234    3. ftp://isdn4bsd@ftp.consol.de/
235    4. mailto:freebsd-isdn@freebsd.org
236    5. mailto:majordomo@freebsd.org
237    6. mailto:majordomo@de.freebsd.org