RAD.CONF(5) | File Formats Manual | RAD.CONF(5)

# NAME

`rad.conf` — router advertisement daemon configuration file

# DESCRIPTION

The rad(8) daemon is an IPv6 router advertisement daemon.

The `rad.conf` config file is divided into the following main sections:

Macros
  Definitions of variables that can be used later, simplifying the configuration file.
Global configuration
  Global settings for rad(8). These are used as default values for `interface` definitions and can be overwritten in an `interface` block.
Interfaces
  rad(8) sends IPv6 router advertisement messages. This section defines on which interfaces to advertise prefix information and their associated parameters.

Additional configuration files can be included with the `include` keyword.

## Macros

A macro is defined with a command of the form name=value. The macro name can contain letters, digits, and underscores and cannot be a reserved word (for example, `interface`). Within unquoted arguments, the string $name is later expanded to value.

## Global configuration

The global configuration section sets defaults for router advertisement messages. These can be overwritten in interface blocks.

`default router` (`yes`|`no`)
  Act as a default router or not. The default is `yes`.
`dns` {option ...}
  Add a DNS router advertisement option to communicate network provided nameservers. In a `dns` block, a `search` option or at least one `nameserver` option is required, whereas specifying the `lifetime` is optional:
  `lifetime` seconds
    The number of seconds the dns options are valid after receiving a router advertisement message. The default is 1800 seconds.
  `nameserver` (address|{address ...})
    IPv6 address or list of IPv6 addresses of DNS name servers.
  `search` (domain|{domain ...})
    Domain or list of domains for the resolv.conf(5) search list.
`hop limit` hops
  Specify the diameter of the internet. The default is 0, meaning unspecified by this router.
`managed address configuration` (`yes`|`no`)
  If set to `yes`, indicate that stateless address configuration prefixes are not available and hosts should consult DHCPv6. The default is `no`.
`mtu` bytes
  The MTU option is used in Router Advertisement messages to ensure that all nodes on a link use the same MTU value in those cases where the link MTU is not well known. The default is 0, meaning unspecified by this router.
`nat64 prefix` prefix [{option ...}]
  Add a PREF64 router advertisement option to communicate prefixes used for Network Address and Protocol Translation from IPv6 to IPv4 (NAT64). If prefix is specified without a prefix length, its default is 64.

  `nat64 prefix` options are as follows:

  `lifetime` seconds
    The number of seconds the nat64 prefix option is valid after receiving a router advertisement message. A value of zero indicates to not use the prefix anymore. The maximum is 65528 seconds. The default is 1800 seconds.
`other configuration` (`yes`|`no`)
  If set to `yes`, hosts should consult DHCPv6 for additional configuration like NTP servers or DNS name servers. The default is `no`.
`router lifetime` seconds
  The number of seconds this router is a valid default router after receiving a router advertisement message. The default is 1800 seconds.
`router preference` (`high`|`medium`|`low`)
  Indicate whether to prefer this router over other default routers. The default is `medium`.
`reachable time` number
  The time, in milliseconds, that a node assumes a neighbor is reachable. The default is 0, meaning unspecified by this router. This option is ignored by slaacd(8) and cannot be set on OpenBSD IPv6 hosts.
`retrans timer` number
  The time, in milliseconds, between retransmitted Neighbor Solicitation messages. The default is 0, meaning unspecified by this router. This option is ignored by slaacd(8) and cannot be set on OpenBSD IPv6 hosts.
`source link-layer address` (`yes`|`no`)
  Add a source link-layer address option to router advertisement messages, to communicate the link-layer address of the sending interface. The default is `yes`.

## Interfaces

This section contains a list of interfaces or interface groups to send advertisements on. At least one `interface` is required.

`interface` name [{prefix ...}]
  Options set in the global section can be overwritten inside an interface block. In addition an interface block can contain a list of prefixes:

  [`no`] `auto prefix` [{option ...}]
  `prefix` prefix [{option ...}]
    The default is to discover prefixes to announce by inspecting the IPv6 addresses configured on an interface. This can be disabled with `no` `auto prefix`. If prefix is specified without a prefix length, its default is 64.

    `prefix` options are as follows:

    `autonomous address-configuration` (`yes`|`no`)
      This prefix can be used to generate IPv6 addresses. The default is `yes`.
    `on-link` (`yes`|`no`)
      This prefix is considered on-link. The default is `yes`.
    `preferred lifetime` seconds
      The preferred lifetime (pltime) in seconds for addresses generated from this prefix. The default is 2700. This option is ignored if the prefix is discovered from a network interface and it has a lower preferred lifetime.
    `valid lifetime` seconds
      The valid lifetime (vltime) in seconds for addresses generated from this prefix. The default is 5400. This option is ignored if the prefix is discovered from a network interface and it has a lower valid lifetime.

# FILES

/etc/rad.conf
  rad(8) configuration file.
/etc/examples/rad.conf
  Example configuration file.

# EXAMPLES

With the following example configuration, rad(8) will pick a prefix from the ix1 interface and send router advertisements on it:

`interface ix1`

# SEE ALSO

ractl(8), rad(8), rc.conf.local(8)

# HISTORY

The `rad.conf` file format first appeared in OpenBSD 6.4.

September 15, 2025 | Debian