This file is indexed.

/usr/share/doc/HOWTO/de-html/DE-ISDN-HOWTO-5.html is in doc-linux-de 2003.10-5.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.65">
 <TITLE>Linux ISDN HOWTO: syncPPP-Verbindung herstellen     </TITLE>
 <LINK HREF="DE-ISDN-HOWTO-6.html" REL=next>
 <LINK HREF="DE-ISDN-HOWTO-4.html" REL=previous>
 <LINK HREF="DE-ISDN-HOWTO.html#toc5" REL=contents>
</HEAD>
<BODY>
<A HREF="DE-ISDN-HOWTO-6.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-ISDN-HOWTO-4.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-ISDN-HOWTO.html#toc5"><IMG SRC="toc.png" ALT="Inhalt"></A>
<HR>
<H2><A NAME="DE-ISDN-HOWTO-syncPPP"></A> <A NAME="s5">5.</A> <A HREF="DE-ISDN-HOWTO.html#toc5">syncPPP-Verbindung herstellen     </A>    <!--ISDN!PPP-->    <!--ISDN!synchrones PPP-->    <!--PPP!ISDN-->    </H2>

<P>Das <EM>Point-to-Point Protocol</EM> (PPP) ist unter anderem in den 
RFCs 1661, 1662, 1332 und 1334 definiert.
Es wurde urspr&uuml;nglich entwickelt, um Daten &uuml;ber serielle Leitungen
zu verschicken. Es kann grunds&auml;tzlich f&uuml;r verschiedene Netzwerkprotokolle
wie Apple, IP, IPX, usw. verwendet werden; unter Linux ist aber nur 
IP vorgesehen. PPP bietet verschiedene Features, wie z.B. den Austausch 
der IP-Nummern, Authentifizierung, Komprimierung und einige andere.</P>
<P>Aus diesem Grund findet zun&auml;chst durch das Link Control Protocol
(LCP) ein Handshake statt, durch den die Verbindung initialisiert
wird oder eben auch nicht. In der Praxis ergeben sich genau hierdurch
die Probleme gem&auml;&szlig; der Richtlinie <EM>das sch&ouml;ne an Standards ist,
da&szlig; sich jeder seinen eigenen aussuchen kann</EM>.</P>

<H2><A NAME="DE-ISDN-HOWTO-pppIppp"></A> <A NAME="ss5.1">5.1</A> <A HREF="DE-ISDN-HOWTO.html#toc5.1">Unterschiede Analog - ISDN     </A>
        </H2>

<P>Wer analoges PPP gew&ouml;hnt ist, mu&szlig; hier ein wenig umdenken.
Die Netzverbindung besteht logisch immer, gew&auml;hlt wird aber nur 
bei Bedarf.</P>

<H3>Analog         </H3>

<P>
<UL>
<LI> manuelles Starten per Skript oder &uuml;ber <CODE>diald</CODE></LI>
<LI> w&auml;hlen, z.B. mit <CODE>chat</CODE></LI>
<LI> <CODE>pppd</CODE> f&auml;hrt hoch und macht Handshake mit Partner</LI>
<LI> <CODE>ifconfig</CODE> und <CODE>route</CODE> Aufrufe durch <CODE>pppd</CODE></LI>
<LI> Optionsfile: <CODE>/etc/ppp/options</CODE></LI>
<LI> Liest automatisch <CODE>/etc/ppp/options.DEVICE</CODE>,
wobei <CODE>DEVICE</CODE> das aktuell verwendete serielle 
Device ist.</LI>
</UL>
</P>

<H3>ISDN         </H3>

<P>
<UL>
<LI> Netz wird konfiguriert, diverse <CODE>isdnctrl</CODE> und ein 
<CODE>ifconfig</CODE> Aufruf</LI>
<LI> Setzen der Route</LI>
<LI> <CODE>ipppd</CODE> wird gestartet</LI>
<LI> Bei einem Verbindungswunsch w&auml;hlt i4l selbst&auml;ndig 
die Nummer (<CODE>isdnctrl</CODE>).</LI>
<LI> <CODE>ipppd</CODE> wird aktiviert; er l&auml;uft die ganze Zeit</LI>
<LI> <CODE>ipppd</CODE> macht Handshake</LI>
<LI> Bei dynamischen IP-Nummern legt der <CODE>ipppd</CODE>
das Device neu an und startet <CODE>/etc/ppp/ip-up</CODE>.</LI>
<LI> Beim automatischen Abbau macht der <CODE>ipppd</CODE> ein 
Reconnect auf das Device; der analoge PPP-Daemon beendet
sich.</LI>
<LI> Beim Abbau startet der <CODE>ipppd</CODE>
<CODE>/etc/ppp/ip-down</CODE>.</LI>
<LI> Optionsfile: <CODE>/etc/ppp/ioptions</CODE></LI>
<LI> Liest kein weiteres Optionsfile automatisch ein.</LI>
</UL>
</P>

<H2><A NAME="DE-ISDN-HOWTO-syncPPPwas"></A> <A NAME="ss5.2">5.2</A> <A HREF="DE-ISDN-HOWTO.html#toc5.2">Was ist eigentlich synchrones PPP?     </A>
        </H2>

