Login
Newsletter
Werbung

Mo, 31. Januar 2000, 00:00

Parallel Port Netzwerk unter Linux

Von Boris

Was ist PLIP überhaupt?

PLIP steht für Parallel Line Interface Protocol und ist eine recht billige Alternative, um zwei Computer mit paralleler Schnittstelle zu vernetzen. Einziger Kostenpunkt ist ein handelsübliches paralleles Kabel, oftmals auch als "LapLink"-Kabel bezeichnet, das die beiden parallelen Schnittstellen zweier Computer miteinander verbindet. Das konfigurierte PLIP Interface verhält sich dabei wie eine Netzwerkkarte und wird auch als solche behandelt. Wie man sich vielleicht schon denken kann, ist eine PLIP-Verbindung um einiges langsamer als eine Ethernet-Verbindung über zwei Netzwerkkarten. Die Geschwindigkeit bei einer Datenübertragung hängt in erster Linie von der verwendeten Hardware ab, also dem Prozessor und der parallelen Schnittstelle. Bei einigen Computern kann im BIOS die parallele Schnittstelle konfiguriert werden. Hier sollte man, wenn möglich, mindestens den bi-direktionalen, besser jedoch den ECP- oder EPP-Modus wählen, um die Geschwindigkeit zu erhöhen.

Was brauche ich, um PLIP zu benutzen?

Um eine Parallel-Port-Verbindung aufzubauen, braucht man:

  • zwei Computer :-)
  • an jedem Computer eine freie parallele Schnittstelle
  • einen Kernel mit Netzwerk-, PLIP- und ggf. Parallel-Port-Unterstützung
  • ein Parallelport-Kabel, oft "LapLink"-Kabel genannt
  • ein wenig Zeit

PLIP-Konfiguration

Kernel kompilieren

Den Standard-kernel von SuSE 6.0 mußte ich zum Glück nicht neu kompilieren. Wer jedoch einen anderen Kernel verwendet, muß ggf. ein paar Änderungen machen. Ich gehe mal davon aus, daß jeder weiß, wie man den Kernel neu kompiliert. Es wird generell empfohlen, mit Modulen zu arbeiten. Dies hat den Vorteil, daß man Teile des Kernels mit insmod und rmmod jederzeit in das laufende System einbinden bzw. aus dem System entfernen kann. Wichtig: Man benötigt einen Kernel-Patch, wenn man z.B. einen Drucker und PLIP fest in den Kernel eingebunden hat und beides benutzen will. Ein Kernel-Patch ist auch dann erforderlich, wenn es zwei parallele Ports gibt und PLIP sowie der Drucker verwendet werden sollen. Um eine PLIP-Verbindung auf einem System aufzubauen, welches nur einen parallelen Port hat, muß deswegen das Modul für den Drucker aus dem System entfernt werden, um PLIP benutzen zu können.

Folgende Optionen müssen im Kernel aktiviert werden:

  • Loadable module support ---> [*] Enable loadable module support
  • Networking options ---> [*] Network firewalls
  • [*] TCP/IP networking
  • [*] IP: forwarding/gatewaying
  • Network device support ---> [*] Network device support
  • [M] PLIP (parallel port) support
  • Character devices ---> [M] Parallel printer support
    (ist nur erforderlich, wenn auch noch ein Drucker verwendet werden soll)

Parallelport konfigurieren

Nachdem der Kernel neu konfiguriert und das System gestartet wurde, kann das Modul plip geladen werden. Es ist von Vorteil, wenn man zuvor IO-Adresse und IRQ der parallen Schnittstelle kennt (z.B. im BIOS nachschauen). Bei mir traten Probleme auf, wenn ich dem Modul keine Parameter übergab. Das Modul plip wird mit dem Programm insmod bzw. modprobe geladen. Am einfachsten geht das so:

insmod plip

oder man teilt dem Modul Parameter mit:

insmod plip io=0x378 irq=7

alternativ kann man auch "modprobe" verwenden.

