Inhalt

4. Die Verbindung herstellen

4.1 Was mache ich hier?

Wenn die hier beschriebene Konfiguration nachvollzogen wird, so wird folgendes eingerichtet:

4.2 Was geht ab?

Zunächst wählt chat den Provider an und stellt die Verbindung zwischen den beiden Modems her (Einigung über Protokolle etc.). Entsprechend PAP nimmt chat das Einloggen am Server vor und übergibt dann die Kontrolle an pppd, welcher das PPP-Protokoll weiter initiiert.

4.3 Konfiguration

Die für die Konfiguration wichtigen Dateien sind:

/etc/ppp/ppp.chatscript

Folgendes chat Skript ppp.chatscript sollte im Verzeichnis /etc/ppp gespeichert werden:

TIMEOUT 60
ABORT "NO CARRIER"
ABORT BUSY
ABORT "NO DIALTONE"
ABORT ERROR
"" +++ATZ
OK ATDT[Telefonnummer des Providers]
CONNECT ""

/etc/ppp/options

Die Datei options nimmt einige Einstellung für den PPP-Daemon vor:

disconnect "chat -- \d+++\d\c OK ath0 OK"
asyncmap 0
crtscts
lock
115200  # maximale Geschwindigkeit des Modems
modem
[netmask 255.255.255.0]  # wenn nötig nach Providerangabe
noipdefault
debug
user [UserID]  # eigene UserID beim Provider 

/etc/ppp/pap-secrets

Die Datei pap-secrets enthält das Paßwort, mit dem man sich beim Provider einloggt.

# Client  Server  Paßwort  IP-Adressen
UserID       *    passwd  # UserID und Password einsetzen

Da das eigene Paßwort auf keinen Fall in fremde Hände fallen sollte, da es ansonsten zum Mißbrauch des eigenen Accounts verwendet werden kann, sollten unbedingt die Rechte der Datei überprüft werden. Bedenken Sie bitte, daß nicht nur Sie über Ihre PPP-Verbindung auf das Internet zugreifen können, sondern auch Benutzer aus dem Internet auf Ihren Rechner.

Die Rechte der Datei kann man sich mit folgendem Befehl anschauen:

# ls -l /etc/ppp/pap-secrets

Als Ausgabe sollte der Befehl folgendes liefern:

-rw-------   1  root    root  1501  Feb  6 20:38 pap-secrets

Falls dieses nicht der Fall ist, sollte man die Rechte ändern:

chmod 600 /etc/ppp/pap-secrets

pon, ppp-on oder ppp-up

Dieses Skript baut eine PPP-Verbindung auf. Bitte beachten Sie, daß hier die Pfade zu ppp.chatscript und ppp.options korrekt angegeben sind.

Bei der Debian Distribution sieht die Datei so aus:

#!/bin/sh
if [ -r /etc/ppp/options -a -r /etc/ppp/ppp.chatscript ]; 
then 
  /usr/sbin/pppd connect "/usr/sbin/chat -v \
     -f /etc/ppp/ppp.chatscript" `cat /etc/ppp/options`
else
  echo "You do not have permissions to access \
       /etc/ppp/ppp.chatscript or /etc/ppp/options"
fi

poff, ppp-off oder ppp-down

Dieses Skript beendet die PPP-Verbindung wieder. Bei der Debian Distribution sieht das Skript so aus:

#!/bin/sh

# Wieviele pppds laufen?
N=`ls /var/run/ppp* 2>/dev/null| wc -l`

# Wenn kein PPP Daemon läuft, dann mach poff nicht 
# viel Sinn.
if [ $N = 0 ]; then
        echo "Es läuft kein pppd."
        exit 1
fi

# Wenn einer läuft, kann diese mit killall beendet werden.
if [ $N = 1 ]; then
        killall pppd
        exit 0
fi

# Es läuft mehr als ein Daemon. Es ist nicht klar, welcher
# beendet werden soll.
echo "Es läuft mehr als ein pppd. Keiner beendet."
exit 1

/etc/ppp/ip-up und /etc/ppp/ip-down

Wenn eine PPP-Verbindung hergestellt bzw. beendet wurde, wird das Skript ip-up bzw. ip-down ausgeführt. Dies kann man sich zunutze machen, um Aufgaben, die regelmäßig nach einem Verbindungsaufbau erledigt werden müssen, im Hintergrund abzuarbeiten. Ein gutes Beispiel hierfür ist z.B. das Holen oder Verschicken von Mails und News. Dazu aber später mehr. Vorerst lassen wir diese beiden Files unberührt.

Tuning der seriellen Schnittstelle

Aus historischen Gründen kann eine serielle Schnittstelle unter Linux nur auf Geschwindigkeiten bis maximal 38,4 kBit/s eingestellt werden, auch wenn wir es hier einige Male anders gemacht haben. Für neue Modems reicht dieses aber bereits ohne Komprimierung nicht mehr aus. Um die serielle Schnittstelle entsprechend zu tunen, wird in /etc/rc.boot/0setserial, das Skript kann je nach Distribution auch einen anderen Namen haben, folgender Eintrag aufgenommen:

${SETSERIAL} -b /dev/ttyS0 ${AUTO_IRQ} skip_test \
             autoconfig spd_vhi

/dev/ttyS0 entspricht dem Anschluß COM1 unter DOS; entsprechend ist /dev/ttyS1 COM2. Wenn jetzt ein Programm dev/ttyS0 mit 38,4 kBit/s anspricht, wird die Hardware in Wirklichkeit mit 115,2 kBit/s angesprochen. Mit

setserial -b /dev/ttyS*
läßt sich die Einstellung überprüfen.

4.4 Ein erster Test

Wenn jetzt das Modem angeschlossen ist, zeigt uns die Eingabe von pon, ppp-on oder ppp-up als root, ob wir alles richtig gemacht haben.

Als Test machen wir hier ein ping auf eine vom Provider angegebene IP eines Nameservers:

# ping [IP]

Das Ergebnis sollte wie folgt aussehen, wobei die Ausgabe mit <Strg>+<C> abgebrochen werden kann:

PING 134.99.128.5 (134.99.128.5): 56 data bytes
64 bytes from 134.99.128.5: icmp_seq=0 ttl=253 time=189.4 ms
64 bytes from 134.99.128.5: icmp_seq=1 ttl=254 time=180.5 ms
64 bytes from 134.99.128.5: icmp_seq=2 ttl=254 time=240.1 ms
64 bytes from 134.99.128.5: icmp_seq=3 ttl=254 time=180.4 ms

--- 134.99.128.5 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 180.4/197.6/240.1 ms

Nachdem die eigentliche PPP-Verbindung nun, wie uns der Test bestätigt hat, einwandfrei funktioniert, können wir uns an die nächste Aufgabe begeben: die Einrichtung des Mailservers.


Inhalt