]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - usr.sbin/rtsold/rtsold.8
Document -P pidfile option.
[FreeBSD/FreeBSD.git] / usr.sbin / rtsold / rtsold.8
1 .\"     $KAME: rtsold.8,v 1.20 2003/04/11 12:46:12 jinmei Exp $
2 .\"
3 .\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
4 .\" All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\" 3. Neither the name of the project nor the names of its contributors
15 .\"    may be used to endorse or promote products derived from this software
16 .\"    without specific prior written permission.
17 .\"
18 .\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
19 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
22 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 .\" SUCH DAMAGE.
29 .\"
30 .\" $FreeBSD$
31 .\"
32 .Dd May 28, 2011
33 .Dt RTSOLD 8
34 .Os
35 .\"
36 .Sh NAME
37 .Nm rtsold , rtsol
38 .Nd router solicitation daemon
39 .\"
40 .Sh SYNOPSIS
41 .Nm
42 .Op Fl dDfFm1
43 .Op Fl O Ar script-name
44 .Op Fl P Ar pidfile
45 .Op Fl R Ar script-name
46 .Ar interface ...
47 .Nm
48 .Op Fl dDfFm1
49 .Op Fl O Ar script-name
50 .Op Fl P Ar pidfile
51 .Op Fl R Ar script-name
52 .Fl a
53 .Nm rtsol
54 .Op Fl dD
55 .Op Fl O Ar script-name
56 .Op Fl R Ar script-name
57 .Ar interface ...
58 .Nm rtsol
59 .Op Fl dD
60 .Op Fl O Ar script-name
61 .Op Fl R Ar script-name
62 .Fl a
63 .\"
64 .Sh DESCRIPTION
65 .Nm
66 is the daemon program to send ICMPv6 Router Solicitation messages
67 on the specified interfaces.
68 If a node (re)attaches to a link,
69 .Nm
70 sends some Router Solicitations on the link destined to the link-local scope
71 all-routers multicast address to discover new routers
72 and to get non link-local addresses.
73 .Pp
74 .Nm
75 should be used on IPv6 hosts
76 .Pq non-router nodes
77 only.
78 .Pp
79 If you invoke the program as
80 .Nm rtsol ,
81 it will transmit probes from the specified
82 .Ar interface ,
83 without becoming a daemon.
84 In other words,
85 .Nm rtsol
86 behaves as
87 .Do
88 .Nm
89 .Fl f1
90 .Ar interfaces
91 .Dc .
92 .Pp
93 Specifically,
94 .Nm
95 sends at most 3 Router Solicitations on an interface
96 after one of the following events:
97 .Pp
98 .Bl -bullet -compact
99 .It
100 Just after invocation of
101 .Nm
102 daemon.
103 .It
104 The interface is up after a temporary interface failure.
105 .Nm
106 detects such failures by periodically probing to see if the status
107 of the interface is active or not.
108 Note that some network cards and drivers do not allow the extraction
109 of link state.
110 In such cases,
111 .Nm
112 cannot detect the change of the interface status.
113 .It
114 Every 60 seconds if the
115 .Fl m
116 option is specified and the
117 .Nm
118 daemon cannot get the interface status.
119 This feature does not conform to the IPv6 neighbor discovery
120 specification, but is provided for mobile stations.
121 The default interval for router advertisements, which is on the order of 10
122 minutes, is slightly long for mobile stations.
123 This feature is provided
124 for such stations so that they can find new routers as soon as possible
125 when they attach to another link.
126 .El
127 .Lp
128 Once
129 .Nm
130 has sent a Router Solicitation, and has received a valid Router Advertisement,
131 it refrains from sending additional solicitations on that interface, until
132 the next time one of the above events occurs.
133 .Lp
134 When sending a Router Solicitation on an interface,
135 .Nm
136 includes a Source Link-layer address option if the interface
137 has a link-layer address.
138 .Lp
139 .Nm
140 manages a per-interface parameter to detect if a separate protocol is
141 needed for configuration parameters other than host's addresses.
142 At the invocation time, the flag is FALSE, and becomes TRUE when
143 the daemon receives a router advertisement with the OtherConfig flag
144 being set.
145 A script file can be specified to deal with the case
146 .Pq see below .
147 When
148 .Nm
149 start resending router solicitation messages by one of the conditions
150 events,
151 the daemon resets the parameter because the event may indicate a
152 change on the attached link.
153 .Pp
154 Upon receipt of signal
155 .Dv SIGUSR1 ,
156 .Nm
157 will dump the current internal state into
158 .Pa /var/run/rtsold.dump .
159 .\"
160 .Pp
161 The options are as follows:
162 .Bl -tag -width indent
163 .It Fl a
164 Autoprobe outgoing interface.
165 .Nm
166 will try to find a non-loopback, non-point-to-point, IPv6-capable interface.
167 If
168 .Nm
169 finds multiple interfaces,
170 .Nm
171 will exit with error.
172 .\"
173 .It Fl d
174 Enable debugging.
175 .It Fl D
176 Enable more debugging including the printing of internal timer information.
177 .It Fl f
178 Prevent
179 .Nm
180 from becoming a daemon (foreground mode).
181 Warning messages are generated to standard error
182 instead of
183 .Xr syslog 3 .
184 .It Fl F
185 Explicitly configure the kernel to accept Router Advertisements and
186 disable IPv6 forwarding.
187 These settings are required for proper
188 .Nm
189 operation.
190 Without this option, the current settings will be obeyed;
191 if they are incompatible with proper operation,
192 warning messages will be generated,
193 but Router Solicitations will still be sent.
194 The settings may be changed manually with
195 .Xr sysctl 8
196 and
197 .Xr ifconfig 8 .
198 .It Fl m
199 Enable mobility support.
200 If this option is specified,
201 .Nm
202 sends probing packets to default routers that have advertised Router
203 Advertisements
204 when the node (re)attaches to an interface.
205 Moreover, if the option is specified,
206 .Nm
207 periodically sends Router Solicitation on an interface that does not support
208 .Dv SIOCGIFMEDIA
209 ioctl.
210 .It Fl 1
211 Perform only one probe.
212 Transmit Router Solicitation packets until at least one valid Router
213 Advertisement packet has arrived on each
214 .Ar interface ,
215 then exit.
216 .It Fl O Ar script-name
217 Specifies a supplement script file to handle the Other Configuration
218 flag of the router advertisement.
219 When the flag changes from FALSE to TRUE,
220 .Nm
221 will invoke
222 .Ar script-name
223 with a single argument of the receiving interface name,
224 expecting the script will then start a protocol for the other
225 configuration.
226 .Ar script-name
227 must be the absolute path from root to the script file, be a regular
228 file, and be created by the same owner who runs
229 .Nm .
230 .It Fl P Ar pidfile
231 Writes the process ID of
232 .Nm
233 to file instead of the default PID file
234 .Pa /var/run/rtsold.pid .
235 .It Fl R Ar script-name
236 Specifies a script to run when router advertisment options
237 .Dv RDNSS Pq Recursive DNS Server
238 or
239 .Dv DNSSL Pq DNS Search List
240 are encountered.  The information of DNS servers and DNS search domains
241 will be sent to standard input of this script.  The
242 .Xr resolvconf 8
243 script is used by default.
244 .El
245 .Sh FILES
246 .Bl -tag -width /var/run/rtsold.dump -compact
247 .It Pa /var/run/rtsold.pid
248 the pid of the currently running
249 .Nm .
250 .It Pa /var/run/rtsold.dump
251 dumps internal state on.
252 .El
253 .\"
254 .Sh EXIT STATUS
255 .Ex -std
256 .\"
257 .Sh SEE ALSO
258 .Xr resolvconf 8 ,
259 .Xr rtadvd 8 ,
260 .Xr sysctl 8
261 .\"
262 .Sh HISTORY
263 The
264 .Nm
265 command is based on the
266 .Nm rtsol
267 command, which first appeared in WIDE/KAME IPv6 protocol stack kit.
268 .Nm rtsol
269 is now integrated into
270 .Xr rtsold 8 .
271 .\"
272 .Sh BUGS
273 In some operating systems, when a PCMCIA network card is removed
274 and reinserted, the corresponding interface index is changed.
275 However,
276 .Nm
277 assumes such changes will not occur, and always uses the index that
278 it got at invocation.
279 As a result,
280 .Nm
281 may not work if you reinsert a network card.
282 In such a case,
283 .Nm
284 should be killed and restarted.
285 .Pp
286 The IPv6 autoconfiguration specification assumes a single-interface host.
287 You may see kernel error messages if you try to autoconfigure a host with
288 multiple interfaces.
289 Also, it seems contradictory for
290 .Nm
291 to accept multiple
292 .Ar interface
293 arguments.