<P>Der Unterschied zwischen synchronem und asynchronem PPP ist das 
<EM>Framing</EM>, also das Einpacken der
Rohdaten f&uuml;r die jeweilige Verbindungsart.
SyncPPP packt in HDLC ein. Auf einer Modemstrecke
bzw. einer seriellen Schnittstelle kann man aber
nur zeichenweise arbeiten. Entsprechend packt asyncPPP
seine P&auml;ckchen anders ein. Es gibt ein ausgewiesenes
Byte, welches den Paketanfang bzw. das Ende markiert.
Diese Byte mu&szlig;, sofern es im Datenstrom auftaucht, nat&uuml;rlich
anders dargestellt werden. Daf&uuml;r gibt es ein weiteres
reserviertes Byte, das Escape-Byte.</P>

<H2><A NAME="DE-ISDN-HOWTO-ipppdConfig"></A> <A NAME="ss5.3">5.3</A> <A HREF="DE-ISDN-HOWTO.html#toc5.3">Die Konfiguration     </A>
        </H2>


<H3>Netzdevices anlegen und konfigurieren             <!--ISDN!isdnctrl-->            <!--ISDN!Netzwerkdevices-->            <!--Netzwerk!Device-->             </H3>

<P>Nachfolgend wird gezeigt, wie die Netzwerkdevices angelegt
und konfiguriert werden:
<BLOCKQUOTE><CODE>
<PRE>
NETDEV='ippp0'
# neues Device
isdnctrl addif $NETDEV

# setzte MSN/EAZ
isdnctrl eaz $NETDEV 456

# def. Nummer(n) zum Rausw&auml;hlen
isdnctrl addphone $NETDEV out 09011

# erlaube Nummern, die anrufen d&uuml;rfen
#isdnctrl addphone $NETDEV in 

# d&uuml;rfen alle anrufen? Nein: setze secure=on
isdnctrl secure $NETDEV on

# Layer-2 Protokoll: (x75i, x75ui, x75bui, hdlc)
isdnctrl l2_prot $NETDEV hdlc

# Layer-3 Protokoll: (nur trans)
isdnctrl l3_prot $NETDEV trans

# Ecapsulation: (rawip, cisco_h, syncppp)
isdnctrl encap $NETDEV syncppp

# Idletime
isdnctrl huptimeout $NETDEV 60

# maximale W&auml;hlversuche
isdnctrl dialmax $NETDEV 5

# nur einen bestimmten Kanal benutzen
#isdnctrl bind $NETDEV 

# PPP an Netzdevice binden
isdnctrl pppbind $NETDEV 0

# Netzdevice konfigurieren
ifconfig $NETDEV 1.1.1.1 pointopoint 193.102.150.13 up

# OPEN-Meldung ausgeben:
isdnctrl verbose 3
            
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Gel&ouml;scht wird das Interface durch die Befehle:
<BLOCKQUOTE><CODE>
<PRE>
ifconfig $NETDEV down
isdnctrl delif $NETDEV
            
</PRE>
</CODE></BLOCKQUOTE>
</P>

<H3><A NAME="DE-ISDN-HOWTO-ipppdStart"></A> ipppd starten                                 <!--ipppd!Start-->                <!--ISDN!ipppd!Start-->            </H3>


<P>Vor dem Start des <CODE>ipppd</CODE> m&uuml;ssen drei Voraussetzungen
erf&uuml;llt sein:
<OL>
<LI> ISDN-Hardwareunterst&uuml;tzung</LI>
<LI> syncPPP-Unterst&uuml;tzung im Kernel</LI>
<LI> Das zu verwendende Device mu&szlig; angelegt sein
(<CODE>isdnctrl addif</CODE>).</LI>
</OL>
</P>
<P>Die syncPPP-Unterst&uuml;tzung des Kernels &uuml;berpr&uuml;ft der <CODE>ipppd</CODE>
leider &uuml;ber eine etwas ungl&uuml;ckliche Methode:
Es mu&szlig; ein Device <CODE>ippp0</CODE> vorhanden sein. Au&szlig;erdem
kann man das Device nicht beliebig benennen, es mu&szlig; mit
<CODE>ippp</CODE> beginnen. Deshalb sollte man sich unbedingt
merken, als Devicenamen immer <CODE>ippp0</CODE> zu verwenden.</P>
<P>
<!--
/etc/ppp/ioptions
-->

<!--
ipppd!/etc/ppp/ioptions
-->

<!--
ISDN!ipppd!/etc/ppp/ioptions
-->

<!--
PPP!/etc/ppp/ioptions
-->

Der <CODE>ipppd</CODE> kann &uuml;ber 2,5 Arten Optionen annehmen:
<UL>
<LI> Kommandozeilenparameter</LI>
<LI> das Optionsfile <CODE>/etc/ppp/ioptions</CODE></LI>
</UL>

