Router solicitation daemon
Syntax:
rtsold [-dDfFmu1] [-O script-name] [-p pidfile] [-R script-name] interface ...
rtsold [-dDfFmu1] [-O script-name] [-p pidfile] [-R script-name] -a
rtsold [-dDu] [-O script-name] [-R script-name] interface ...
rtsold [-dDu] [-O script-name] [-R script-name] -a
Options:
- -1
- Perform only one probe.
Send Router Solicitation packets until valid Router Advertisement packets arrive from all the interfaces, then exit.
- -a
- Autoprobe the outgoing interface.
The rtsold daemon tries to find a non-loopback, non-point-to-point, IPv6-capable interface.
If it finds multiple interfaces, rtsold exits with an error.
- -D
- Increase the debugging level. Also print internal timer information.
- -d
- Enable debugging.
- -F
- Explicitly configure the system to accept Router Advertisements and disable IPv6 forwarding.
These settings are required for proper rtsold operation.
Without this option, the current settings are obeyed; if they're incompatible with proper operation,
warning messages are generated, but Router Solicitations are still sent.
You can manually change the settings with
sysctl
and
ifconfig.
- -f
- Prevent rtsold from becoming a daemon (foreground mode).
Warning messages are generated to standard error output, instead of syslog().
- -m
- Enable mobility support;
send probing packets to the default routers that advertised
Router Advertisements when the node (re)attached to an interface.
Periodically send Router Solicitation on an interface that doesn't support the
SIOCGIFMEDIA ioctl() command.
- -O script-name
- (Oh) Specify a supplement script file to handle the Other Configuration flag of the router advertisement.
When the flag changes from FALSE to TRUE, rtsold invokes script-name
with a single argument of the receiving interface name, expecting the script
will then start a protocol for the other configuration.
The script-name must be the absolute path from root to the script
file, be a regular file, and be created by the same owner who runs rtsold.
- -p pidfile
- Write the process ID of rtsold to pidfile instead of to the default
PID file, /var/run/rtsold.pid.
- -R script-name
- Specify a script to run when router advertisment options RDNSS (Recursive DNS Server)
or DNSSL (DNS Search List) are encountered.
The information of DNS servers and DNS search domains is sent to standard input of this script.
The
resolv.conf
script is used by default.
- -u
- Specify whether to add the source address of Router Advertisement messages to the interface name
in an argument of the RDNSS and DNSSL script:
- If you specify -u, the interface name in the script argument
is ifname:slaac:[RA-source-address].
- If you don't, the name is ifname:slaac.
- interface
- The name of the interface(s) where messages are to be sent.
Description:
The rtsold daemon sends 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.
If you use rtsol, probes are transmitted from the interface specified,
without becoming a daemon.
It behaves the same as:
rtsold -f1 interface
The rtsold daemon sends at most three Router Solicitations on an interface
after one of the following events:
- Just after the rtsold daemon has started.
- The interface is up after a temporary interface failure.
Failures are detected by rtsold by periodically probing the status of the interface.
Some network cards and drivers don't allow the extraction of the link state.
In these cases, rtsold won't be able to detect a change in the status.
- Every 60 seconds, if -m is specified and rtsold can't get the interface status.
This feature doesn't conform to 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 sends a Router Solicitation, and receives 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 its link-layer address.
When a SIGUSR1 signal is received,
rtsold dumps the current internal state into /var/run/rtsold.dump.
Files:
- /var/run/rtsold.pid
- The pid of the currently running rtsold.
- /var/run/rtsold.dump
- Dump of the current internal state.
Exit status:
- 0
- Successful completion.
- Nonzero
- An error occurred.
Caveats:
Before this utility will work, you need to enable the TCP/IP stack to accept route advertisements, like this:
sysctl -w net.inet6.ip6.accept_rtadv=1