rdnssd - Man Page

IPv6 Recursive DNS Server discovery Daemon

Synopsis

rdnssd [-f] [-H merge-hook] [-r resolv-file] [-p pidfile] [-u username]

Descripton

rdnssd is a daemon program providing client-side support for DNS configuration using the Recursive DNS Server (RDNSS) option, as described in RFC 5006. Its purpose is to supply IPv6 DNS resolvers through stateless autoconfiguration, carried by Router Advertisements.

rdnssd parses RDNSS options and keeps track of resolvers to write nameservers entries to a resolv.conf(5) configuration file. By default, it writes its own separate file, and may call an external hook to merge it with the main /etc/resolv.conf. This is aimed at easing coexistence with concurrent daemons, especially IPv4 ones, updating /etc/resolv.conf too.

On Linux, since version 2.6.24, rdnssd takes advantage of a new netlink interface, forwarding RDNSS options validated by the kernel to userland. Otherwise, it merely listens to all ICMPv6 traffic through a raw socket.

Options

-f or --foreground

Do not detach from the console. Run the program in the foreground.

-H merge-hook or --merge-hook merge-hook

Execute this hook whenever resolv.conf is updated. If this option is not specified, then no hook will be called.

-h or --help

Display some help and exit.

-p pidfile or --pidfile pidfile

Override the location of the pidfile.

-r resolv-file or --resolv-file resolv-file

Set the path to the generated resolv.conf file.

-u username or --user username

Override the user that the program will run as. By default, it runs as nobody.

-V or --version

Display program version and license and exit.

Files

/etc/rdnssd/merge-hook

A basic merge hook shipped with rdnssd, to be called with the -H option.

/var/run/rdnssd/resolv.conf

The default resolv.conf(5) file that rdnssd writes its configuration to.

/var/run/rdnssd.pid

The process-id file.

Bugs

rdnssd does not keep track of the lifetimes of the routers associated with some DNS resolvers, whereas it should to strictly comply with RFC 5006.

When rdnssd uses a raw socket instead of the netlink kernel interface, it does not validate received Neighbor Discovery traffic in any way. For example, it will always consider Router Advertisement packets, whereas it should not if the host is configured as a router. When the netlink interface is used, such validation is done by the kernel.

See Also

resolv.conf(5), rdisc6(8), ipv6(7)

Author

Pierre Ynard <linkfanel at yahoo.fr>

http://www.remlab.net/ndisc6/

Referenced By

netplan(5).

System Manager's Manual