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]
/etc/inet/ndpd.conf
The ndpd.conf file contains configuration information for in.ndpd(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 (\e) followed by a NEWLINE. There are four forms of configuration entries which are identified by the first field on the line: ifdefault, prefixdefault, if, or prefix. The ifdefault and if entries set interface configuration variables. The former establishes the routing behavior for all interfaces, the latter sets per-interface parameters. Any ifdefault entries must precede any if entries in the file.
The prefixdefault and prefix entries control prefix configuration variables. prefixdefault establishes the default behavior for all prefix advertisements on all interfaces. The prefix keyword advertises per-prefix information. Any prefixdefault entries must precede any prefix entries in the file.
Each ifdefault entry is composed of a single line of the form:
ifdefault [ if-variable-name value ]*
Each if entry is composed of a single line of the form:
if interface [ if-variable-name value ]*
Each prefixdefault entry is composed of a single line of the form:
prefixdefault [ prefix-variable-name value ]*
Each prefix entry is composed of a single line of the form:
prefix prefix/prefix_length interface [ prefix-variable-name value ]*
Fields are separated by either SPACE or TAB characters. A `#' (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. interface
The name of a network interface, for example, eri0.
An IPv6 address in standard hexadecimal notation, for example, fec0:0:0:1::0.
A number between 0 and 128.
An interface variable. Below is the list of interface variables applicable to routers only along with their default values and units as discussed in RFC 2461 and RFC 2462. The Tmp* variables apply to hosts and routers. The Tmp* variables configure temporary address functionality as defined in RFC 3041.
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 SecondsThese variables are described as follows: AdvSendAdvertisements
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.
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.
Specifies the maximum time to wait between sending unsolicited multicast advertisements.
Specifies the minimum amount of time to wait between sending unsolicited multicast advertisements.
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 AdvManagedFlag is not set.
Indicates the value to be placed in the "Other stateful configuration"flag in the Router Advertisement.
Specifies an MTU value to be sent by the router. The default of zero indicates that the router does not specify MTU options.
Specifies the value in the Reachable Time field in the advertisement messages sent by the router.
Specifies the value in the Retrans Timer field in the advertisement messages sent by the router.
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.
Specifies the default lifetime of the router advertisements.
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 SecondsStatefulAddrConf
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, in.ndpd will not invoke DHCPv6 automatically. DHCPv6 can still be invoked manually by using ifconfig(1M), in which case in.ndpd automatically sets the prefix length as needed.
Controls whether the system configures its IPv6 addresses by means of the Stateless Address Autoconfiguration mechanism described in RFC 2462. 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 false for this variable, then the address must be configured manually.
Indicates whether a temporary address should be created for all interfaces or for a particular interface of a node.
Sets the valid lifetime for a temporary address.
Sets the preferred lifetime of a temporary address.
Specifies the lead time in advance of address deprecation for generation of a new temporary address.
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.
A prefix variable as discussed in RFC 2461 and RFC 2462. The following lists the each interface variable and its default value and unit:
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 |
Specifies the valid lifetime of the prefix that is being configured.
Specifies the value to be placed in the on-link flag ("L-bit") field in the Prefix Information option.
Specifies the value to be placed in the Preferred Lifetime in the Prefix Information option.
Specifies the value to be placed in the Autonomous Flag field in the Prefix Information option.
Specifies the valid expiration date of the prefix.
Specifies the preferred expiration date of the prefix.
The value is a function of the unit. Boolean values are true, false, on, off, 1, or 0. Values in seconds can have characters appended for day (d), hour h), minute (m) and second (s). The default is seconds. For example, 1h means 1 hour. This is equivalent to the value 3600. Values in milliseconds can have characters appended for day (d),hour (h), minute (m) second (s), and millisecond (ms). The default is milliseconds. For example, 1h is equivalent to the value 3600000. Date/time values are strings that use the recommended ISO date format described as "%Y-%m-%d %R", 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, 1999-01-31 20:00 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:
prefixdefault AdvPreferredExpiration '1999-01-31 20:00'
Example 1 Sending Router Advertisements for all Interfaces
The following example can be used to send router advertisements out to all interfaces:
# 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
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE ATTRIBUTE VALUE |
Interface Stability Committed |
dhcpagent(1M), ifconfig(1M), in.ndpd(1M), routeadm(1M), attributes(5), icmp6(7P), ip6(7P)
Narten, T., Nordmark, E., and Simpson, W. RFC 2461, Neighbor Discovery for IP Version 6 (IPv6). The Internet Society. December 1998.
Thomson, S., and 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.
Droms, R. RFC 3315, Dynamic Host Configuration Protocol for IPv6 (DHCPv6). Cisco Systems. July 2003.
System Administration Guide: IP Services