SLP-Dienste im Netzwerk

Inhaltsverzeichnis

22.1. Installation
22.2. SLP aktivieren
22.3. SLP-Frontends in openSUSE
22.4. Installation über SLP
22.5. Bereitstellen von Diensten über SLP
22.6. Weiterführende Informationen

Zusammenfassung

Das Service Location Protocol (SLP) wurde entwickelt, um die Konfiguration vernetzter Clients innerhalb eines lokalen Netzwerks zu vereinfachen. Zur Konfiguration eines Netzwerk-Clients inklusive aller erforderlichen Dienste benötigt der Administrator traditionell detailliertes Wissen über die im Netzwerk verfügbaren Server. SLP teilt allen Clients im lokalen Netzwerk die Verfügbarkeit ausgewählter Dienste mit. Anwendungen mit SLP-Unterstützung können diese Informationen verarbeiten und können automatisch konfiguriert werden.

openSUSE® unterstützt die Installation von mit SLP bereitgestellten Installationsquellen und beinhaltet viele Systemdienste mit integrierter Unterstützung für SLP. YaST und Konqueror verfügen beide über SLP-fähige Frontends. Nutzen Sie SLP, um vernetzten Clients zentrale Funktionen wie Installationsserver, YOU-Server, Dateiserver oder Druckserver auf Ihrem System zur Verfügung zu stellen.

[Important]SLP-Unterstützung in openSUSE

Dienste, die SLP-Unterstützung bieten, sind u. a. cupsd, rsyncd, ypserv, openldap2, ksysguardd, saned, kdm, vnc, login, smpppd, rpasswd, postfix und sshd (über fish).

Installation

Alle Pakete, die zur Verwendung von SLP-Diensten erforderlich sind, werden standardmäßig installiert. Falls Sie jedoch Dienste via SLP bereitstellen möchten, müssen Sie sicherstellen, dass auch das Paket openslp-server installiert wird. Für die SLP-Daemon-Serverkonfiguration installieren Sie das Paket yast2-slp-server.

SLP aktivieren

slpd muss auf Ihrem System ausgeführt werden, damit Dienste mit SLP angeboten werden können. Wenn der Computer nur als Client fungieren soll und keine Dienste anbietet, ist es nicht erforderlich, slpd auszuführen. Wie die meisten Systemdienste unter openSUSE wird der slpd-Dämon über ein separates init-Skript gesteuert. Nach der Installation ist der Dämon standardmäßig inaktiv. Wenn Sie ihn temporär aktivieren möchten, führen Sie rcslpd start als root aus. Zum Stoppen führen Sie rcslpd stop aus. Mit restart oder status lösen Sie einen Neustart oder eine Statusabfrage aus. Wenn slpd nach dem Booten immer aktiv sein soll, aktivieren Sie slpd in YaST System+Systemdienste (Runlevel) oder führen Sie das Kommando insserv slpd als root aus.

SLP-Frontends in openSUSE

Verwenden Sie für die Suche nach Diensten, die über SLP bereitgestellt werden, in Ihrem Netzwerk ein SLP-Frontend wie slptool (openslp-Paket) oder YaST:

slptool

slptool ist ein Kommandozeilenprogramm, mit dem SLP-Abfragen im Netzwerk oder proprietäre Dienste bekannt gegeben werden können. Mit slptool --help werden alle verfügbaren Optionen und Funktionen aufgelistet. Um beispielsweise alle Zeitserver zu finden, die sich selbst im aktuellen Netzwerk bekannt geben, führen Sie folgendes Kommando aus:

slptool findsrvs service:ntp
YaST

YaST stellt außerdem einen SLP-Browser zur Verfügung. Dieser Browser ist jedoch nicht über das YaST-Kontrollzentrum verfügbar. Führen Sie zum Starten dieses Browsers yast2 slp als root-Benutzer aus. Klicken Sie auf Dienstarten auf der linken Seite, um weitere Informationen zu einem Dienst zu erhalten.

Installation über SLP

