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