![]() |
|
Linux - Wegweiser für NetzwerkerOnline-VersionCopyright © 2001
by O'Reilly Verlag GmbH & Co.KG Bitte denken Sie daran: Sie dürfen zwar die Online-Version ausdrucken, aber diesen Druck nicht fotokopieren oder verkaufen. Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen. Wünschen Sie mehr Informationen zu der gedruckten Version des Buches Linux - Wegweiser für Netzwerker oder wollen Sie es bestellen, dann klicken Sie bitte hier. |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Dialup-IP-Server bieten SLIP häufig über spezielle Benutzer-Accounts an. Nach dem Einloggen in einen solchen Account landen Sie nicht in der üblichen Shell, sondern es wird ein Programm oder Shell-Skript ausgeführt, das den SLIP-Treiber des Servers für die serielle Leitung konfiguriert und ein entsprechendes Netzwerk-Interface aufbaut. Dasselbe muß danach an Ihrem Ende der Leitung passieren.
Bei manchen Betriebssystemen ist der SLIP-Treiber ein normales Anwenderprogramm; bei Linux dagegen ist er Teil des Kernel und ist dadurch erheblich schneller. Das verlangt allerdings, daß die serielle Leitung explizit auf den SLIP-Modus umgestellt wird. Dieser Betriebsmodus ist als eine spezielle line discipline, SLIPDISC, implementiert. Wenn das TTY sich im Normalmodus (DISC0) befindet, tauscht es Daten nur mit Benutzerprozessen über die Systemaufrufe read(2) und write(2) aus, und der SLIP-Treiber ist nicht in der Lage, von diesem tty zu lesen oder darauf zu schreiben. Bei SLIPDISC sind die Rollen vertauscht: Nun werden alle Schreib- und Lesezugriffe von Benutzerprozessen blockiert, während alle über die serielle Schnittstelle eintreffenden Daten direkt an den SLIP-Treiber weitergeleitet werden.
Der SLIP-Treiber versteht verschiedene Varianten des SLIP-Protokolls. Neben dem normalen SLIP versteht er auch CSLIP, das die sogenannte Van-Jacobson-Header-Komprimierung (beschrieben in RFC-1144) von ausgehenden IP-Paketen implementiert. Das verbessert den Durchsatz bei interaktiven Anwendungen merklich. Darüber hinaus gibt es 6-Bit-Versionen dieser Protokolle.
Einen einfachen Weg zur Umstellung einer seriellen Leitung auf den SLIP-Modus bietet das slattach-Tool. Nehmen wir einmal an, Sie hätten Ihr Modem an /dev/ttyS3 angeschlossen und sich erfolgreich in den SLIP-Server eingeloggt. Nun führen Sie den folgenden Befehl aus:
#
slattach /dev/ttyS3 &
Das schaltet den Betriebsmodus von ttyS3 auf SLIPDISC
und verbindet diese mit einer der SLIP-Netzwerkschnittstellen. Ist dies Ihr erster aktiver SLIP-Link, wird die Leitung an sl0 gebunden; die zweite an sl1 und so weiter. Die aktuellen Kernel unterstützen standardmäßig bis zu 256 simultane SLIP-Verbindungen.
Per Voreinstellung verwendet slattach CSLIP. Sie können einen anderen Modus mit der Kommandozeilenoption –p einstellen. Wenn Sie mit normalem SLIP (ohne Komprimierung) arbeiten wollten, würden Sie folgendes eingeben:
#
slattach -p slip /dev/ttyS3 &
Die verfügbaren Betriebsmodi sind in Tabelle 7.1 aufgelistet. Es gibt auch eine spezielle Pseudo-Betriebsart, die als adaptiv
bezeichnet wird. Diese Variante überläßt es dem Kernel, herauszufinden, welchen SLIP-Modus das Gegenüber verwendet.
Tabelle 7.1: Linux-Slip-Line-Betriebsmodi
Betriebsmodus |
Erläuterung |
---|---|
slip |
Traditionelles SLIP. |
cslip |
SLIP-Variante mit Van-Jacobsen-Header-Komprimierung. |
slip6 |
SLIP-Variante mit 6-Bit-Codierung. Die Codierung ähnelt der des uuencode-Befehls und bewirkt, daß SLIP-Datagramme in druckbare ASCII-Zeichen konvertiert werden. Das bietet sich für Leitungen an, die für 8-Bit-Übertragungen nicht ausgelegt sind. |
cslip6 |
SLIP-Variante mit Van-Jacobsen-Header-Komprimierung und 6-Bit-Codierung. |
adaptive |
Hierbei handelt es sich um keine echte Variante. Diese Line Discipline weist lediglich den Kernel an, den Betriebsmodus von Remote-Rechnern selbst herauszufinden und den SLIP-Betrieb entsprechend anzugleichen. |
Beachten Sie, daß Sie immer dieselbe Variante verwenden müssen wie Ihre Gegenstelle. Wenn beispielsweise der Host cowslip CSLIP verwendet, müssen Sie dies auch tun. Wenn Ihre SLIP-Verbindung nicht funktioniert, sollten Sie als erstes sicherstellen, daß beide Enden der Leitung sich darüber einig sind, ob Header-Komprimierung benutzt wird oder nicht. Wenn Sie sich über die Konfiguration der Gegenstelle nicht im klaren sind, konfigurieren Sie Ihren Host auf adaptives SLIP. Der Kernel sollte dann den richtigen Betriebsmodus selbst herausfinden.
Mit slattach können Sie nicht nur SLIP, sondern auch andere Protokolle wie PPP oder KISS (ein von Amateurfunkern verwendetes Protokoll) aktivieren, die serielle Leitungen verwenden. Das kommt allerdings nicht so häufig vor, und es gibt bessere Tools zur Unterstützung dieser Protokolle. Details können Sie der slattach(8)-Manpage entnehmen.
Nachdem die Leitung nun für den SLIP-Treiber bereitsteht, müssen Sie das Netzwerk-Interface konfigurieren. Dies erledigen Sie wieder mit den Standardbefehlen ifconfig und route. Nehmen wir einmal an, daß Sie von vlager aus einen Server namens cowslip angewählt haben. Sie würden dann auf vlager die folgenden Befehle eingeben:
#
ifconfig sl0 vlager-slip pointopoint cowslip
# route add cowslip
# route add default gw cowslip
Der erste Befehl konfiguriert das Interface als Point-to-Point-Link zu cowslip, während der zweite und dritte die Route zu cowslip und die Default-Route setzen, wobei cowslip als Gateway verwendet wird.
An diesem ifconfig-Aufruf sind zwei Dinge interessant. Das erste ist die Option pointopoint, mit der die Adresse des anderen Endes der Punkt-zu-Punkt-Verbindung festgelegt wird. Das zweite ist die Verwendung von vlager-slip als Adresse für das lokale SLIP-Interface.
Wir haben bereits vorher erwähnt, daß Sie dieselbe Adresse, die dem Ethernet-Interface von vlager zugewiesen wurde, auch für Ihren SLIP-Link verwenden können. In diesem Fall könnte vlager-slip ein weiterer Alias für die Adresse 172.16.1.1 sein. Andererseits kann es vorkommen, daß Sie Ihrem SLIP-Link eine völlig andere IP-Adresse zuweisen müssen. Das ist beispielsweise der Fall, wenn Sie Ihrem Netzwerk eine nicht registrierte IP-Adresse zugewiesen haben, wie im Beispiel der virtuellen Brauerei. Wir kommen auf dieses Thema im nächsten Abschnitt ausführlicher zurück.
Für den Rest dieses Kapitels werden wir immer vlager-slip verwenden, wenn wir uns auf die Adresse des lokalen SLIP-Interfaces beziehen.
Um den SLIP-Link herunterzufahren, sollten Sie zunächst alle Routen durch cowslip entfernen. Dazu führen Sie den Befehl route mit der Option del aus. Danach sollten Sie das Interface herunterfahren und den slattach-Prozeß beenden, indem Sie ihm das Hangup-Signal schicken. Danach veranlassen Sie Ihr Modem mit Hilfe des Terminal-Programms aufzulegen.
#
Die route del default
# route del cowslip
# ifconfig sl0 down
# kill -HUP
516
516
müssen Sie natürlich durch die richtige Prozeß-ID ersetzen, wie sie in der Ausgabe von ps ax
in der Zeile mit dem slattach-Kommando angezeigt wird, das Sie gerade zur Steuerung der SLIP-Schnittstelle verwenden.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Weitere Informationen zum Linux - Wegweiser für Netzwerker
Weitere Online-Bücher & Probekapitel finden Sie in unserem Online Book Center
© 2001, O'Reilly Verlag