Die 2,5te Methode ist die Angabe eines Optionsfiles als
Kommandozeilenparameter (<CODE>-file</CODE>).</P>
<P>In Anlehnung an den <CODE>pppd</CODE> empfehle ich folgende Struktur:
<UL>
<LI> Globale Optionen f&uuml;r alle <CODE>ipppd</CODE>s sollten in
<CODE>/etc/ppp/ioptions</CODE> gesetzt werden.</LI>
<LI> F&uuml;r Devicespezifische Optionen, wie z.B. f&uuml;r 
<CODE>ippp0</CODE>, sollte eine spezielle Datei wie
<CODE>/etc/ppp/options.ippp0</CODE> verwendet werden.</LI>
<LI> Der <CODE>ipppd</CODE> wird so gestartet:
                    
<BLOCKQUOTE><CODE>
<PRE>
ipppd pidfile /var/run/ipppd.ippp0.pid \
      file /etc/ppp/options.ippp0 &amp;
                      
</PRE>
</CODE></BLOCKQUOTE>
</LI>
</UL>
</P>
<P>Folgendes sollte man noch &uuml;ber den <CODE>ipppd</CODE> wissen:
<UL>
<LI> Es werden zum Teil andere Optionen als beim <CODE>pppd</CODE> 
benutzt; zu den Unterschieden siehe <CODE>man ipppd</CODE>.</LI>
<LI> Die Optionen und Pa&szlig;w&ouml;rter werden nur beim Start 
neu eingelesen.
Beim Testen sollte man also immer nachschauen, ob 
noch <CODE>ipppd</CODE>s laufen und diese neu starten.</LI>
<LI> Es k&ouml;nnen verschiedene <CODE>ipppd</CODE> auf ein Device
reagieren, daher <CODE>pppbind</CODE>. </LI>
<LI> Die Datei <CODE>/etc/ppp/ioptions</CODE> mu&szlig; existieren.</LI>
</UL>
</P>
<P>Folgende Optionen haben sich f&uuml;r die verschiedensten ISPs
als stabil erwiesen:
<A NAME="DE-ISDN-HOWTO-optionsippp0"></A> 
<BLOCKQUOTE><CODE>
<PRE>
# /etc/ppp/options.ippp0
#
# f&uuml;r isdn4linux/syncPPP und dynamische IP-Nummern
#
#
# Klaus Franken, kfr@suse.de
# Version: 27.08.97 (5.1)
# 
# Diese Datei wird von YaST von /etc/ppp/ioptions.YaST 
#   nach options.&lt;device> kopiert.

# die Device(s)
# f&uuml;r mehr als ein Device versuche folgendes:
# /dev/ippp0 /dev/ippp1 ...
/dev/ippp0

# die IP-Adresse: &lt;lokal>:&lt;remote>
# einfach "0.0.0.0:" oder nichts f&uuml;r dyn. IP
#0.0.0.0:

# der eigene Benutzername
user suse

# der eigene Systemname (nur f&uuml;r CHAP!)
# name my_system_name

# IP-Adressen vom Partner akzeptieren
# dynamische IP-Nummern verwenden
ipcp-accept-local
ipcp-accept-remote
noipdefault

# versuche, die IP-Adresse vom Interface zu ermitteln
# nur mit statischer IP-Adresse verwenden
#useifip

# alle Header-Komprimierungen abschalten
-vj
-vjccomp
-ac
-pc
-bsdcomp

# manchmal wird dies ben&ouml;tigt:
#noccp

# max receive unit
mru 1524
# max transmit unit
mtu 1500

# Wenn es sich bei dem Rechner um einen Server handelt,
# k&ouml;nnen sie durch Entfernen des Kommentarzeichens bei
# einem der folgenden Eintr&auml;ge eine Authentifizierung
# erzwingen. Wenn der Rechner jedoch als Client ver-
# wendet wird, w&uuml;rde das eine erfolgreiche Verbindung
# verhindern (Meldung: "peer refused to authenticate").
#
# "+pap" / "+chap" NUR AKTIVIEREN, WENN DIES EIN 
#                  SERVER IST!!!
#+pap
#+chap

# Wenn es Problem mit dem Handshaking gibt (keine 
# Antwort auf das erste lcp-Paket), sollte versucht
# werden, den Wiederholungszyklus zu verringern. 
# Der Standard sind drei  Sekunden, versuche z.B.
# zwei Sekunden:
# lcp-restart 2
            
</PRE>
</CODE></BLOCKQUOTE>
</P>

<H3><A NAME="DE-ISDN-HOWTO-ipppdAuth"></A> Authentifizierung beim ipppd                               <!--ipppd!Authentifizierung-->               <!--ISDN!ipppd!Authentifizierung-->               <!--ipppd!PAP-->               <!--ipppd!CHAP-->               <!--ISDN!ipppd!PAP-->               <!--ISDN!ipppd!CHAP-->               <!--PPP!CHAP-->               <!--PPP!PAP-->            </H3>