Wenn Sie einen Installationsserver mit openSUSE-Installationsmedien in Ihrem Netzwerk anbieten, kann dieser mit SLP registriert und angeboten werden. Weitere Informationen finden Sie in Abschnitt 1.2, „Einrichten des Servers, auf dem sich die Installationsquellen befinden“. Wenn die SLP-Installation ausgewählt wurde, startet linuxrc eine SLP-Anrage, nachdem das System vom ausgewählten Startmedium gestartet wurde, und zeigt die gefundenen Quellen an.

Bereitstellen von Diensten über SLP

Viele Anwendungen in openSUSE verfügen durch die libslp-Bibliothek über eine integrierte SLP-Unterstützung. Falls ein Dienst ohne SLP-Unterstützung kompiliert wurde, können Sie ihn mit einer der folgenden Methoden per SLP verfügbar machen:

Statische Registrierung über /etc/slp.reg.d

Legen Sie für jeden neuen Dienst eine separate Registrierungsdatei an. Das folgende Beispiel veranschaulicht die Registrierung eines Scanner-Diensts:

## Register a saned service on this system
## en means english language
## 65535 disables the timeout, so the service registration does
## not need refreshes
service:scanner.sane://$HOSTNAME:6566,en,65535
watch-port-tcp=6566
description=SANE scanner daemon

Die wichtigste Zeile dieser Datei ist die Dienst-URL, die mit service: beginnt. Sie enthält den Diensttyp (scanner.sane) und die Adresse, unter der der Dienst auf dem Server verfügbar ist. $HOSTNAME wird automatisch durch den vollständigen Hostnamen ersetzt. Abgetrennt durch einen Doppelpunkt folgt nun der Name des TCP-Ports, auf dem der entsprechende Dienst gefunden werden kann. Geben Sie nun die Sprache an, in der der Dienst angekündigt werden soll, und die Gültigkeitsdauer der Registrierung in Sekunden. Diese Angaben müssen durch Kommas von der Dienst-URL getrennt werden. Wählen Sie für die Registrierungsdauer einen Wert zwischen 0 und 65535. 0 verhindert die Registrierung. Mit 65535 werden alle Einschränkungen aufgehoben.

Die Registrierungsdatei enthält außerdem die beiden Variablen watch-port-tcp und description. watch-port-tcp koppelt die SLP-Dienstankündigung daran, ob der entsprechende Dienst aktiv ist, indem slpd den Status des Diensts überprüft. Die zweite Variable enthält eine genauere Beschreibung des Diensts, die in den entsprechenden Browsern angezeigt wird.

Statische Registrierung über /etc/slp.reg

Der einzige Unterschied zwischen dieser Methode und der Prozedur mit /etc/slp.reg.d besteht darin, dass alle Dienste in einer zentralen Datei gruppiert sind.

Dynamische Registrierung über slptool

Wenn ein Dienst dynamisch ohne Verwendung von Konfigurationsdateien registriert werden soll, verwenden Sie das Kommandozeilenprogramm slptool. Dasselbe Programm kann auch die Registrierung eines bestehenden Dienstangebots aufheben, ohne slpd neu zu starten.

Weiterführende Informationen

RFC 2608, 2609, 2610

RFC 2608 befasst sich mit der Definition von SLP im Allgemeinen. RFC 2609 geht näher auf die Syntax der verwendeten Dienst-URLs ein und RFC 2610 thematisiert DHCP über SLP.

http://www.openslp.org

Die Homepage des OpenSLP-Projekts.

/usr/share/doc/packages/openslp

Dieses Verzeichnis enthält die Dokumentation für SLP, die im Lieferumfang des openslp-server-Pakets enthalten ist, einschließlich einer README.SuSE-Datei mit den openSUSE-Details, den RFCs und zwei einführenden HTML-Dokumenten. Programmierer, die an den SLP-Funktionen interessiert sind, finden weitere Informationen im Programmierhandbuch, das im Paket openslp-devel enthalten ist.