'\" te
.\" Copyright (C) 2004, Sun Microsystems, Inc. All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH NDPD.CONF 4 "Jan 4, 2007"
.SH NAME
ndpd.conf \- configuration file for IPv6 router autoconfiguration
.SH SYNOPSIS
.LP
.nf
\fB/etc/inet/ndpd.conf\fR
.fi

.SH DESCRIPTION
.sp
.LP
The \fBndpd.conf\fR file contains configuration information for
\fBin.ndpd\fR(1M). On a host, this file does not need to exist or can be empty.
The file has one configuration entry per line; note that lines can be extended
with a backslash (\fB\e\fR) followed by a NEWLINE. There are four forms of
configuration entries which are identified by the first field on the line:
\fBifdefault\fR, \fBprefixdefault\fR, \fBif\fR, or \fBprefix\fR. The
\fBifdefault\fR and \fBif\fR entries set interface configuration variables. The
former establishes the routing behavior for all interfaces, the latter sets
per-interface parameters. Any \fBifdefault\fR entries must precede any \fBif\fR
entries in the file.
.sp
.LP
The \fBprefixdefault\fR and \fBprefix\fR entries control prefix configuration
variables. \fBprefixdefault\fR establishes the default behavior for all prefix
advertisements on all interfaces. The \fBprefix\fR keyword advertises
per-prefix information. Any \fBprefixdefault\fR entries must precede any
\fBprefix\fR entries in the file.
.sp
.LP
Each \fBifdefault\fR entry is composed of a single line of the form:
.sp
.in +2
.nf
ifdefault [ \fIif-variable-name\fR \fIvalue\fR ]*
.fi
.in -2

.sp
.LP
Each \fBif\fR entry is composed of a single line of the form:
.sp
.in +2
.nf
if \fIinterface\fR [ \fIif-variable-name\fR \fIvalue\fR ]*
.fi
.in -2

.sp
.LP
Each \fBprefixdefault\fR entry is composed of a single line of the form:
.sp
.in +2
.nf
prefixdefault [ \fIprefix-variable-name\fR \fIvalue\fR ]*
.fi
.in -2

.sp
.LP
Each prefix\fB\fR entry is composed of a single line of the form:
.sp
.in +2
.nf
prefix \fIprefix\fR/\fIprefix_length\fR \fIinterface\fR [ \fIprefix-variable-name\fR \fIvalue\fR ]*
.fi
.in -2

