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® 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 |
|---|---|
Services that offer SLP support include cupsd, rsyncd, ypserv, openldap2, openwbem (CIM), ksysguardd, saned, kdm vnc login, smpppd, rpasswd, postfix, and sshd (via fish). | |
slpd must run on your system to offer services with SLP. It is not necessary
to start this daemon simply to make service inquiries.
Like most system services in SUSE Linux Enterprise, the
slpd daemon is controlled by means of a
separate initialization script.
The daemon is inactive by default. To activate it for
the duration of a session, run
rcslpd start as
root to start it and
rcslpd stop to stop
it. Perform a restart or status check with
restart or status. If
slpd should be active by default, enable slpd in
YaST +
or run the insserv slpd command
once as root. This
automatically includes slpd in the set
of services to start when the system boots.
To find services provided by SLP in your network, use an SLP front-end. SUSE Linux Enterprise contains several front-ends:
slptool is a simple 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. slptool can also be
called from scripts that process SLP information.
YaST contains a separate SLP browser that lists all services in the local network announced by SLP in a tree diagram. Find it as +.
When used as a network browser,
Konqueror can display all SLP
services available in the local network at
slp:/. Click the icons in the main window
to obtain more detailed information about the relevant
service.
If you use Konqueror with
service:/, click the
relevant icon once in the browser window to set up a connection
with the selected service.
If you offer an installation server with SUSE Linux Enterprise installation media within your network, this can be registered with SLP. For details, see Section 4.2.1, “Setting Up an Installation Server Using YaST”. If SLP installation is selected, linuxrc starts an SLP inquiry after the system has booted from the selected boot medium and displays the sources found.
Many applications in SUSE Linux Enterprise already 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 with SLP:
/etc/slp.reg.dCreate a separate registration file for each new service. The following is an example of a file 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-tcp-port and
description.
watch-tcp-port 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.
![]() | YaST and SLP |
|---|---|
Some services brokered by YaST, such as an installation server or YOU server, perform this registration automatically when you activate SLP in the module dialogs. YaST then creates registration files for these services. | |
/etc/slp.reg
The only difference from the procedure with
/etc/slp.reg.d is the
grouping of all services within a central file.
If a service should be registered for SLP from proprietary scripts, use the slptool command line front-end.
The following sources provide further information about SLP:
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 all available documentation for SLP,
including a README.SuSE containing the
SUSE Linux Enterprise details, the RFCs, and two
introductory HTML documents. Programmers who want to use the SLP
functions should install the openslp-devel package to consult
its supplied Programmers Guide.