summaryrefslogtreecommitdiffstats
path: root/share/examples/isdn/contrib/i4b-ppp-newbie.txt
blob: 7d6c4b0870aea0e052e940cb2954df9179efb3de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
$FreeBSD$

                              PPP mit isdn4bsd
     _________________________________________________________________
   
   Version 1.01
   Datum: 22.02.1999
   Autor: [1]Dominik Brettnacher <domi@saargate.de>
   
   - Anmerkungen und Verbesserungsvorschläge sind willkommen -
   
    1. vorab
       Dieser Text soll Neulingen helfen, sich mittels isdn4bsd und BSD
       per PPP z.B. bei ihrem Provider einwählen zu können.
       isdn4bsd bringt einiges an Dokumentation und
       Konfigurationsbeispielen mit, jedoch ist es nicht immer leicht,
       die entsprechenden Hinweise gut miteinander zu kombinieren, so daß
       am Schluß das dabei herauskommt, was man haben möchte.
    2. Wo bekomme ich isdn4bsd?
       hier solle es keine allzu großen Probleme geben: isdn4bsd ist auf
       dem FTP-Server [2]ftp.consol.de erhältlich. Man beachte dabei, daß
       man sich nicht, wie üblich, als anonymous, sondern als isdn4bsd
       einloggen muß. Benutzer von Browsern geben als Adresse
       [3]ftp://isdn4bsd@ftp.consol.de und als Passwort ihre
       eMail-Adresse an.
       Wertvolle Informationen findet man in der Datei README.
    3. Welche ISDN-Karten werden unterstützt?
       Informationen darüber findet man in der README-Datei.
    4. Ich benutze einen externen ISDN-Adapter - was nun?
       Externe Adapter benötigen keine direkte Unterstützung, weil sie
       über die serielle Schnittstelle angesteuert werden. Man kann also
       das normale PPP benutzen. man ppp hilft hier sicher weiter.
    5. isdn4bsd installieren
       Wie man isdn4bsd installiert, steht in der Datei
       FreeBSD/INSTALLATION (für NetBSD und OpenBSD analog). Eine
       Beispielkonfiguration des Kernel sieht so aus:
[...]
#
# i4b passive ISDN cards support (isic - I4b Siemens Isdn Chipset driver)
# note that the ``options'' and ``device'' lines must BOTH be defined !
#
# Non-PnP Cards:
# --------------
#
# AVM A1 or AVM Fritz!Card
options "AVM_A1"
device    isic0 at isa? port 0x300 net irq 15 flags 4 vector isicintr
#
# ISDN Protocol Stack
# -------------------
#
# Q.921 / layer 2 - i4b passive cards D channel handling
pseudo-device  "i4bq921"
#
# Q.931 / layer 3 - i4b passive cards D channel handling
pseudo-device  "i4bq931"
#
# layer 4 - i4b common passive and active card handling
pseudo-device  "i4b"
#
# ISDN devices
# ------------
#
# userland driver to do ISDN tracing (for passive cards only)
pseudo-device   "i4btrc" 4
#
# userland driver to control the whole thing
pseudo-device   "i4bctl"
#
# userland driver for access to raw B channel
#pseudo-device   "i4brbch"       4
#
# userland driver for telephony
#pseudo-device   "i4btel"        2
#
# network driver for IP over raw HDLC ISDN
#pseudo-device   "i4bipr"     4
# enable VJ header compression detection for ipr i/f
#options       IPR_VJ
#
# network driver for sync PPP over ISDN
pseudo-device  "i4bisppp"     1
pseudo-device  sppp      1
#
#---------------------------------------------------------------------------
[...]
       Nachdem ein neuer Kernel kompiliert und das System neugestartet
       wurde, kann es weiter gehen.
    6. Konfiguration isdnd.rc
       Die für ISDN wichtigste Konfigurationsdatei ist
       /etc/isdn/isdnd.rc. Mit man isdnd.rc erhält man Informationen über
       die Einstellungen, die man dort vornehmen kann. Im Folgenden ein
       Beispiel:


#==============================================================================
# SYSTEM section: isdnd global configuration parameters
#==============================================================================
system

# accounting
# ----------

acctall         = on                    # generate info for everything
acctfile        = /var/log/isdnd.acct   # name & location of accounting file
useacctfile     = yes                   # generate accouting info to file

# monitor
# -------

monitor-allowed = no                    # global switch: monitor on/off
monitor-port    = 451                   # default monitor TCP port

# Monitor rights are granted due to the most specific host/net spec, i.e. in
# the example below host 192.168.1.2 will have the rights specified on that
# line, even so it belongs to net 192.168.1.0/24 as well.
#
# A monitor specification may either be:
#
#  - the name of a local (UNIX-domain) socket; this MUST start with a "/"
monitor         = "/var/run/isdn-monitor"
monitor-access  = fullcmd
monitor-access  = channelstate, logevents
monitor-access  = callin, callout