.sp
.LP
Fields are separated by either SPACE or TAB characters. A `\fB#\fR' (number
sign) indicates the beginning of a comment. Characters up to the end of the
line are not interpreted by routines that search this file.
.sp
.ne 2
.na
\fB\fB\fIinterface\fR\fR\fR
.ad
.RS 24n
The name of a network interface, for example, \fBeri0\fR.
.RE

.sp
.ne 2
.na
\fB\fB\fIprefix\fR\fR\fR
.ad
.RS 24n
An IPv6 address in standard hexadecimal notation, for example,
\fBfec0:0:0:1::0\fR.
.RE

.sp
.ne 2
.na
\fB\fB\fIprefix_length\fR\fR\fR
.ad
.RS 24n
A number between 0 and 128.
.RE

.sp
.ne 2
.na
\fB\fB\fIif-variable-name\fR\fR\fR
.ad
.RS 24n
An interface variable. Below is the list of interface variables applicable to
routers only along with their default values and units as discussed in \fIRFC
2461\fR and \fIRFC 2462\fR. The \fBTmp\fR* variables apply to hosts and
routers. The \fBTmp\fR* variables configure temporary address functionality as
defined in \fIRFC 3041\fR.
.sp
.in +2
.nf
Variable Name           Default    Unit

AdvSendAdvertisements   false      Boolean
DupAddrDetectTransmits  1          Counter
MaxRtrAdvInterval       600        Seconds
MinRtrAdvInterval       200        Seconds
AdvManagedFlag          false      Boolean
AdvOtherConfigFlag      false      Boolean
AdvLinkMTU              0          Bytes
AdvReachableTime        0          Milliseconds
AdvRetransTimer         0          Milliseconds
AdvCurHopLimit          see below  Counter
AdvDefaultLifetime      1800       Seconds
.fi
.in -2
.sp

These variables are described as follows:
.sp
.ne 2
.na
\fB\fBAdvSendAdvertisements\fR\fR
.ad
.RS 26n
Indicates whether the node should send out advertisements and respond to router
solicitations. You need to explicitly configure this value to turn on router
advertisement functions.
.RE

.sp
.ne 2
.na
\fB\fBDupAddrDetectTransmits\fR\fR
.ad
.RS 26n
Defines the number of consecutive Neighbor Solicitation messages that the
Neighbor Discovery protocol should send during Duplicate Address Detection of
the local node's address.
.RE

.sp
.ne 2
.na
\fB\fBMaxRtrAdvInterval\fR\fR
.ad
.RS 26n
Specifies the maximum time to wait between sending unsolicited multicast
advertisements.
.RE

.sp
.ne 2
.na
\fB\fBMinRtrAdvInterval\fR\fR
.ad
.RS 26n
Specifies the minimum amount of time to wait between sending unsolicited
multicast advertisements.
.RE

.sp
.ne 2
.na
\fB\fBAdvManagedFlag\fR\fR
.ad
.RS 26n
Indicates the value to be placed in the "Manage address configuration" flag in
the Router Advertisement. This flag causes hosts to run DHCPv6 to acquire
addresses and other configuration information. This flag causes hosts to run
DHCPv6 to acquire configuration information, but only if \fBAdvManagedFlag\fR
is not set.
.RE

.sp
.ne 2
.na
\fB\fBAdvOtherConfigFlag\fR\fR
.ad
.RS 26n
Indicates the value to be placed in the "Other stateful configuration"flag in
the Router Advertisement.
.RE

.sp
.ne 2
.na
\fB\fBAdvLinkMTU\fR\fR
.ad
.RS 26n
Specifies an MTU value to be sent by the router. The default of zero indicates
that the router does not specify MTU options.
.RE

.sp
.ne 2
.na
\fB\fBAdvReachableTime\fR\fR
.ad
.RS 26n
Specifies the value in the Reachable Time field in the advertisement messages
sent by the router.
.RE

.sp
.ne 2
.na
\fB\fBAdvRetransTimer\fR\fR
.ad
.RS 26n
Specifies the value in the Retrans Timer field in the advertisement messages
sent by the router.
.RE

.sp
.ne 2
.na
\fB\fBAdvCurHopLimit\fR\fR
.ad
.RS 26n
Specifies the value to be placed in the current hop limit field in the
advertisement messages sent by the router. The default is the current diameter
of the Internet.
.RE

.sp
.ne 2
.na
\fB\fBAdvDefaultLifetime\fR\fR
.ad
.RS 26n
Specifies the default lifetime of the router advertisements.
.RE

Listed below is the interface variable that applies to both hosts and routers.
.sp
.in +2
.nf
Variable Name           Default    Unit

StatefulAddrConf        true       Boolean
StatelessAddrConf       true       Boolean
TmpAddrsEnabled         false      Boolean
TmpValidLifetime        604800     Seconds
                        (1 week)
TmpPreferredLifetime    86400      Seconds
                        (1 day)
TmpRegenAdvance         5          Seconds
TmpMaxDesyncFactor      600        Seconds
.fi
.in -2
.sp

.sp
.ne 2
.na
\fB\fBStatefulAddrConf\fR\fR
.ad
.RS 24n
Controls whether the system configures its IPv6 addresses by means of the
Stateful Address Autoconfiguration mechanism, also known as DHCPv6, as
described in RFC 3315. If enabled (the default), hosts automatically run DHCPv6
based on the "managed" and "other" flags sent by routers. If disabled,
\fBin.ndpd\fR will not invoke DHCPv6 automatically. DHCPv6 can still be invoked
manually by using \fBifconfig\fR(1M), in which case \fBin.ndpd\fR automatically
sets the prefix length as needed.
.RE

.sp
.ne 2
.na
\fB\fBStatelessAddrConf\fR\fR
.ad
.RS 24n
Controls whether the system configures its IPv6 addresses by means of the
Stateless Address Autoconfiguration mechanism described in \fIRFC 2462\fR. If
enabled hosts (the default) autoconfigure addresses based on prefixes
advertised by routers, routers will only autoconfigure addresses based on the
prefixes they advertise themselves. In other words, even when enabled, routers
do not autoconfigure addresses based on prefixes that other routers advertise.
If you specify \fBfalse\fR for this variable, then the address must be
configured manually.
.RE

.sp
.ne 2
.na
\fB\fBTmpAddrsEnabled\fR\fR
.ad
.RS 24n
Indicates whether a temporary address should be created for all interfaces or
for a particular interface of a node.
.RE

.sp
.ne 2
.na
\fB\fBTmpValidLifetime\fR\fR
.ad
.RS 24n
Sets the valid lifetime for a temporary address.
.RE

.sp
.ne 2
.na
\fB\fBTmpPreferredLifetime\fR\fR
.ad
.RS 24n
Sets the preferred lifetime of a temporary address.
.RE

.sp
.ne 2
.na
\fB\fBTmpRegenAdvance\fR\fR
.ad
.RS 24n
Specifies the lead time in advance of address deprecation for generation of a
new temporary address.
.RE

.sp
.ne 2
.na
\fB\fBTmpMaxDesyncFactor\fR\fR
.ad
.RS 24n
Sets the upper bound on the DesyncFactor, which is a random value that is used
to shorten the preferred lifetime so that clients do not regenerate an address
at the same time.
.RE

.RE

.sp
.ne 2
.na
\fB\fIprefix-variable-name\fR\fR
.ad
.RS 24n
A prefix variable as discussed in \fIRFC 2461 \fR and \fIRFC 2462\fR. The
following lists the each interface variable and its default value and unit:
.sp

.sp
.TS
box;
c | c | c
l | l | l .
Variable Name	Default	Unit
_
AdvValidLifetime	2592000	Seconds
_
AdvOnLinkFlag	true	Boolean
_
AdvPreferredLifetime	604800	Seconds
_
AdvAutonomousFlag	true	Boolean
_
AdvValidExpiration	not set	Date/Time
_
AdvPreferredExpiration 	not set	Date/TIme
.TE

These variables are described as follows:
.sp
.ne 2
.na
\fB\fBAdvValidLifetime\fR\fR
.ad
.RS 26n
Specifies the valid lifetime of the prefix that is being configured.
.RE

.sp
.ne 2
.na
\fB\fBAdvOnLinkFlag\fR\fR
.ad
.RS 26n
Specifies the value to be placed in the on-link flag ("L-bit") field in the
Prefix Information option.
.RE

.sp
.ne 2
.na
\fB\fBAdvPreferredLifetime\fR\fR
.ad
.RS 26n
Specifies the value to be placed in the Preferred Lifetime in the Prefix
Information option.
.RE

.sp
.ne 2
.na
\fB\fBAdvAutonomousFlag\fR\fR
.ad
.RS 26n
Specifies the value to be placed in the Autonomous Flag field in the Prefix
Information option.
.RE

.sp
.ne 2
.na
\fB\fBAdvValidExpiration\fR\fR
.ad
.RS 26n
Specifies the valid expiration date of the prefix.
.RE

.sp
.ne 2
.na
\fB\fBAdvPreferredExpiration\fR\fR
.ad
.RS 26n
Specifies the preferred expiration date of the prefix.
.RE

The \fBAdvValidExpiration\fR and \fBAdvPreferredExpiration\fR variables are
used to specify that the lifetime should be decremented in real time as
specified in \fIRFC 2461\fR. If an \fBExpiration\fR variable is set, it takes
precedence over the corresponding \fBAdvValidLifetime\fR or
\fBAdvPreferredLifetime\fR variable setting.
.RE

.sp
.ne 2
.na
\fB\fIvalue\fR\fR
.ad
.RS 24n
The value is a function of the unit. Boolean values are \fBtrue\fR,
\fBfalse\fR, \fBon\fR, \fBoff\fR, \fB1\fR, or \fB0\fR.
.sp
Values in seconds can have characters appended for day (\fBd\fR), hour
\fBh\fR), minute (\fBm\fR) and second (\fBs\fR). The default is seconds. For
example, \fB1h\fR means 1 hour. This is equivalent to the value \fB3600\fR.
.sp
Values in milliseconds can have characters appended for day (\fBd\fR),hour
(\fBh\fR), minute (\fBm\fR) second (\fBs\fR), and millisecond (\fBms\fR). The
default is milliseconds. For example, \fB1h\fR is equivalent to the value
\fB3600000\fR.
.sp
Date/time values are strings that use the recommended ISO date format described
as "\fB%Y-%m-%d %R\fR", which represents a 4 digit year, a dash character, a
numeric month, a dash character, and a numeric day of the month, followed by
one or more whitespace characters and finally a 24 hour clock with hours, a
colon, and minutes. For example, \fB1999-01-31 20:00\fR means 8pm January 31 in
1999. Since the date/time values contain a space, use single or double quotes
to declare the value. For example:
.sp
.in +2
.nf
prefixdefault AdvPreferredExpiration '1999-01-31 20:00'
.fi
.in -2

.RE

.SH EXAMPLES
.LP
\fBExample 1 \fRSending Router Advertisements for all Interfaces
.sp
.LP
The following example can be used to send router advertisements out to all
interfaces:

.sp
.in +2
.nf
# Send router advertisements out all interfaces
ifdefault AdvSendAdvertisements on
prefixdefault AdvOnLinkFlag on AdvAutonomousFlag on

# Advertise a (bogus) global prefix and a site
# local prefix on three interfaces using the default lifetimes
prefix 2:0:0:9255::0/64      eri0
prefix fec0:0:0:9255::0/64   eri0

prefix 2:0:0:9256::0/64      eri1
prefix fec0:0:0:9256::0/64   eri1

prefix 2:0:0:9259::0/64      eri2
prefix fec0:0:0:9259::0/64   eri2
.fi
.in -2

.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(5) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
Interface Stability	Committed
.TE

.SH SEE ALSO
.sp
.LP
\fBdhcpagent\fR(1M), \fBifconfig\fR(1M), \fBin.ndpd\fR(1M), \fBrouteadm\fR(1M),
\fBattributes\fR(5), \fBicmp6\fR(7P), \fBip6\fR(7P)
.sp
.LP
Narten, T., Nordmark, E., and Simpson, W. \fIRFC 2461, Neighbor Discovery for
IP Version 6 (IPv6)\fR. The Internet Society. December 1998.
.sp
.LP
Thomson, S., and Narten, T. \fIRFC 2462, IPv6 Stateless Address
Autoconfiguration\fR. The Internet Society. December 1998.
.sp
.LP
Narten, T., and Draves, R. \fIRFC 3041, Privacy Extensions for Stateless
Address Autoconfiguration in IPv6\fR. The Internet Society. January 2001.
.sp
.LP
Droms, R. \fIRFC 3315, Dynamic Host Configuration Protocol for IPv6
(DHCPv6)\fR. Cisco Systems. July 2003.
.sp
.LP
\fISystem Administration Guide: IP Services\fR