(→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> | ||
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 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
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
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
The daemon can be started by simply running:
radvd
The link below contains a bzip2 tarball of the radvd binaries compiled for ARM :