xref: /netbsd/usr.sbin/rtsold/rtsold.8 (revision c4a72b64)
1.\"	$NetBSD: rtsold.8,v 1.16 2002/10/24 16:22:49 wiz Exp $
2.\"	$KAME: rtsold.8,v 1.17 2001/07/09 22:30:37 itojun Exp $
3.\"
4.\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
5.\" All rights reserved.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\" 3. Neither the name of the project nor the names of its contributors
16.\"    may be used to endorse or promote products derived from this software
17.\"    without specific prior written permission.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.Dd May 17, 1998
32.Dt RTSOLD 8
33.Os
34.\"
35.Sh NAME
36.Nm rtsold
37.Nd router solicitation daemon
38.\"
39.Sh SYNOPSIS
40.Nm rtsold
41.Op Fl dDfm1
42.Ar interface ...
43.Nm rtsold
44.Op Fl dDfm1
45.Fl a
46.Nm rtsol
47.Op Fl dD
48.Ar interface ...
49.Nm rtsol
50.Op Fl dD
51.Fl a
52.\"
53.Sh DESCRIPTION
54.Nm
55is the daemon program to send ICMPv6 Router Solicitation messages
56on the specified interfaces.
57If a node (re)attaches to a link,
58.Nm
59sends some Router Solicitations on the link destined to the link-local scope
60all-routers multicast address to discover new routers
61and to get non link-local addresses.
62.Pp
63.Nm
64should be used on IPv6 hosts
65.Pq non-router nodes
66only.
67.Pp
68If you invoke the program as
69.Nm rtsol ,
70it will transmit probes from the specified
71.Ar interface ,
72without becoming a daemon.
73In other words,
74.Nm rtsol
75behaves as
76.Do
77.Nm
78.Fl f1
79.Ar interfaces
80.Dc .
81.Pp
82Specifically,
83.Nm
84sends at most 3 Router Solicitations on an interface
85after one of the following events:
86.Pp
87.Bl -bullet -compact
88.It
89Just after invocation of
90.Nm
91daemon.
92.It
93The interface is up after a temporary interface failure.
94.Nm
95detects such failures by periodically probing to see if the status
96of the interface is active or not.
97Note that some network cards and drivers do not allow the extraction
98of link state.
99In such cases,
100.Nm
101cannot detect the change of the interface status.
102.It
103Every 60 seconds if the
104.Fl m
105option is specified and the
106.Nm
107daemon cannot get the interface status.
108This feature does not conform to the IPv6 neighbor discovery
109specification, but is provided for mobile stations.
110The default interval for router advertisements, which is on the order of 10
111minutes, is slightly long for mobile stations.
112This feature is provided
113for such stations so that they can find new routers as soon as possible
114when they attach to another link.
115.El
116.Lp
117Once
118.Nm
119has sent a Router Solicitation, and has received a valid Router Advertisement,
120it refrains from sending additional solicitations on that interface, until
121the next time one of the above events occurs.
122.Lp
123When sending a Router Solicitation on an interface,
124.Nm
125includes a Source Link-layer address option if the interface
126has a link-layer address.
127.Pp
128Upon receipt of signal
129.Dv SIGUSR1 ,
130.Nm
131will dump the current internal state into
132.Pa /var/run/rtsold.dump .
133Also note that
134.Nm
135will not be able to update the kernel routing tables unless
136.Xr sysctl 8
137reports that
138net.inet6.ip6.accept_rtadv=1.
139.\"
140.Pp
141The options are as follows:
142.Bl -tag -width indent
143.It Fl a
144Autoprobe outgoing interface.
145.Nm
146will try to find a non-loopback, non-point-to-point, IPv6-capable interface.
147If
148.Nm
149finds multiple interfaces,
150.Nm
151will exit with error.
152.\"
153.It Fl d
154Enable debugging.
155.It Fl D
156Enable more debugging including the printing of internal timer information.
157.It Fl f
158.Fl f
159prevents
160.Nm
161from becoming a daemon (foreground mode).
162Warning messages are generated to standard error
163instead of
164.Xr syslog 3 .
165.It Fl m
166Enable mobility support.
167If this option is specified,
168.Nm
169sends probing packets to default routers that have advertised Router
170Advertisements
171when the node (re)attaches to an interface.
172Moreover, if the option is specified,
173.Nm
174periodically sends Router Solicitation on an interface that does not support
175.Dv SIOCGIFMEDIA
176ioctl.
177.It Fl 1
178Perform only one probe.
179Transmit Router Solicitation packets until at least one valid Router
180Advertisement packet has arrived on each
181.Ar interface ,
182then exit.
183.El
184.Sh EXIT STATUS
185The
186.Nm
187program exits 0 on success, and \*[Gt]0 on failures.
188.\"
189.Sh FILES
190.Bl -tag -width /var/run/rtsold.dump -compact
191.It Pa /var/run/rtsold.pid
192the pid of the currently running
193.Nm rtsold .
194.It Pa /var/run/rtsold.dump
195dumps internal state on.
196.El
197.\"
198.Sh SEE ALSO
199.Xr rtadvd 8 ,
200.Xr sysctl 8
201.\"
202.Sh HISTORY
203The
204.Nm
205command is based on the
206.Nm rtsol
207command, which first appeared in WIDE/KAME IPv6 protocol stack kit.
208.Nm rtsol
209is now integrated into
210.Nm "" .
211.\"
212.Sh BUGS
213In some operating systems, when a PCMCIA network card is removed
214and reinserted, the corresponding interface index is changed.
215However,
216.Nm
217assumes such changes will not occur, and always uses the index that
218it got at invocation. As a result,
219.Nm
220may not work if you reinsert a network card.
221In such a case,
222.Nm
223should be killed and restarted.
224.Pp
225The IPv6 autoconfiguration specification assumes a single-interface host.
226You may see kernel error messages if you try to autoconfigure a host with
227multiple interfaces.
228Also, it seems contradictory for
229.Nm
230to accept multiple
231.Ar interface
232arguments.
233