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