IN.NDPD(8) Maintenance Commands and Procedures IN.NDPD(8)

NAME


in.ndpd - daemon for IPv6 autoconfiguration

SYNOPSIS


/usr/lib/inet/in.ndpd [-adt] [-f config_file]


DESCRIPTION


in.ndpd provides both the host and router autoconfiguration
components of Neighbor Discovery for IPv6 and Stateless and Stateful
Address Autoconfiguration for IPv6. In particular, in.ndpd
implements:

o router discovery;

o prefix discovery;

o parameter discovery;

o invocation of stateful address autoconfiguration;

o stateless address autoconfiguration; and

o privacy extensions for stateless address
autoconfiguration.


Other aspects of Neighbor Discovery are implemented by ip6(4P),
including:

o address resolution;

o neighbor unreachability detection; and

o redirect.


The duplicate address detection function is implemented by the system
kernel.


in.ndpd is managed by the service management facility (SMF), by means
of the service identifier:

svc:/network/routing/ndp:default


If the /etc/inet/ndpd.conf file does not exist or does not set the
variable AdvSendAdvertisements to true for a network interface, then
in.ndpd will make the node a host for that interface, that is,
sending router solicitation messages and then using router
advertisement messages it receives to autoconfigure the node. Note
that in.ndpd only autoconfigures the addresses of global or site-
local scope from the prefix advertisement.


If AdvSendAdvertisements is set to true for an interface, then
in.ndpd will perform router functions on that interface, that is,
sending router advertisement messages to autoconfigure the attached
hosts, but not use any advertisements it receives for
autoconfiguration. However, when sending advertisements, in.ndpd will
use the advertisements it sends itself to autoconfigure its prefixes.


Stateless autoconfiguration requires no manual configuration of
hosts, minimal (if any) configuration of routers, and no additional
servers. The stateless mechanism enables a host to generate its own
addresses and uses local information as well as non-local information
that is advertised by routers to generate the addresses. in.ndpd will
plumb logical interfaces for each of these addresses.


Stateful autoconfiguration involves the dhcpagent(8) daemon and the
use of the DHCPv6 protocol. The dhcpagent daemon is responsible for
plumbing the logical interfaces for the acquired addresses,
maintaining the leases, and handling duplicate addresses. in.ndpd
starts the dhcpagent daemon automatically and signals when DHCPv6
should be started. in.ndpd also detects when dhcpagent configures the
logical interfaces, and sets the appropriate prefix length on each
according to received Routing Advertisement messages. in.ndpd will
not stop dhcpagent; use ifconfig(8) to control dhcpagent if
necessary.


Temporary addresses that are autoconfigured for an interface can also
be implemented. A temporary address token is enabled for one or more
interfaces on a host. However, unlike standard, autoconfigured IPv6
addresses, a temporary address consists of the site prefix and a
randomly generated 64 bit number. This random number becomes the
interface ID segment of the IPv6 address. A link-local address is not
generated with the temporary address as the interface ID.


If the kernel detects a duplicate temporary address, in.ndpd will
automatically choose another.


Routers advertise all prefixes that have been assigned on the link.
IPv6 hosts use Neighbor Discovery to obtain a subnet prefix from a
local router. Hosts automatically create IPv6 addresses by combining
the subnet prefix with an interface IDs that is generated from an
interface's MAC address. In the absence of routers, a host can
generate only link-local addresses. Link-local addresses can only be
used for communication with nodes on the same link.


For information on how to enable IPv6 address autoconfiguration, see
System Administration Guide: IP Services.

OPTIONS


Supported options and equivalent SMF service properties are listed
below. SMF service properties are set using a command of the form:

# routeadm -m ndp:default key=value


-a

Turn off stateless and stateful address auto configuration. When
set, the daemon does not autoconfigure any addresses and does not
renumber any addresses. This option does the same thing as the
following lines in ndpd.conf(5):

ifdefault StatefulAddrConf off
ifdefault StatelessAddrConf off

Use of this option is equivalent to setting the
stateless_addr_conf property to false.


-d

Turn on large amounts of debugging output on stdout. When set,
the program runs in the foreground and stays attached to the
controlling terminal. Use of this option is equivalent to
setting the debug property to true.


-f config_file

Use config_file for configuration information instead of the
default /etc/inet/ndpd.conf. Use of this option is equivalent to
setting the config_file property to the configuration file to be
used.


-t

Turn on tracing (printing) of all sent and received packets to
stdout. When set, the program runs in the foreground and stays
attached to the controlling terminal. As such, this option cannot
be run under the SMF.


FILES


/etc/inet/ndpd.conf
Configuration file. This file is not necessary
on a host, but it is required on a router to
enable in.ndpd to advertise autoconfiguration
information to the hosts.


SEE ALSO


icmp6(4P), ip6(4P), ndp(4P), ndpd.conf(5), attributes(7), smf(7),
dhcpagent(8), ifconfig(8), ndp(8), routeadm(8), svcadm(8)


Narten, T., Nordmark, E., Simpson, W. RFC 2461, Neighbor Discovery
for IP Version 6 (IPv6). The Internet Society. December 1998.


Thomson, S., Narten, T. RFC 2462, IPv6 Stateless Address
Autoconfiguration. The Internet Society. December 1998.


Narten, T., and Draves, R. RFC 3041, Privacy Extensions for Stateless
Address Autoconfiguration in IPv6. The Internet Society. January
2001.

DIAGNOSTICS


Receipt of a SIGHUP signal will make in.ndpd restart and reread
/etc/inet/ndpd.conf.

NOTES


The in.ndpd daemon service is managed by the service management
facility, smf(7), under the service identifier:

svc:/network/routing/ndp:default


Administrative actions on this service, such as enabling, disabling,
or requesting restart, can be performed using svcadm(8) or
routeadm(8).

September 12, 2020 IN.NDPD(8)

tribblix@gmail.com :: GitHub :: Privacy