Contents
Abstract
The service location protocol (SLP) was developed to simplify the configuration of networked clients within a local network. To configure a network client, including all required services, the administrator traditionally needs detailed knowledge of the servers available in the network. SLP makes the availability of selected services known to all clients in the local network. Applications that support SLP can use the information distributed and be configured automatically.
SUSE® Linux Enterprise Desktop supports installation using installation sources provided with SLP and contains many system services with integrated support for SLP. YaST and Konqueror both have appropriate front-ends for SLP. You can use SLP to provide networked clients with central functions, such as an installation server, file server, or print server on your system.
![]() | SLP Support in SUSE Linux Enterprise Desktop |
|---|---|
Services that offer SLP support include cupsd, rsyncd, ypserv, openldap2, ksysguardd, saned, kdm, vnc, login, smpppd, rpasswd , postfix, and sshd (via fish). | |
All packages necessary are installed by default. However, if you want to
provide services via SLP, check that the package
openslp-server is installed.
slpd must run on your system to offer services with SLP. If the machine
should only operate as client, and does not offer services, it is not
necessary to run slpd. Like most system services in SUSE Linux Enterprise Desktop, the
slpd daemon is controlled by means of a separate init
script. After the installation, the daemon is inactive by default. To
activate it temporarily, run
rcslpd start as
root or
rcslpd stop to stop it. Perform
a restart or status check with restart or
status. If slpd should be always active after booting,
enable slpd in YaST + or run the
insserv slpd command as
root.
To find services provided via SLP in your network, use an SLP front-end
such as slptool (openslp
package) or YaST:
slptool is a command line program that can be used to
announce SLP inquiries in the network or announce proprietary
services. slptool --help
lists all available options and functions. For example, to find all
time servers that announce themselves in the current network, run the
command:
slptool findsrvs service:ntp
YaST also provides an SLP browser. However, this
browser is not available from the YaST Control Center. To start it,
run yast2 slp as
root user. Click on a
on the lefthand side to get more
information about a service.
Many applications in SUSE Linux Enterprise Desktop have integrated SLP support through
the use of the libslp library. If a service has not
been compiled with SLP support, use one of the following methods to make
it available via SLP:
/etc/slp.reg.d
Create a separate registration file for each new service. This is an example for registering a scanner service:
## 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
The most important line in this file is the service
URL, which begins with service:. This
contains the service type (scanner.sane) and the
address under which the service is available on the server.
$HOSTNAME is automatically replaced with
the full hostname. The name of the TCP port on which the relevant
service can be found follows, separated by a colon. Then enter the
language in which the service should appear and the duration of
registration in seconds. These should be separated from the service
URL by commas. Set the value for the duration of registration between
0 and 65535.
0 prevents registration. 65535
removes all restrictions.
The registration file also contains the two variables
watch-port-tcp and
description.
watch-port-tcp links the SLP service
announcement to whether the relevant service is active by having slpd
check the status of the service. The second variable contains a more
precise description of the service that is displayed in suitable
browsers.
/etc/slp.reg
The only difference between this method and the procedure with
/etc/slp.reg.d is that all services are grouped
within a central file.
If a service needs to be registered dynamically without the need of configuration files, use the slptool command line utility. The same utility can also be used to deregister an existing service offering without restarting slpd.
RFC 2608 generally deals with the definition of SLP. RFC 2609 deals with the syntax of the service URLs used in greater detail and RFC 2610 deals with DHCP via SLP.
The home page of the OpenSLP project.
/usr/share/doc/packages/openslp
This directory contains the documentation for SLP coming with the
openslp-server package, including a
README.SuSE containing the SUSE Linux Enterprise Desktop details,
the RFCs, and two introductory HTML documents. Programmers who want to
use the SLP functions find more information in the
Programmers Guide that is included in the
openslp-devel package.