# ratesfile
# ---------

ratesfile       = /etc/isdn/isdnd.rates # name & location of rates file

# regular expression pattern matching
# -----------------------------------

#regexpr        = "connected.*KTS"      # look for matches in log messages
#regprog        = connectKTS            # execute program when match is found

# realtime priority section
# -------------------------

rtprio          = 25                    # modify isdnd's process priority

###############################################################################
entry
name                    = lf
usrdevicename           = isp
usrdeviceunit           = 0
isdncontroller          = 0
isdnchannel             = -1
local-phone-incoming    = 012345678
remote-phone-incoming   = 876543210
local-phone-dialout     = 012345678
remote-phone-dialout    = 876543210
remdial-handling        = first
dialin-reaction         = accept
dialout-type            = normal
b1protocol              = hdlc
idletime-incoming       = 240
idletime-outgoing       = 30
earlyhangup             = 5
ratetype                = 0
unitlength              = 90
unitlengthsrc           = rate
dialretries             = 3
dialrandincr            = on
recoverytime            = 25

connectprog             = is-up
disconnectprog          = is-down

       Wichtig sind hier für den Neuling die vier *-phone-* Einträge, die
       jeweils die lokale Rufnummer und die der Gegenstelle für ein- und
       ausgehende Verbindungen angeben.
   
    7. ISDN-Verbindungen aufbauen
       um ISDN-Verbindungen aufzubauen, bedarf es einiger Befehle, die
       beim Systemstart aufgerufen werden. Man kann sie zum Beispiel am
       Ende von /etc/rc.local unterbringen. Hier gibt es aber durchaus
       noch andere Lösungen:
       [...]
       # start ISDN
       echo -n 'ppp / ISDN...'
       echo -n 'isdnd...'
       /usr/local/bin/isdnd
       echo -n 'ifconfig...'
       ifconfig isp0 link1 0.0.0.0 1.1.1.1 netmask 0xffffff00
       ifconfig isp0 down
       echo -n 'sppp...'
       spppcontrol isp0 myauthproto=pap myauthname="xxx"
       myauthsecret="xxx" hisauthproto=none
       echo -n 'ifconfig...'
       ifconfig isp0 up
       echo -n 'setting routes...'
       route add default -interface isp0
       echo '.'
       Ändern muß man hier eventuell die Zieladresse des Providers (im
       Beispiel 1.1.1.1). Man bekommt diese entweder vom Provider, oder
       aber man muß einen Versuch daransetzen, sie selbst herauszufinden.
       Wie das funktioniert, steht in der Datei FAQ des isdn4bsd-Paketes.
       Auch am Aufruf von spppcontrol (Vorsicht: spppcontrol bis
       hisauthproto=none ist eine Zeile!) muß noch etwas umgestellt
       werden:
          + myauthproto steht für das Authentifizierungsprotokoll.
            Möglich sind pap oder chap.
          + myauthname ist der PPP-Benutzername.
          + myauthsecret ist das PPP-Kennwort.
       Wenn man nun die Befehle in /etc/rc.local ausführt, kann man mit
       einem ping auf eine beliebige Adresse außerhalb des lokalen Netzes
       eine Verbindung öffnen. Sie wird automatisch nach einiger
       Inaktivität (siehe isdnd.rc) wieder geschlossen.
   
    8. Es funktioniert nicht - was kann ich tun?
       Es gibt einige Möglichkeiten zur Fehlerdiagnose:
          + dmesg gibt Aufschluß darüber, ob die Karte richtig erkannt
            wurde.
          + ifconfig (siehe rc.local) kann mit dem Parameter debug
            aufgerufen werden und gibt dann einiges an Informationen aus.
          + die Nachrichten in /var/log/messages können außerdem
            hilfreich sein
   
    9. wer kann mir helfen?
          + die erste Adresse für ISDN-Probleme ist die Mailingliste
            [4]freebsd-isdn@freebsd.org - man bestellt sie, indem man
            eine Mail mit dem Text subscribe freebsd-isdn an
            [5]majordomo@freebsd.org schickt.
          + auch die deutschsprachige Mailingliste kann hilfreich sein.
            Mit einer Mail an [6]majordomo@de.freebsd.org, die im Text
            subscribe de-bsd-questions enthält bestellt man sie.
     _________________________________________________________________

References

   1. mailto:domi@saargate.de
   2. ftp://isdn4bsd@ftp.consol.de/
   3. ftp://isdn4bsd@ftp.consol.de/
   4. mailto:freebsd-isdn@freebsd.org
   5. mailto:majordomo@freebsd.org
   6. mailto:majordomo@de.freebsd.org
OpenPOWER on IntegriCloud