Configure SLP on SUSE Linux
Novell Cool Solutions: Feature
By Aaron Gresko
Digg This -
Posted: 10 Aug 2005
Get SLP running smoothly on SUSE Linux by following these steps:
- Choose an SLP package
- Set up the network
- Install SLP
- Configure SLP
- Start SLP
- Test SLP
Choose an SLP Package
SUSE Linux and Novell software can use either of two SLP packages, NDS SLP or OpenSLP.
NDS SLP comes with most Novell software for Linux, such as Novell Nterprise Linux Services, ConsoleOne for Linux, and eDirectory 8.7.3. NDS SLP only provides SA and UA functionality, so if the SUSE Linux server needs to provide DA functionality use OpenSLP. The daemon for NDS SLP is slpuasa and the configuration file is /etc/slpuasa.conf.
OpenSLP is a full featured SLP package that can be downloaded from www.openslp.org. Novell recommends using OpenSLP for all SLP implementations. The daemon for OpenSLP is slpd and the configuration file is /etc/slp.conf.
Only install and start one SLP package on a system. To determine if a system already has an installed SLP package, open a terminal and enter the command rpm -qa | grep slp.
SUSE Linux Enterprise Server 8 does not come with an SLP package installed by default. SUSE Linux Enterprise Server 9 installs OpenSLP 1.1.5 by default, which is a developmental version of OpenSLP. eDirectory 8.7.3 and earlier will not work with OpenSLP 1.1.5. This issue is fixed in Open Enterprise Server.
Setup the Network
Both SLP packages depend on the same network infrastructure to ensure communication with other SLP systems in the network.
If the SLP design will utilize unicast DA discovery, then the system needs to be set up with correct IP address and gateway information. If the system can ping the target DA's network interface, then the network setup is sufficient.
If the SLP design calls for mutlicast discovery, then the system must have correct multicast routes added. To add and test the multicast route, do the following:
At the command prompt, enter route to display the current routing table. If a route for the multicast network, 220.127.116.11, is not found, then add one.
To add a multicast route, enter route add -net 18.104.22.168 netmask 240.0.0.0 dev eth0 at the command prompt. Be sure to enter the correct device name in the eth0 position. On multihomed systems, only one device can be configured to handle multicast.
Test the multicast route by entering ping 22.214.171.124 at the command prompt. All machines on your network setup for multicast should respond to the ping. Look for a response from systems running SLP DAs.
Make the multicast route permanent by entering the route in YaST. On SLES9, do the following:
Start YaST then select Network Services > Routing.
In the Routing Configuration screen, select Expert Configuration, then select Add.
Enter 126.96.36.199 for the Destination, 0.0.0.0 for the Gateway, and 240.0.0.0 for the netmask. Be sure to select the correct network device to handle the multicast packets.
Use RPM to install the proper SLP package on the system. The syntax will be rpm -i packagename. OpenSLP can be downloaded from www.openslp.org.
If installing eDirectory or NNLS, the install scripts will install NDS SLP if OpenSLP is not already installed on the system.
If the SLP design uses an unnamed scope with multicast DA discovery, skip to the next section. The default configuration is sufficient. If the system needs to be configured to use a specific scope and DA, or needs to be configured as a DA itself, then adjustments must be made to the configuration files.
To configure NDS SLP, open /etc/slpuasa.conf in an editor and uncomment the appropriate lines. The valid parameters are as follows:
- DA_ADDR---A list of IP addresses and scopes of SLP DAs to use. The format can be unscoped (e.g. 192.168.1.1, 192.168.1.2) and scoped (e.g. (192.168.1.1, myscope1 myscope2)).
- net.slp.useScopes---A comma delimited list of scopes for NDS SLP to access. Only use for named scopes.
- net.slp.isBroadcastOnly---When set to 1, SLP only uses broadcast SLP requests, instead of trying multicast first and switching to broadcast on failure.
- net.slp.isMulticastOnly---When set to 1, SLP will not discover any DAs, active or passive.
- net.slp.MulticastRadius---The multicast TTL.
To configure OpenSLP, open /etc/slp.conf in an editor and uncomment the appropriate line. The slp.conf file has a multitude of well documented parameters. Read the configuration file comments carefully. Additional documentation can be found at www.openslp.org/#Documentation.
Use the startup scripts in /etc/init.d to start and stop the appropriate SLP daemons.
To start NDS SLP, enter /etc/init.d/slpuasa start at the command prompt.
To start OpenSLP, enter /etc/init.d/slpd start at the command prompt.
After starting the SLP daemon, test the SLP configuration. Many tools are available to troubleshoot and test the SLP service.
To test NDS SLP, use the system log and the command slpinfo. For example, enter cat /var/log/messages | grep slp at the command prompt to see the results of slpuasa initialization, including DA discovery.
Use slpinfo to query SLP services and attributes. For example, entering slpinfo -s "ndap.novell/DEFAULT//" at the command prompt will display a list of discovered eDirectory servers in the DEFAULT scope.
To test OpenSLP, use the command-line tool slptool. The following commands are useful:
- slptool findsrvs service:service-agent---Lists discovered service agents. The current system should show up in the output.
- slptool findsrvs service:directory-agent---Lists discovered directory agents.
- slptool findsrvs service:ndap.novell---Lists discovered eDirectory servers. Useful if installing the Linux server into an existing eDirectory tree.
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com