<P>Der <CODE>ipppd</CODE> verh&auml;lt sich bei der Benutzerauthentifizierung
exakt genauso wie der <CODE>pppd</CODE>. Daher erfolgt hier nur ein 
kurzer Abri&szlig;.</P>
<P>Es stehen zwei Methoden zur Verf&uuml;gung: PAP und CHAP.
Meistens wird PAP angeboten; &uuml;ber CHAP kann man 
im <EM>
<A HREF="DE-PPP-HOWTO.html">PPP HOWTO</A></EM>
nachlesen.</P>
<P>Die Benutzerdaten werden an zwei Stellen konfiguriert;
als erstes wird dem <CODE>ipppd</CODE> durch das Schl&uuml;sselwort 
<CODE>user</CODE> mitgeteilt, welche UserID dem gegnerischen 
PPP-Daemon angeboten werden soll. </P>
<P>
<!--
/etc/ppp/pap-secrets
-->

<!--
ipppd!/etc/ppp/pap-secrets
-->

<!--
ISDN!ipppd!/etc/ppp/pap-secrets
-->

<!--
PPP!/etc/ppp/pap-secrets
-->

Als n&auml;chstes wird das Pa&szlig;wort selbst als Klartext in
der Datei <CODE>/etc/ppp/pap-secrets</CODE> abgelegt.
Diese Datei darf nur f&uuml;r root lesbar sein. Also passe
unbedingt die Rechte an:
<BLOCKQUOTE><CODE>
<PRE>
chmod 600 /etc/ppp/pap-secrets
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>F&uuml;r jeden verwendeten User wird eine Zeile eingetragen;
z.B. sei der Benutzername <CODE>suse</CODE> und das Pa&szlig;wort 
<CODE>linux</CODE>:
<BLOCKQUOTE><CODE>
<PRE>
# client        server  pw              iplist
"suse"          *       "linux"
            
</PRE>
</CODE></BLOCKQUOTE>
</P>
<P>Dies ist die einzige Stelle, an der das
Pa&szlig;wort definiert ist. In der Datei <CODE>/etc/ppp/pap-secrets</CODE>
k&ouml;nnen mehrere User/Pa&szlig;w&ouml;rter definiert sein, &uuml;ber die Option
<CODE>user</CODE> wird jeweils die richtige Zeile ausgew&auml;hlt, um
das Pa&szlig;wort zu ermitteln.</P>
<P>Der Benutzername mu&szlig; nicht im System bekannt sein,
zumindest besteht zwischen dem PAP- oder CHAP-Benutzernamen
und dem Systembenutzer kein Zusammenhang.</P>
<P>Nachdem der <CODE>ipppd</CODE> gestartet ist und eventuell eine Route
dar&uuml;ber definiert ist, wird bei Bedarf automatisch ein
W&auml;hlvorgang ausgel&ouml;st. Manuell kann man dies so ausl&ouml;sen:
<BLOCKQUOTE><CODE>
isdnctrl dial ippp0
</CODE></BLOCKQUOTE>

Meldungen werden &uuml;ber syslog nach <CODE>/var/log/messages</CODE>
geschrieben.</P>

<H3><A NAME="DE-ISDN-HOWTO-ipppdPars"></A> Welche Daten mu&szlig; ich &uuml;ber den Zugang kennen?                     </H3>

<P>Folgende Daten sollte man kennen, die meisten sollte der
ISP zur Verf&uuml;gung stellen.</P>
<P>
<DL>
<DT><B>Protokoll</B><DD>
<P>Es sollte syncPPP sein.</P>

<DT><B>Telefonnummer des ISP</B><DD>
<P>Nat&uuml;rlich ben&ouml;tigt man die Telefonnummer des Providers.</P>

<DT><B>meine MSN</B><DD>
<P>Mit welcher meiner Telefonnummern m&ouml;chte/mu&szlig; ich w&auml;hlen,
siehe dazu Abschnitt 
<A HREF="DE-ISDN-HOWTO-4.html#DE-ISDN-HOWTO-msnWelche">Was ist meine MSN?</A>.</P>

<DT><B>IP-Nummern</B><DD>
<P>Wenn man feste IP-Nummern hat, gibt der ISP zumindest
die pers&ouml;nlichen an. Die IP-Nummer auf der anderen Seite
der PtP-Verbindung, also die des ISPs, kennt man deswegen
noch nicht unbedingt. In einem solchen Fall gibt man 
wie bei dynamischen IP-Nummern <EM>irgendeine</EM> IP-Nummer 
vor und l&auml;&szlig;t eine Verbindung herstellen, damit man
die wirkliche IP-Nummer sieht, die man dann fest eintr&auml;gt.</P>
<P>Bei dynamischen IP-Nummern tr&auml;gt man <EM>irgendwelche</EM>
Nummern ein; siehe Abschnitt 
<A HREF="DE-ISDN-HOWTO-6.html#DE-ISDN-HOWTO-dynIP">Probleme mit dynamischen IP-Nummern</A>.</P>

<DT><B>Typ der Authentifizierung</B><DD>
<P>PAP oder CHAP</P>

<DT><B>Username, Pa&szlig;wort</B><DD>
<P>Nat&uuml;rlich mu&szlig; man den Benutzernamen und das passende
Pa&szlig;wort auf dem PPP-Server kennen.</P>

