User Tools

Site Tools

This wiki is read only and for archival purposes only. >>>>>>>>>> Please use the new OpenWrt wiki at <<<<<<<<<<

Table of Contents

6relayd IPv6 server and relay configuration

:!: 6relayd is deprecated since r40893

:!: use odhcpd

The /etc/config/6relayd configures the 6relayd IPv6 server & relay.

6relayd is a daemon for serving and relaying IPv6 management protocols to configure clients and downstream routers.

6relayd provides server services for RA, stateless and stateful DHCPv6, DHCPv6-PD and can be used to relay RA, DHCPv6 and NDP between routed (non-bridged) interfaces in case no delegated prefixes are provided by the upstream router.


Example #1: Provide Router Discovery and DHCPv6 in server mode and fallback to relaying if there is no public prefix on the master interface.

config server option network 'lan guest' option rd 'server' option dhcpv6 'server' # Remove the 2 following lines to disable fallback-mode option master 'wan6' option fallback_relay 'rd dhcpv6 ndp'

Example #2: Create a relay for several networks (here wan6 and lan) in proxy mode. This can be used to proxy Router Discovery, DHCPv6 and NDP.

config server option master 'wan6' option network 'lan' option rd 'relay' option dhcpv6 'relay' option ndp 'relay'

Example #3: Create a static IPv6 lease while running in management_level 1 or 2.

config lease option duid '0001000115c4599a4b5b3a5a21d9' option id '1234'


Each section of type server defines an instance of 6relayd that will be run.
Each section of type lease defines an assigned static lease while running in management_level 1 or 2.

Services of 6relayd can be used in two modes:

  • server if you want to use 6relayd to only announce the router and / or use it as a DHCPv6 server.
  • relay for all other use cases (e.g. relaying between different interfaces, proxying NDP, acting as a DHCPv6 relay, …).
Name Values Required Default Description
master 1 <logical interface> yes, if services in relay-mode are present Specifies the network which is used as master for relaying
network 1 or more <logical interface> yes Specifies the network on which the 6relayd instance should provide services (first network is master, if section type is relay)
rd [relay,server] no Router Discovery mode of operation (empty = disabled)
dhcpv6 [relay,server] no DHCPv6 mode of operation (empty = disabled)
ndp [relay] no NDP-Proxy mode of operation (empty = disabled)
compat_ula [0,1] no 0 Ensure compatbility with broken devices and deprecate ULA if public prefixes are available.
fallback_relay 1 or more [rd,dhcpv6,ndp] no Services to relay as fallback if there is no public prefix on the wan interface available
always_rewrite_dns [0,1] no 0 Define whether the RD- and DHCPv6-relay will always announce the DNS on the router itself instead of the one provided from the upstream router
rewrite_dns_addr <IPv6-address> no Override the announced DNS-server with the specified address
always_assume_default [0,1] no 0 Define whether the RD-server will assume that IPv6 connectivity is present even if no public addresses are announced.
management_level [0,1,2] no 0 Define DHCPv6 mode. 0: stateless (no M-flag, A-flags set), 1: hybrid (M-Flag and A-flags set), 2: stateful (M-Flag set, A-Flags unset).
management_offlink [0,1] no 0 Announce prefixes as off-link (L-flags unset).
management_preference [medium,low,high] no medium Preference value announced for default router and routes.

A section of type lease assigns the client with the given duid adresses from every available prefix with the interface id ::1234/128. The pool for non-static leases is ::100-::fff. The leasefile can be found at /tmp/hosts/6relayd for getting duids, hostnames, etc.

Name Values Description
duid hexadecimal The device unique identifier.
id hexadecimal (up to 8 chars) The id for this lease, e.g. 1234.
doc/uci/6relayd.txt · Last modified: 2014/07/15 13:49 by theoradicus