Skip to content


Subversion checkout URL

You can clone with
Download ZIP
radvd git mirror
C Groff Bison HTML Shell
Latest commit 1d8973e @reubenhwk device-linux.c: IEEE 802.15.4 musl libc fix
The ARPHRD_IEEE802154 macro's definition and name have been recently
moved around from kernel header to glibc headers.  Include linux/if_arp.h
if available and then use either ARPHRD_IEEE802154_MONITOR or ARPHRD_IEEE802154_PHY,
whichever comes first.
Failed to load latest commit information.
contrib add contrib/
redhat use -no-strict-aliasing
test test/check.c: fix -t command line option
.gitignore gitignore: libradvd-parser.c
CHANGES update CHANGES and version to v2.11
COPYRIGHT *** empty log message ***
INTRO.html two typos add --with-check to packages target
README README: remove note about libdaemon
TODO Update TODO and CHANGES for 2.0 fix a few errors on FreeBSD device-linux.c: IEEE 802.15.4 musl libc fix
copyright.blurb replaced with
defaults.h defaults.h: remaining lifetime RFC 4862 fix
device-bsd44.c remove set autoconf=0 code
device-common.c logging cleanup
device-linux.c device-linux.c: IEEE 802.15.4 musl libc fix
gram.y gram.y: ensure prefix in T_Deprecate* rule
includes.h device-linux.c: IEEE 802.15.4 musl libc fix
interface.c interface.c: fix a comment
log.c log.c: use static where appropriate
log.h loc.c: char * -> char const * where appropriate
netlink.c netlink.c: recognize new interfaces coming up
netlink.h code cleanup and reorganization
pathnames.h pathnames.h: add SYSCTL_IP6_AUTOCONFIG
privsep-linux.c remove set autoconf=0 code
process.c process.c: AstLinux cable plugin patch from Lonnie remove not regarding sysctl
radvd.c sort some function decls fix spelling error in
radvd.conf.example Support RFC 6106 by adding DNS search list option.
radvd.h netlink.c: recognize new interfaces coming up replaced with
radvdump.c radvdump: show routes with prefixlen > 64
recv.c Fix build on FreeBSD
scanner.l revert bison locations
send.c send.c: seconds/miliseconds comparison fix
socket.c use C99 (int[]){x} anonymous arrays in setsockopt
timer.c radvd.h: further factoring of struct Interface
util.c move unit code tests to the test folder



Run configure, e.g.

./configure --prefix=/usr/local --sysconfdir=/etc --mandir=/usr/share/man

See configure --help for additional command line arguments.

Run 'make' and 'make install'.  On BSD, you may need to use 'gmake'.


See INTRO.html, radvd.conf(8) and radvd.conf.example.

Frequently Asked Questions:

Setting up radvd is very simple, so the most frequently asked
questions have been about what radvd _doesn't_ do...

 1. How do I set up the router running radvd to automatically
    configure an address from the prefix advertised in Route
    Advertisements from upstream?

    -- You don't.  By the specification, routers ignore RAs.
    You'll probably need to use manual configuration.  But you
    can't use the same prefix on two links in any case unless you
    use something like proxy-ND (draft-ietf-ipv6-ndproxy-04.txt).
    You may need to re-think your topology; prefix delegation
    (e.g., manually or with RFC3633) may help.

 2. How do I set up the router running radvd to automatically
    configure the interfaces to use an EUI64-based address?

    -- You don't.  The design philosophy of radvd is that it's
    not the _router's_ configuration tool, but a route advertising
    daemon.  You'll need to set up all the addresses, routes, etc.
    yourself.  These tasks are something that system initscripts
    could possibly do instead.

 3. I have a dynamic /48 prefix.  How do I set up radvd to:
    a) set up interface addresses and routes on downstream
       interfaces, and
    b) advertise /64 prefixes from the /48 on downstream interfaces?

    -- For a), this isn't supported. For b), radvd includes special
    support for 6to4 upstream interface but assumes that the interface
    addresses/routes are set up manually.  This should probably
    be done in the initscripts or manually. (Though if someone were
    to send a patch for b), it might be incorporated.)  

 4. How do I set up radvd to do either unicast or multicast routing?

    -- You don't.  Radvd is not a routing or forwarding daemon.
    You need to set any appropriate routing/forwarding first,
    and then radvd to only advertise the prefixes to hosts as
Something went wrong with that request. Please try again.