<DT><B>Nameserver</B><DD>
<P>Die IP-Nummer des zu verwendenden Nameservers sollte man 
vom ISP mitgeteilt bekommen. Ansonsten siehe </P>
<P>
<BLOCKQUOTE><CODE>
<A HREF="http://www.suse.de/Support/sdb/nonameserver.html">http://www.suse.de/Support/sdb/nonameserver.html</A></CODE></BLOCKQUOTE>
</P>

</DL>
</P>
<P>Mit folgenden weiteren Parametern kann man die ISDN-Verbindung 
steuern:
<DL>
<DT><B>Idle-Time</B><DD>
<P>Nach wie vielen Sekunden Inaktivit&auml;t soll aufgelegt
werden. Will man dieses Feature abstellen, kann man
die Zeit auf &raquo;0&laquo; stellen.</P>
<P>Diese Zeitangabe ist jedoch nicht exakt.</P>

<DT><B>Maximale W&auml;hlversuche</B><DD>
<P>Wie oft soll gew&auml;hlt werden, wenn der Gegner nicht
abnimmt?</P>
<P>Diese Anzahl gilt nicht, wenn es Hardwareprobleme
gibt; zieht man z.B. das ISDN-Kabel, wird unendlich oft
probiert.</P>
<P>Diese Anzahl gilt nicht, wenn die W&auml;hlverbindung
zustande kam, aber die PPP-Verbindung nicht aufgebaut werden
konnte. Ist z.B. das Pa&szlig;wort falsch eingetragen, wird 
immer wieder eine Verbindung aufgebaut, solange Pakete
verschickt werden.</P>

<DT><B>eingehende Telefonnummern</B><DD>
<P>In diesem Fall soll keiner die Verbindung von au&szlig;en aufbauen
d&uuml;rfen, deshalb sollte man keine eingehende Telefonnummer
angeben und die Option <CODE>secure</CODE> bzw.
<EM>Nur angegebene Nummern erlaubt</EM> aktivieren.</P>

<DT><B>Callback</B><DD>
<P>Mehr zum Thema Callback findet sich in 
<BLOCKQUOTE><CODE>
<A HREF="file:/usr/doc/packages/doc/rc.config.i4l.add">/usr/doc/packages/doc/rc.config.i4l.add</A></CODE></BLOCKQUOTE>
</P>

</DL>
</P>

<H3><A NAME="DE-ISDN-HOWTO-pppSuSE"></A> PPP bei SuSE einrichten                               <!--ipppd!Konfiguration-->               <!--ISDN!ipppd!Konfiguration-->            </H3>

<P>Die Konfiguration bis auf's Routing wird in der Datei 
<CODE>/etc/rc.config</CODE> eingetragen, dies kann manuell oder
&uuml;ber YaST geschehen.</P>

<H3>Konfiguration mit YaST                 </H3>

<P>Um PPP &uuml;ber YaST zu konfigurieren, geht man so vor:</P>
<P>
<UL>
<LI> Men&uuml;punkt <EM>Administration des Systems</EM>, 
<EM>Netzwerk konfigurieren</EM> und <EM>Netzwerk 
Grundkonfiguration</EM>
ausw&auml;hlen. </LI>
<LI> Es erscheint eine Maske der konfigurierten
Netzdevices. Hier w&auml;hle man ein freies aus,
sofern es nicht schon
<CODE>ippp0</CODE> gibt. Mit <CODE>F5</CODE> w&auml;hlt man den Netzwerktyp aus,
hier also <EM>ISDN SyncPP</EM>.</LI>
<LI> Mit <CODE>F6</CODE> vergibt man die IP-Nummern, 
siehe Abschnitt 
<A HREF="DE-ISDN-HOWTO-6.html#DE-ISDN-HOWTO-ipDynWelche">Welche IP-Nummer setze ich denn eigentlich?</A>,
und kann auch direkt das Default-Gateway angeben,
siehe Abschnitt 
<A HREF="DE-ISDN-HOWTO-7.html#DE-ISDN-HOWTO-routing">Routing</A>.</LI>
<LI> Mit <CODE>F8</CODE> werden nun die ISDN-relevanten Daten 
eingetragen.
Nachdem man das Device aktiviert hat, kann man es in
der ISDN-Maske direkt hochfahren mit: <EM>Starten</EM>.</LI>
</UL>
</P>
<P>Damit sind die <CODE>rc.config</CODE>-Variablen, die PPP-Optionen,
die Pa&szlig;wortdatei und das Routing angepa&szlig;t.</P>

<H3>Manuelle Konfiguration                 </H3>

<P>Durch folgende Variablen in 
<CODE>/etc/rc.config</CODE> wird eine syncPPP-Verbindung
gesteuert, hier als echtes Beispiel (mit <CODE>_0</CODE>):
<BLOCKQUOTE><CODE>
<PRE>
IPADDR_2="1.1.1.1"
NETDEV_2="ippp0"
IFCONFIG_2="1.1.1.1 pointopoint 193.102.150.13 up"
I4L_IDLETIME_2="60"
I4L_DIALMAX_2="5"
I4L_LOCALMSN_2="7417559"
I4L_REMOTE_OUT_2="52145922"
I4L_REMOTE_IN_2=""
I4L_ENCAP_2="syncppp"
I4L_SECURE_2="on"
                
