(libdaemon)
(Added details on configuration)
Line 1: Line 1:
 +
=== Radvd - IPv6 Router Advertisement Daemon ===
 +
 +
The IPv6 Router Advertisement Daemon (radvd) periodically sends router advertisement (RA) messages to a local ethernet LAN advertising among other things, the IPv6 prefix and router address.
  
 
== libdaemon ==
 
== libdaemon ==
Line 35: Line 38:
 
make
 
make
 
make install DESTDIR=/home/export/rootfs
 
make install DESTDIR=/home/export/rootfs
 +
</PRE>
 +
 +
== Configuration ==
 +
 +
A default /etc/radvd.conf file is shown below advertising an address prefix provided by Internode.
 +
 +
<pre>
 +
interface eth0 {
 +
AdvSendAdvert on;
 +
MinRtrAdvInterval 3;
 +
MaxRtrAdvInterval 10;
 +
prefix 2003:44b9:4219:6400::/64 {
 +
AdvOnLink on;
 +
AdvAutonomous on;
 +
};
 +
};
 +
</pre>
 +
 +
Options
 +
 +
* AdvSendAdvert: Enable router to send periodic router advertisements and respond to router solicitations.
 +
* MinRtrAdvInterval: Minimum time between sending unsolicited multicast router advertisements (seconds)
 +
* MaxRtrAdvInterval: Maximum time between sending unsolicited multicast router advertisements (seconds). Must be no greater than 1800 seconds (30 Minutes)
 +
* Prefix: Prefix Definition
 +
** AdvOnLink: Indicates if prefix can be used for on-link determination.
 +
** AdvAutonomous: When set, indicates that this prefix can be used for autonomous address configuration as specified in RFC 4862.
 +
** AdvRouterAddr: When set, indicates that the address of interface is sent instead of network prefix
 +
 +
The daemon can be started by simply running:
 +
 +
<PRE>
 +
radvd
 
</PRE>
 
</PRE>
  

Revision as of 09:26, 12 July 2014

Radvd - IPv6 Router Advertisement Daemon

The IPv6 Router Advertisement Daemon (radvd) periodically sends router advertisement (RA) messages to a local ethernet LAN advertising among other things, the IPv6 prefix and router address.

libdaemon

Libdaemon is a dependancy for radvd.

Download libdaemon and cross compile for ARM assuming your ARM cross compiler is located at /opt/arm-2011.09/

wget http://0pointer.de/lennart/projects/libdaemon/libdaemon-0.14.tar.gz
tar -xzf libdaemon-0.14.tar.gz
cd libdaemon-0.14
./configure --host=arm-linux-gnueabi \
            --prefix=/usr/arm-linux-gnueabi \   
            ac_cv_func_setpgrp_void=yes
make
make install

Now copy libdaemon.so.0.5.0 to your target and update the dynamic linker run-time bindings with ldconfig:

cp /usr/arm-linux-gnueabi/lib/libdaemon.so.0.5.0 /home/export/rootfs/lib

Cross Compiling Radvd for ARM

wget http://www.litech.org/radvd/dist/radvd-1.14.tar.gz
tar -xzf radvd-1.14.tar.gz
cd radvd-1.14
./configure --prefix= \
            --host=arm-linux-gnueabi \
            --sysconfdir=/etc \
            PKG_CONFIG_PATH=/home/temp/radvd/lib/pkgconfig
make
make install DESTDIR=/home/export/rootfs

Configuration

A default /etc/radvd.conf file is shown below advertising an address prefix provided by Internode.

interface eth0 {
	AdvSendAdvert on;
	MinRtrAdvInterval 3;
	MaxRtrAdvInterval 10;
	prefix 2003:44b9:4219:6400::/64 {
		AdvOnLink on;
		AdvAutonomous on;
	};
};

Options

  • AdvSendAdvert: Enable router to send periodic router advertisements and respond to router solicitations.
  • MinRtrAdvInterval: Minimum time between sending unsolicited multicast router advertisements (seconds)
  • MaxRtrAdvInterval: Maximum time between sending unsolicited multicast router advertisements (seconds). Must be no greater than 1800 seconds (30 Minutes)
  • Prefix: Prefix Definition
    • AdvOnLink: Indicates if prefix can be used for on-link determination.
    • AdvAutonomous: When set, indicates that this prefix can be used for autonomous address configuration as specified in RFC 4862.
    • AdvRouterAddr: When set, indicates that the address of interface is sent instead of network prefix

The daemon can be started by simply running:

radvd

Download Pre-built Binaries

The link below contains a bzip2 tarball of the radvd binaries compiled for ARM :

  • Built using:
    • Libdaemon-0.14
    • radvd-1.10.0
    • arm-linux-gnueabi-gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-1ubuntu1)