radvd (8) - Linux Man Pages
radvd: router advertisement daemon for IPv6
NAMEradvd - router advertisement daemon for IPv6
SYNOPSISradvd [ -hsvc ] [ -d debuglevel ] [ -C configfile ] [ -p pidfile ] [ -m logmethod ] [ -l logfile ] [ -f facility ] [ -t chrootdir ] [ -u username ]
DESCRIPTIONradvd is the router advertisement daemon for IPv6. It listens to router solicitations and sends router advertisements as described in "Neighbor Discovery for IP Version 6 (IPv6)" (RFC 4861). With these advertisements hosts can automatically configure their addresses and some other parameters. They also can choose a default router based on these advertisements.
Note that if debugging is not enabled, radvd will not start if IPv6 forwarding is disabled. IPv6 forwarding can be controlled via sysctl(8), net.ipv6.conf.all.forwarding on Linux or net.inet6.ip6.forwarding on BSD.
Similarly, the configuration file must not be writable by others, and if non-root operation is requested, not even by self/own group.
For every one character option there is also a long option, which is listed right next to the "short" option name:
- -v, --version
- Displays the version of radvd and then aborts.
- -h, --help
- Displays a short usage description and then aborts.
- -s, --singleprocess
- On Linux if username is specified, privilege separation is enabled and there will be two processes. This option disables privilege separation, and as a result, the non-privileged radvd process does not have permissions to change interface configuration.
- -n, --nodaemon
- Prevent the daemonizing.
- -c, --configtest
- Test configuration and do startup tests and then exit.
- -d debuglevel, --debug debuglevel
- With this option you turn on debugging information. The debugging level is an integer in the range from 1 to 5, from quiet to very verbose. A debugging level of 0 completely turns off debugging. If a debugging level greater than 0 is used, radvd doesn't background itself on start. The default debugging level is 0.
- -C configfile, --config configfile
- Specifies an alternate config file. Normally the compiled in default /etc/radvd.conf is used.
- -p pidfile, --pidfile pidfile
- Specifies an alternate pidfile. Normally the compiled in default /var/run/radvd/radvd.pid is used.
- -m method, --logmethod method
Specifies the logging method to use. Possibly values are:
- Completely disables any logging.
- Logs to the logfile which is specified by the -l option. If no logfile is specified on the command line, then a compiled in default is used (see next option).
- Logs to standard error.
- Logs only the high messages (of at least LOG_ERR priority) to standard error, and everything to syslog (default method).
- Logs to syslog.
- -l logfile, --logfile logfile
- Specifies the logfile to use when using the logging method logfile. The default logfile is /var/log/radvd.log.
- -f facility, --facility facility
- Specifies the facility (as an integer) when using syslog logging. Default is LOG_DAEMON.
- -t chrootdir, --chrootdir chrootdir
If specified, switches to
before doing anything else. This directory and its
subdirectories must have been populated first.
For security reasons,
must always be used when using
Note that on Linux radvd requires access to the /proc filesystem, so it is more challenging to set up the chroot environment.
- -u username, --username username
- If specified, drops root privileges and changes user ID to username and group ID to the primary group of username. This is recommended for security reasons. You might also need to use -p to point to a file in a username -writable directory (e.g. /var/run/radvd/radvd.pid).
/usr/sbin/radvd /etc/radvd.conf /var/run/radvd/radvd.pid /var/log/radvd.log
There certainly are some bugs. If you find them or have other suggestions please contact Reuben Hawkins <reubenhwk [at] gmail.com>.
Pedro Roque <roque [at] di.fc.ul.pt> - wrote first version for Linux Lars Fenneberg <lf [at] elemental.net> - previous maintainer Nathan Lutchansky <lutchann [at] litech.org> - previous maintainer Reuben Hawkins <reubenhwk [at] gmail.com> - current maintainer Craig Metz <cmetz [at] inner.net> - port to NRL's IPv6 code for BSD4.4 Marko Myllynen <myllynen [at] lut.fi> - RFC 2461 update, Mobile IPv6 support Jim Paris <jim [at] jtan.com> - Privilege separation support Reuben Hawkins <reubenhwk [at] gmail.com> - Many fixes and cleanups Pierre Ossman <pierre [at] ossman.eu> - RFC6106 (DNSSL) support