Skip to content
radvd git mirror
C Groff Yacc Lex HTML Shell Perl
Latest commit c2a7664 @reubenhwk update to version 2.12
Failed to load latest commit information.
contrib add contrib/
redhat use -no-strict-aliasing
test test/check.c: fix -t command line option
CHANGES update to version 2.12
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 update to version 2.12
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: deprecate abro prefix length
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: fixup ugly overflow check remove not regarding sysctl
radvd.c sort some function decls minor fixup to 'client' option
radvd.conf.example Support RFC 6106 by adding DNS search list option.
radvd.h netlink.c: recognize new interfaces coming up replaced with
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.