</PRE>
</CODE></BLOCKQUOTE>

Die Bedeutung der Felder ist oben angegeben;
in der <CODE>/etc/rc.config</CODE> sind auch vor den Feldern 
entsprechende Kommentare.</P>
<P>Es k&ouml;nnen beliebig viele Netzdevices definiert werden, 
auch wenn standardm&auml;&szlig;ig nur vier angegeben sind, die jeweils
durch eine Extension wie z.B. <CODE>_2</CODE> gekennzeichnet werden.
Dabei m&uuml;ssen nicht alle aktiv sein. Welche aktiviert
werden sollen, wird in der Variablen <CODE>NETCONFIG</CODE>
festgelegt; sollen z.B. <CODE>_0</CODE> und <CODE>_2</CODE> aktiv sein,
setzt man: <CODE>NETCONFIG="_0 _2"</CODE>.</P>
<P>Als n&auml;chstes mu&szlig; der <CODE>ipppd</CODE> konfiguriert werden.
Hierzu erstelle man 
eine Datei <CODE>/etc/ppp/options.ippp0</CODE>
(siehe Abschnitt 
<A HREF="#DE-ISDN-HOWTO-optionsippp0">PPP-Optionen</A>); am besten in 
dem Du die Datei
<CODE>/etc/ppp/ioptions.YaST</CODE> kopierst.
In der Optionendatei mu&szlig; der Benutzername gesetzt werden
und &uuml;berpr&uuml;ft werden, ob das Device stimmt. 
Dann tr&auml;gst Du das Pa&szlig;wort passend zum Benutzernamen in
<CODE>/etc/ppp/pap-secrets</CODE> ein.</P>
<P>Das manuelle Starten ist in Abschnitt
<A HREF="#DE-ISDN-HOWTO-ipppdStart">ipppd starten</A> 
beschrieben.</P>

<H2><A NAME="DE-ISDN-HOWTO-syncPPPtrouble"></A> <A NAME="ss5.4">5.4</A> <A HREF="DE-ISDN-HOWTO.html#toc5.4">Probleme beim Verbindungsaufbau, Troubleshooting.             </A>
            <!--ipppd!Probleme-->            <!--ISDN!ipppd!Probleme-->        </H2>


<P>Bei Problemen sollte man folgende Checkliste durchlaufen:</P>
<P>
<OL>
<LI> Wurde der <CODE>ipppd</CODE> &uuml;berhaupt gestartet?
Kontrolliere mit 
<BLOCKQUOTE><CODE>
ps ax | grep ipppd
</CODE></BLOCKQUOTE>
 ob einer
l&auml;uft bzw. wieviele laufen.
Kontrolliere in <CODE>/var/log/messages</CODE> die Startmeldungen,
z.B.:
<BLOCKQUOTE><CODE>
<PRE>
syslog: info: no CHAP secret entry for this user! 
ipppd[536]: Found 1 devices: /dev/ippp0, 
ipppd[540]: ipppd i2.2.9 (isdn4linux version of pppd by MH) started
ipppd[540]: init_unit: 0 
ipppd[540]: Connect[0]: /dev/ippp0, fd: 8
            
</PRE>
</CODE></BLOCKQUOTE>
</LI>
<LI> Stimmen die Benutzerdaten?
Der <CODE>ipppd</CODE> pr&uuml;ft schon beim Start, mit welchem Usernamen
gearbeitet wird (<CODE>user suse</CODE>). Zu diesem Namen
wird das entprechende Pa&szlig;wort gelesen. Klappt das nicht,
wird eine Meldung ausgegeben, z.B.:
<BLOCKQUOTE><CODE>
<PRE>
Apr  9 20:32:17 glen syslog: info: no PAP secret entry for this user! 
            
</PRE>
</CODE></BLOCKQUOTE>

In diesem Fall wird eine Einwahl mittels PAP nicht 
funktionieren, die 12 Pfennige kann man sich also sparen.
Ursache ist meist ein Tippfehler beim Benutzernamen oder
falsche Permisssions der <CODE>pap-secrets</CODE>.

Analoges gilt f&uuml;r CHAP.
</LI>
<LI> Wird &uuml;berhaupt eine Verbindung aufgebaut?
Sobald die Gegenstelle abnimmt und damit Kosten
entstehen, erscheint eine <CODE>connect</CODE>-Meldung.
Wird keine Verbindung aufgebaut, gibt es vermutlich
eine <CODE>cause</CODE>-Meldung, siehe Abschnitt
<A HREF="DE-ISDN-HOWTO-4.html#DE-ISDN-HOWTO-cause">Cause Meldungen</A>.

Erscheinen nur <CODE>dialing</CODE>-Meldungen, aber sonst nichts,
liegt es an der Hardware oder am Hardware-Modul,
siehe die Abschnitte 
<A HREF="DE-ISDN-HOWTO-3.html#DE-ISDN-HOWTO-hwTesten">Hardware testen</A> und 
<A HREF="DE-ISDN-HOWTO-11.html#DE-ISDN-HOWTO-installation">Installation</A>.
</LI>
<LI> Klappt die Einwahl?
Bei erfolgreicher Einwahl erscheinen Meldungen &uuml;ber die 
IP-Nummern, z.B.:
<BLOCKQUOTE><CODE>
<PRE>
ipppd[540]: local  IP address 149.228.142.59
ipppd[540]: remote IP address 193.102.150.13
            
