Router Advertisement Daemon
radvd (Router Advertisement Daemon) is a simple Linux/UNIX daemon capable of providing stateless IPv6 address auto-configuration, a default route and, optionally, DNS, to a local network. A
/64 subnet is required to use radvd.
radvd is available in the repositories of all the big GNU/Linux distributions and the package is named
radvd on all of them (
apt-get install radvd or
yum install radvd or <code< dnf install radvd or
emerge radvd or
pacman -S radvd depending on distribution).
radvd is configured using
radvd should be configured to advertise a
/64 prefix to a local network. You will need a
/64 subnet for each network interface on a router with several local networks or VLANs. You simply can't use anything smaller like a
/96 for IPv6 stateless auto-configuration.
A very basic bare-bones example that will let devices connected to a network interface called
br0 can look like:
The above example does not advertise DNS servers. radvd will advertise DNS servers to the local network if DNS servers are set by
The example below includes a
RDNSS and several other options that assume your IPv6 prefix is fixed and will not be changing any time soon.
MaxRtrAdvInterval configure, in seconds, how frequently radvd sends route advertisements.
AdvDefaultLifetime tells clients how long they can expect an advertised route to be valid. 9000 (18.2 hours) is the maximum you can configure.
AdvDefaultPreference can be low, medium or high. It does not make any difference when you are the only router on the network.
The Linux kernel supports state-less auto-configuration. Linux machines and Android devices will simply configure a IP address and the default route with no user intervention (as long as
1, which is the default).
There is a chance Linux clients will NOT auto-configure DNS servers provided by radvd. NetworkManager can do it. The very small tool called rdnssd client computers can use to auto-configure DNS servers provided by radvd.
RDNSS option needs to have a details section even if it is empty (
The prefix must be /64
It must be noted that the prefix must be /64. This is because 64 bits are used to generate the last part of the address using the network cards ID (you can't announce a /48 or /80 prefix with radvd).
How to get it
How to configure it