1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
|
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Mozilla/4.77C-CCK-MCD Caldera Systems OpenLinux [en] (X11; U; Linux 2.4.2 i686) [Netscape]">
<title>OpenSLP Users Guide - Installing OpenSLP on Linux</title>
</head>
<body text="#000000" bgcolor="#FFFFFF" link="#0000EE" vlink="#551A8B" alink="#FF0000">
<h2>
Installing OpenSLP on Linux</h2>
<hr WIDTH="100%">
<h3>
Installation</h3>
Installing the latest distribution of OpenSLP is easy. Pay attention
to the following steps and you should not have any problems.
<br>
<ul>
<li>
RPM Installation</li>
<ul>
<li>
Download the latest RPM file from <a href="http://www.openslp.org">www.openslp.org</a>.
Select the appropriate distribution.</li>
<li>
Become root (root is usually the only user that can install packages).</li>
<li>
Install the package. This is typically done with:</li>
<ul><tt>rpm -Uvh openslp-x.x.x.rpm</tt></ul>
<li>
Make any configuration changes to the <tt>/etc/slp.conf</tt> file that
you think you need. (see <a href="SlpConf.html">Configuration</a> for details)</li>
<li>
Set up static registrations in the <tt>/etc/slp.reg</tt> file if you need
them. (see <a href="SlpReg.html">Static Registrations</a> for details)</li>
<li>
Start the OpenSLP daemon.</li>
<ul><tt>/usr/sbin/slpd</tt></ul>
</ul>
<li>
Tarball Installation</li>
<ul>
<li>
Download the latest tarball(.tar.gz) file from <a href="http://www.openslp.org">www.openslp.org</a></li>
<li>
Unzip and untar the file into an appropriate directory.</li>
<ul><tt>tar -zxf openslp-x.x.x.tar.gz</tt></ul>
<li>
Become root (root is usually the only user that can install daemons and
libraries).</li>
<ul>su root</ul>
<li>
Enter the extracted openslp directory build and install the OpenSLP binaries:</li>
<ul><tt>./configure</tt></ul>
<ul><tt>make</tt></ul>
<ul><tt>make install</tt></ul>
<li>
Make any configuration changes to the <tt>/etc/slp.conf</tt> file that
you think you need. (see <a href="SlpConf.html">Configuration</a> for details).</li>
<li>
Set up static registrations in the <tt>/etc/slp.reg</tt> file if you need
them. (see <a href="SlpReg.html">Static Registrations</a> for details).</li>
<li>
Start the OpenSLP daemon.</li>
<ul><tt>/usr/sbin/slpd</tt></ul>
</ul>
<li>
Make slpd start on boot:</li>
<ul>You may want to make a few changes to your Linux initialization scripts
so that slpd will start when your machine is booted. Since it is
not always necessary to have slpd running, <b>you should probably read
about when (and why) the OpenSLP daemon has to run in the <a href="index.html">Advanced
Topics</a> section before deciding to changing your init scripts</b>.</ul>
<li>
Remove the distribution directory from your system.</li>
<ul>Unless you will be doing OpenSLP development work, you will probably
want to remove the distribution directory from your system after OpenSLP
is installed. The distribution directory is the one that was created
by the tar -zxf openslp-x.x.x.tar.gz command. During installation,
all of the important files were copied out of this directory to the appropriate
places on you machines file system so it can be deleted with out breaking
your installation of OpenSLP.</ul>
<li>
Add multicast or broadcast routes if necessary.</li>
<ul>Some operating systems (like Linux) require a route to be set so that
the host knows which interface should be used to send multicast and general
broadcast traffic. Most of the time, the default route will be sufficient.
<p><tt># route -n</tt>
<br><tt>Kernel IP routing table</tt>
<br><tt>Destination Gateway
Genmask Flags Metric Ref
Use Iface</tt>
<br><tt>192.168.100.2 0.0.0.0
255.255.255.0 U 0
0 0 eth0</tt>
<br><tt>127.0.0.0 0.0.0.0
255.0.0.0 U
0 0
0 lo</tt>
<br><tt>0.0.0.0 216.250.131.254
0.0.0.0 UG
0 0
0 eth</tt>0
<p>With the routing table above all multicast and general broadcast will
be sent on eth0 (the 0.0.0.0 route is the default route.)
<p>If you do not have a default route or you have a multi-homed host, you
will have specify which interface should be used. The following
is an example of a routing table from a multihomed host:
<p><tt># route -n</tt>
<br><tt>Kernel IP routing table</tt>
<br><tt>Destination Gateway
Genmask Flags Metric Ref
Use Iface</tt>
<br><tt>192.168.131.0 0.0.0.0
255.255.255.0 U 0
0 0 eth1</tt>
<br><tt>216.250.131.0 0.0.0.0
255.255.255.0 U 0
0 0 eth0</tt>
<br><tt>127.0.0.0 0.0.0.0
255.0.0.0 U
0 0
0 lo</tt>
<br><tt>0.0.0.0 216.250.131.254
0.0.0.0 UG
1 0
0 eth0</tt>
<p>Notice the default route? This means that multicast traffic will
be sent to eth0. If I don't want multicast traffic to be sent
to eth0 I will need to add a special route.
<p><tt># route add -net 224.0.0.0 netmask 240.0.0.0 dev eth1</tt>
<br><tt># route -n</tt>
<br><tt>Kernel IP routing table</tt>
<br><tt>Destination Gateway
Genmask Flags Metric Ref
Use Iface</tt>
<br><tt>192.168.131.0 0.0.0.0
255.255.255.0 U 0
0 0 eth1</tt>
<br><tt>216.250.131.0 0.0.0.0
255.255.255.0 U 0
0 0 eth0</tt>
<br><tt>127.0.0.0 0.0.0.0
255.0.0.0 U
0 0
0 lo</tt>
<br><tt>224.0.0.0 0.0.0.0
240.0.0.0 U
0 0
0 eth1</tt>
<br><tt>0.0.0.0 216.250.131.254
0.0.0.0 UG
1 0
0 eth0</tt>
<p>Now multicast will be sent on eth1 not eth0.
<p>To my knowledge, there is no way to send multicast traffic both
eth1 and eth0 (at least with Linux) without specialized routing software.
Some multihomed machines have NICs that are attached to the same network.
In this case, there is usually no need to send multicast on both NICs.
If you need specialized routing software take a look at <i>mrouted</i>.
<br> </ul>
<li>
Testing to see if your installation of OpenSLP works.</li>
<ul>The OpenSLP distribution contains a handy command line tool that allows
you to perform most SLP functions from the command line. The tool
is called <tt>slptool</tt> and is built and installed by the OpenSLP make
files. Look for SLP tool in /usr/bin, /usr/local/bin, or <openslp_source_dir>/slptool/.
After you have started slpd, you should be able to issue a query for SLP
service agents using the following command line.
<p><tt>$ slptool findsrvs service:service-agent</tt>
<p>The results of this command should be a list of the hosts that are running
slpd. This indicates that OpenSLP is successfully installed and working.
If you do not get any output, then OpenSLP is not installed correctly or
is not working. If this happens, please double check that you
followed build and installation instructions, and read the
<a href="http://www.openslp.org/doc/html/faq.html">FAQ</a>.
If this does not help, post to the <a href="mailto:openslp-users.lists.sourceforge.net">openslp-users</a>
mailing list with as much detail as you can provide.</ul>
</ul>
</body>
</html>
|