Sollte es hier Probleme geben, ist vermutlich das Modul für den Drucker geladen und kein Kernel-Patch installiert oder die Angaben für IO-Adresse und IRQ stimmen nicht. Mit lsmod kann man sich die geladenen Module ansehen. Ist dort irgendein oder mehrere Module mit dem Namen parport zu sehen, so müssen diese zuvor mit rmmod entfernt werden. Hat man Erfolg, so sollte in der Ausgabe von lsmod das Modul plip erscheinen. Nun schaut man sich die Kernelmeldungen an. Die Kernelmeldungen werden in der Datei /var/log/messages gespeichert. Bei SuSE kann man stattdessen auf die 10. Konsole wechseln (STRG + ALT +F10). Die Kernelmeldung über das Modul plip sieht in etwa so aus:

Jan 14 22:22:50 Obelix kernel: NET3 PLIP version 2.2 gniibe@nri.co.jp
Jan 14 22:22:50 Obelix kernel: plip1: Parallel port a 0x378, using assigned IRQ 7.

Aus dieser Meldung erfährt man den Namen des Interfaces, in diesem Fall also plip1. Da der Name des Interfaces bei der Netzwerkkonfiguration von Bedeutung ist, sollte man sich diesen merken. Der Name des Interfaces hängt von der IO-Adresse der parallelen Schnittstelle ab (plip0, plip1, plip2 ...).

Netzwerkkonfiguration

Interface einstellen

Um die Konfiguration ein wenig zu vereinfachen, benutze ich folgendes Beispiel:

  • Server (192.168.3.1) server.domain
  • Notebook (192.168.3.2) notebook.domain

Zwischen diesen beiden Computern soll nun eine Verbindung aufgebaut werden. Es können natürlich auch andere IP-Adressen verwendet werden. Man sollte sich aber an die vorgegebenen freien Bereiche halten, um Probleme zu vermeiden, falls ein Internet-Zugang vorhanden ist.

Als erstes trägt man am besten die IP-Adressen beider Computer in die Datei /etc/hosts auf beiden Computern ein. Dies ist zwar eigentlich nicht nötig, doch kann es im Zusammenhang mit NFS bzw. dem Portmapper zu Problemen kommen, falls kein Eintrag besteht. In der Datei /etc/hosts werden diese beiden Einträge vorgenommen:

192.168.3.1 server.domain
192.168.3.2 notebook.domain

Nun teilen wir dem System mit, daß es ein neues Interface gibt. Hier muß darauf geachtet werden, daß das richtige Interface verwendet wird. Aus den Kernelmeldungen kann man den Namen des Interfaces ersehen (siehe Abschnitt Parallelport konfigurieren).

ifconfig plip1

oder auch so mit der Angabe des IRQ und der IO-Adresse:

ifconfig plip1 irq 7 io_addr 0x378

Interface aktivieren

Das konfigurierte Interface (in diesem Fall plip1) wird nun gestartet. Mit ifconfig kann man sich die aktiven Interfaces ansehen. Dazu muss einfach nur ifconfig eingegeben werden. In der Ausgabe muß dann irgendwo der Interface-Name mit einer ganzen Reihe von Informationen aufgelistet sein.

Server:

ifconfig plip1 192.168.3.1 pointopoint 192.168.3.2 up

Notebook:

ifconfig plip1 192.168.3.2 pointopoint 192.168.3.1 up

Hier muß einfach nur darauf geachtet werden, daß die IP-Adressen stimmen und nicht die beiden Computer die gleiche IP-Adresse haben.

Nach der Eingabe von ifconfig erhält man z.B. ein solche Ausgabe:

lo Link encap:Local Loopback
 inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
 UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
 RX packets:26 errors:0 dropped:0 overruns:0 frame:0
 TX packets:26 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0
plip1 Link encap:Ethernet HWaddr FC:FC:C0:A8:03:02
 inet addr:192.168.3.2 P-t-P:192.168.3.1 Mask:255.255.255.0
 UP POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
 RX packets:18 errors:0 dropped:0 overruns:0 frame:0
 TX packets:18 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0
 Interrupt:7 Base address:0x378
Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung