radvd git mirror
C Roff Shell Yacc M4 Makefile Other
robbat2 Merge pull request #94 from bluca/tunnel
No router advertisements on tunnel interfaces
Latest commit 849f69c Jun 20, 2018
Permalink
Failed to load latest commit information.
contrib Updated radvd-gen for speed, fix a few errors Mar 23, 2018
redhat use -no-strict-aliasing Dec 21, 2013
test test/send.c: fix output to match big-endian (and network-order) platf… Dec 7, 2017
.clang-format add .clang-format Feb 4, 2017
.gitignore gitignore: libradvd-parser.c Jun 4, 2014
CHANGES Allow quoted strings in config. Dec 22, 2017
COPYRIGHT *** empty log message *** Nov 26, 2000
INTRO.html two typos Mar 17, 2015
Makefile.am add .clang-format Feb 4, 2017
README README: remove note about libdaemon Aug 3, 2014
TODO AdvRASolicitedUnicast: unicast RA response to RS. Mar 19, 2017
autogen.sh fix a few errors on FreeBSD Aug 4, 2014
configure.ac release v2.17 Jul 4, 2017
copyright.blurb replaced pekkas@netcore.fi with reubenhwk@gmail.com Nov 20, 2012
defaults.h AdvRASolicitedUnicast: unicast RA response to RS. Mar 19, 2017
device-bsd44.c Check forwarding on interface Feb 18, 2018
device-common.c No router advertisements on tunnel interfaces Jun 18, 2018
device-linux.c Check forwarding on interface Feb 18, 2018
gram.y Drop unused variable Apr 6, 2018
includes.h Do not use if_arp from glibc if one from linux is usable Apr 4, 2017
interface.c Check forwarding on interface Feb 18, 2018
log.c Write to stderr in non-daemonized mode Jun 12, 2018
log.h Write to stderr in non-daemonized mode Jun 12, 2018
netlink.c clang-format the code Feb 4, 2017
netlink.h clang-format the code Feb 4, 2017
pathnames.h Check forwarding on interface Feb 18, 2018
privsep-linux.c clang-format the code Feb 4, 2017
process.c AdvRASolicitedUnicast: unicast RA response to RS. Mar 19, 2017
radvd.8.man Add nodaemon option to the manpage Jun 12, 2018
radvd.c Write to stderr in non-daemonized mode Jun 12, 2018
radvd.conf.5.man AdvRASolicitedUnicast: unicast RA response to RS. Mar 19, 2017
radvd.conf.example when daemonizing, always close std[in|out|err] Jul 2, 2017
radvd.h Check forwarding on interface Feb 18, 2018
radvd.service.in fixed ExecReload to be used twice, instead of old definition wrongly … Jan 10, 2017
radvdump.8.man replaced pekkas@netcore.fi with reubenhwk@gmail.com Nov 20, 2012
radvdump.c clang-format the code Feb 4, 2017
recv.c clang-format the code Feb 4, 2017
scanner.l Allow quoted strings in config. Dec 22, 2017
send.c Use %zd format specifier for size_t Apr 16, 2018
socket.c use C99 (int[]){x} anonymous arrays in setsockopt Aug 3, 2014
timer.c radvd.h: further factoring of struct Interface Jun 28, 2014
util.c clang-format the code Feb 4, 2017

README

Installation:
=============

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'.

Configuration:
==============

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
    appropriate.