</PRE>
</CODE></BLOCKQUOTE>

Sieht man diese Meldungen, dann Gl&uuml;ckwunsch! Der
Gegner wird ab jetzt zum Partner.
</LI>
<LI> <CODE>select: Bad file number</CODE>
Direkt nach der Ausgabe der IP-Nummern erscheint:
<BLOCKQUOTE><CODE>
<PRE>
ipppd[353]: select: Bad file number
ipppd[353]: Couldn't restore device fd flags: Bad file number
ipppd[353]: Exit.
            
</PRE>
</CODE></BLOCKQUOTE>


Was hat es damit auf sich? Zun&auml;chst einmal, die Verbindung
ist trotz allem aufgebaut.

Die Ursache ist folgende: der <CODE>ipppd</CODE> startet beim 
Connect bzw. Disconnect das
Skript <CODE>/etc/ppp/ip-up</CODE> bzw. <CODE>ip-down</CODE>. 
Aufgrund eines kleinen Fehlers im offiziellen <CODE>ipppd</CODE>,
der in der CVS-Version und ab SuSE 5.2 behoben ist, ist die
&Uuml;berpr&uuml;fung auf Ausf&uuml;hrbarkeit fehlerhaft, woraufhin
trotzdem versucht wird, das Skript zu starten. 
Nach der Fehlermeldung passiert genau nichts.

Allerdings sollte die Meldung trotzdem beachtet werden,
denn da wir dynamische IP-Nummern benutzen, mu&szlig; das
Routing angepa&szlig;t werden, was genau &uuml;ber diese Skripte
geschehen soll, die hier nicht vorhanden sind.

<!--
ipppd!Debugging
-->

<!--
ISDN!ipppd!Debugging
-->
</LI>
<LI> Die Einwahl klappt nicht.
Wenn die Einwahl nicht klappt, sieht man in 
<CODE>/var/log/messages</CODE> meist nur, da&szlig; die Gegenstelle
aufgelegt hat. Um den Grund f&uuml;r das Problem zu ermitteln, 
braucht man mehr Meldungen vom LCP. Dazu tr&auml;gt man in
<CODE>/etc/ppp/ioptions</CODE> folgendes ein
<BLOCKQUOTE><CODE>
<PRE>
# Definiere "debug", um m&ouml;glichst viele Informationen
# in /var/log/messages zu erhalten.
debug

# Definiere "+pwlog", um auch Pa&szlig;worter in 
# /var/log/messages  zu speichern
#+pwlog
            
</PRE>
</CODE></BLOCKQUOTE>

und startet den <CODE>ipppd</CODE> neu.
Durch <CODE>debug</CODE> werden die LCP-Messages ausgegeben, 
durch <CODE>+pwlog</CODE> kann man sich zus&auml;tzlich das
verschickte Pa&szlig;wort angeben lassen - letzteres wird nur
empfohlen, wenn ansonsten alles richtig scheint, denn
wenn jemand fremdes Zugriff auf <CODE>/var/log/messages</CODE> 
bek&auml;me, h&auml;tte man ein echtes Problem.
<P>H&auml;ufige Ursachen f&uuml;r Probleme sind:</P>
<P>
<UL>
<LI> Username/Pa&szlig;wort falsch:
<P>In diesem Fall wird etwas in dieser Art protokolliert:
<BLOCKQUOTE><CODE>
<PRE>
ipppd[10314]: sent [0][PAP AuthReq id=0x1 user="kfr" password="falsch"]
ipppd[10314]: rcvd [0][PAP AuthNak id=0x1msg=""]
ipppd[10314]: Remote message: 
ipppd[10314]: PAP authentication failed
                
</PRE>
</CODE></BLOCKQUOTE>

Richtig sollte es so aussehen:
<BLOCKQUOTE><CODE>
<PRE>
ipppd[7840]: sent [0][PAP AuthReq id=0x1 user="kfr" password="isdnworkshop"]
ipppd[7840]: rcvd [0][PAP AuthAck id=0x1msg=""]
ipppd[7840]: Remote message: 
ipppd[7840]: bundle, he: 0 we: 0
                
</PRE>
</CODE></BLOCKQUOTE>
</P>

</LI>
<LI> LCP-Messages werden nicht beantwortet:
<P>Normalerweise werden LCP-Messages gesendet und empfangen,
um das Handshaking durchzuf&uuml;hren (send, rcvd):
<BLOCKQUOTE><CODE>
<PRE>
ipppd[10314]: sent [0][LCP ConfReq id=0x1 &lt;mru 1524> &lt;magic0x93ade903>]
ipppd[10314]: rcvd [0][LCP ConfReq id=0x1 &lt;mru 1524> &lt;auth pap> 
&lt;MPdiscr: 0x3 [ 00 c0 7b 70 d5 fa ]>]
                
