NAME
rtsold
—
router solicitation daemon
SYNOPSIS
rtsold |
[-1DdFfm ] [-O
script-name] interface
... |
rtsold |
[-1DdFfm ] -a |
rtsol |
[-DdF ] [-O
script-name] interface
... |
rtsol |
[-DdF ] -a |
DESCRIPTION
rtsold
is the daemon program to send
ICMPv6 Router Solicitation messages on the specified interfaces. If a node
(re)attaches to a link, rtsold
sends some Router
Solicitations on the link destined to the link-local scope all-routers
multicast address to discover new routers and to get non link-local
addresses.
rtsold
should be used on IPv6 hosts
(non-router nodes) only. The net.inet6.ip6.forwarding
sysctl(8) should be set to zero and the
net.inet6.ip6.accept_rtadv and
net.inet6.icmp6.rediraccept
sysctl(8) should be set to a non-zero value (see also the
-F
option below).
If you invoke the program as rtsol
, it
will transmit probes from the specified interface,
without becoming a daemon. In other words, rtsol
behaves as “rtsold -f1 interface ...”.
An interface may be configured at boot to be brought up using
rtsol
via a
hostname.if(5) file. See that man page for more
information.
rtsold
sends at most 3 Router
Solicitations on an interface after one of the following events:
- Just after invocation of
rtsold
daemon. - The interface is up after a temporary interface failure.
rtsold
detects such failures by periodically probing to see if the status of the interface is active or not. Note that some network cards and drivers do not allow the extraction of link state. In such cases,rtsold
cannot detect the change of the interface status. - Every 60 seconds if the
-m
option is specified and thertsold
daemon cannot get the interface status. This feature does not conform to the IPv6 neighbor discovery specification, but is provided for mobile stations. The default interval for router advertisements, which is on the order of 10 minutes, is slightly long for mobile stations. This feature is provided for such stations so that they can find new routers as soon as possible when they attach to another link.
Once rtsold
has sent a Router
Solicitation, and has received a valid Router Advertisement, it refrains
from sending additional solicitations on that interface, until the next time
one of the above events occurs.
When sending a Router Solicitation on an interface,
rtsold
includes a Source Link-layer address option
if the interface has a link-layer address.
rtsold
is able to do some additional
configuration for interfaces where more than setting the host's address is
needed. When the daemon receives a router advertisement with the
“Other Configuration” flag set, the script specified using the
-O
option is run.
Upon receipt of signal SIGUSR1
,
rtsold
will dump the current internal state into
/var/run/rtsold.dump.
The options are as follows:
-1
- Perform only one probe. Transmit Router Solicitation packets until at least one valid Router Advertisement packet has arrived on each interface, then exit.
-a
- Autoprobe outgoing interface.
rtsold
will try to find a non-loopback, non-point-to-point, IPv6-capable interface. Ifrtsold
finds multiple interfaces,rtsold
will exit with error. -D
- Enable more debugging (than that offered by the
-d
option) including the printing of internal timer information. -d
- Enable debugging.
-F
- Automatically set the
sysctl(8) variables relating to
rtsold
(see above). Without this option,rtsold
will obey the current sysctl(8) settings. -f
- This option prevents
rtsold
from becoming a daemon (foreground mode). Warning messages are generated to standard error instead of syslog(3). -m
- Enable mobility support. If this option is specified,
rtsold
sends probing packets to default routers that have advertised Router Advertisements when the node (re)attaches to an interface. Moreover, if the option is specified,rtsold
periodically sends Router Solicitation on an interface that does not supportSIOCGIFMEDIA
ioctl. -O
script-name- Specifies a script to handle the Other Configuration flag of the router
advertisement (see above). script-name is invoked
with a single argument of the receiving interface name, expecting the
script will then start a protocol to provide additional configuration.
script-name should be specified as the absolute path
from root to the script file, and the file itself should be a regular file
and owned by the same user running
rtsold
.
FILES
- /var/run/rtsold.dump
- Internal state dump file.
EXIT STATUS
The rtsold
utility exits 0 on
success, and >0 if an error occurs.
SEE ALSO
HISTORY
The rtsold
command is based on the
rtsol
command, which first appeared in WIDE/KAME
IPv6 protocol stack kit. rtsol
is now integrated
into rtsold
.
BUGS
In some operating systems, when a PCMCIA network card is removed
and reinserted, the corresponding interface index is changed. However,
rtsold
assumes such changes will not occur, and
always uses the index that it got at invocation. As a result,
rtsold
may not work if you reinsert a network card.
In such a case, rtsold
should be killed and
restarted.
The IPv6 autoconfiguration specification assumes a
single-interface host. You may see kernel error messages if you try to
autoconfigure a host with multiple interfaces. Also, it seems contradictory
for rtsold
to accept multiple
interface arguments.