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)