</PRE>
</CODE></BLOCKQUOTE>

Wenn die Gegenseite nicht antwortet, kann es sein, da&szlig;
sie nicht schnell genug hochkommt (<CODE>lcp-restart</CODE>
erh&ouml;hen) oder kein passender PPP-Daemon dort l&auml;uft.
Ist dies nicht nur ein tempor&auml;res Problem, ist entweder
die Nummer falsch, oder der ISP bietet tats&auml;chlich kein
syncPPP an.</P>
<P>Im letzteren Fall mu&szlig; man asyncPPP fahren, siehe: 
<BLOCKQUOTE><CODE>
<A HREF="http://www.suse.de/Support/sdb/ppp_async.html">http://www.suse.de/Support/sdb/ppp_async.html</A></CODE></BLOCKQUOTE>
</P>
</LI>
<LI> Noch w&auml;hrend der LCP-Messages legt die Gegenstelle
auf.
<P>Hierbei sollte man am Protokoll erkennen, welche
Optionen angefordert oder abgewiesen werden. Danach
bleibt einem nur der m&uuml;hsame Weg, diese Optionen
zu setzen/deaktivieren, siehe Beispiel-Optionsfile
und <CODE>man ipppd</CODE>.</P>
</LI>
<LI> <CODE>peer refused to authenticate</CODE>
<P>Man hat selbst <CODE>+pap</CODE> oder <CODE>+chap</CODE> angegeben.
Ein h&auml;ufiges Mi&szlig;verst&auml;ndnis: Diese Optionen geben
an, da&szlig; man selber der Authentifizierungs-Server sein
m&ouml;chte, nicht, da&szlig; man PAP oder CHAP benutzen m&ouml;chte;
letzteres geschieht nur implizit durch die 
Angabe von <CODE>user</CODE>,
<CODE>name</CODE> und den Eintragungen in
<CODE>pap-secrets</CODE> bzw. <CODE>chap-secrets</CODE>.</P>

</LI>
</UL>
</P>
</LI>
<LI>Die Einwahl klappt, weitere Tests:
<P>
<UL>
<LI> Zun&auml;chst vergleiche man die Ausgabe des <CODE>ipppd</CODE> mit
der Ausgabe von <CODE>ifconfig</CODE>. Die IP-Nummern
m&uuml;ssen &uuml;bereinstimmen und gegen&uuml;ber der Grundeinstellung
ver&auml;ndert sein.</LI>
<LI> Ist das Routing richtig gesetzt? Pr&uuml;fe <CODE>route -n</CODE>,
siehe Abschnitt 
<A HREF="DE-ISDN-HOWTO-7.html#DE-ISDN-HOWTO-routing">Routing</A>. Es mu&szlig; eine Hostroute f&uuml;r den
PtP-Partner gesetzt sein.</LI>
<LI> Versuche die Gegenstelle anzupingen, 
z.B. <CODE>ping 193.102.150.13</CODE>.</LI>
<LI> Warte, bis die Verbindung automatisch abbricht und
pr&uuml;fe die Routingtabelle erneut.</LI>
<LI>Beobachte, ob wieder automatisch gew&auml;hlt wird.    </LI>
</UL>
</P>
</LI>
</OL>
</P>

<H2><A NAME="DE-ISDN-HOWTO-uebungPPP"></A> <A NAME="ss5.5">5.5</A> <A HREF="DE-ISDN-HOWTO.html#toc5.5">&Uuml;bung: syncPPP-Verbindung herstellen     </A>
        </H2>

<P>Ziel dieser &Uuml;bung ist, ein PPP-Verbindung aufzubauen und zu 
testen (kein Routing).
<OL>
<LI> Stelle eine Verbindung zu einem syncPPP-Server her.
Wenn Du keinen anderen kennst, benutze den SuSE 
ISDN-Testrechner mit folgenden Daten:
<UL>
<LI> Protokoll: syncPPP</LI>
<LI> Telefon: +49 911 3206726</LI>
<LI> Username: suse</LI>
<LI> Pa&szlig;wort: linux</LI>
<LI> IP-Nummer Server: 192.168.0.1</LI>
<LI> IP-Nummer Client: 192.168.0.99</LI>
</UL>
</LI>
<LI> Gehe die Checkliste durch und f&uuml;hre die dortigen Tests
aus, siehe Abschnitt 
<A HREF="#DE-ISDN-HOWTO-syncPPPtrouble">syncPPP Troubleshooting</A>.</LI>
<LI> Pr&uuml;fe die IP-Nummer(n) des Servers; wenn diese fest sind,
&auml;ndere die Konfiguration entsprechend.</LI>
</OL>
</P>

<HR>
<A HREF="DE-ISDN-HOWTO-6.html"><IMG SRC="next.png" ALT="Weiter"></A>
<A HREF="DE-ISDN-HOWTO-4.html"><IMG SRC="prev.png" ALT="Zurück"></A>
<A HREF="DE-ISDN-HOWTO.html#toc5"><IMG SRC="toc.png" ALT="Inhalt"></A>
</BODY>
</HTML>