System Administration Guide: IP Services

IPv6 Configuration Files

This section describes the configuration files that are part of an IPv6 implementation:

ndpd.conf Configuration File

The /etc/inet/ndpd.conf file is used to configure options that are used by the in.ndpd Neighbor Discovery daemon. For a router, you primarily use ndpd.conf to configure the site prefix to be advertised to the link. For a host, you use ndpd.conf to turn off address autoconfiguration or to configure temporary addresses.

The next table shows the keywords that are used in the ndpd.conf file.

Table 11–2 /etc/inet/ndpd.conf Keywords

Variable 

Description 

ifdefault

Specifies the router behavior for all interfaces. Use the following syntax to set router parameters and corresponding values: 

ifdefault [variable-value]

prefixdefault

Specifies the default behavior for prefix advertisements. Use the following syntax to set router parameters and corresponding values: 

prefixdefault [variable-value]

if

Sets per-interface parameters. Use the following syntax: 

if interface [variable-value]

prefix

Advertises per-interface prefix information. Use the following syntax: 

prefix prefix/length interface [variable-value]

In the ndpd.conf file, you use the keywords in this table with a set of router configuration variables. These variables are defined in detail in RFC 2461, Neighbor Discovery for IP Version 6 (IPv6).

The next table shows the variables for configuring an interface, along with brief definitions.

Table 11–3 /etc/inet/ndpd.conf Interface Configuration Variables

Variable 

Default 

Definition 

AdvRetransTimer

Specifies the value in the Retrans Timer field in the advertisement messages sent by the router. 

AdvCurHopLimit

Current diameter of the Internet 

Specifies the value to be placed in the current hop limit in the advertisement messages sent by the router. 

AdvDefaultLifetime

3 + MaxRtrAdvInterval

Specifies the default lifetime of the router advertisements. 

AdvLinkMTU

Specifies a maximum transmission unit (MTU) value to be sent by the router. The zero indicates that the router does not specify MTU options. 

AdvManaged Flag

False 

Indicates the value to be placed in the Manage Address Configuration flag in the router advertisement. 

AdvOtherConfigFlag

False 

Indicates the value to be placed in the Other Stateful Configuration flag in the router advertisement. 

AdvReachableTime

Specifies the value in the Reachable Time field in the advertisement messages sent by the router. 

AdvSendAdvertisements

False 

Indicates whether the node should send out advertisements and respond to router solicitations. You need to explicitly set this variable to “TRUE” in the ndpd.conf file to turn on router advertisement functions. For more information, refer to How to Configure an IPv6-Enabled Router.

DupAddrDetect

Transmits

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. 

MaxRtrAdvInterval

600 seconds 

Specifies the maximum time to wait between sending unsolicited multicast advertisements. 

MinRtrAdvInterval

200 seconds 

Specifies the minimum time to wait between sending unsolicited multicast advertisements. 

StatelessAddrConf

True 

Controls whether the node configures its IPv6 address through stateless address autoconfiguration. If False is declared in ndpd.conf, then the address must be manually configured. For more information, refer to How to Configure a User-Specified IPv6 Token.

TmpAddrsEnabled

False 

Indicates whether a temporary address should be created for all interfaces or for a particular interface of a node. For more information, refer to How to Configure a Temporary Address.

TmpMaxDesyncFactor

600 seconds 

Specifies a random value to be subtracted from the preferred lifetime variable TmpPreferredLifetime when in.ndpd starts. The purpose of the TmpMaxDesyncFactor variable is to prevent all the systems on your network from regenerating their temporary addresses at the same time. TmpMaxDesyncFactor allows you to change the upper bound on that random value.

TmpPreferredLifetime

False 

Sets the preferred lifetime of a temporary address. For more information, refer to How to Configure a Temporary Address.

TmpRegenAdvance

False 

Specifies the lead time in advance of address deprecation for a temporary address. For more information, refer to How to Configure a Temporary Address.

TmpValidLifetime

False 

Sets the valid lifetime for a temporary address. For more information, refer to How to Configure a Temporary Address.

The next table shows the variables that are used for configuring IPv6 prefixes.

Table 11–4 /etc/inet/ndpd.conf Prefix Configuration Variables

Variable 

Default 

Definition 

AdvAutonomousFlag

True 

Specifies the value to be placed in the Autonomous Flag field in the Prefix Information option.  

AdvOnLinkFlag

True 

 

Specifies the value to be placed in the on-link flag (“L-bit”) in the Prefix Information option. 

AdvPreferredExpiration

Not set 

Specifies the preferred expiration date of the prefix. 

AdvPreferredLifetime

604800 seconds 

Specifies the value to be placed in the preferred lifetime in the Prefix Information option.  

AdvValidExpiration

Not set 

Specifies the valid expiration date of the prefix. 

AdvValidLifetime

2592000 seconds 

Specifies the valid lifetime of the prefix that is being configured. 


Example 11–1 /etc/inet/ndpd.conf File

The following example shows how the keywords and configuration variables are used in the ndpd.conf file. Remove the comment (#) to activate the variable.


# ifdefault      [variable-value ]*
# prefixdefault [variable-value ]*
# if ifname   [variable-value ]*
# prefix prefix/length ifname
#
#  Per interface configuration variables
#
#DupAddrDetectTransmits
#AdvSendAdvertisements
#MaxRtrAdvInterval
#MinRtrAdvInterval
#AdvManagedFlag
#AdvOtherConfigFlag
#AdvLinkMTU
#AdvReachableTime
#AdvRetransTimer
#AdvCurHopLimit
#AdvDefaultLifetime
#
# Per Prefix:  AdvPrefixList configuration variables
#
#
#AdvValidLifetime
#AdvOnLinkFlag
#AdvPreferredLifetime
#AdvAutonomousFlag
#AdvValidExpiration
#AdvPreferredExpiration

ifdefault AdvReachableTime 30000 AdvRetransTimer 2000
prefixdefault AdvValidLifetime 240m AdvPreferredLifetime 120m

if qe0 AdvSendAdvertisements 1
prefix 2:0:0:56::/64 qe0
prefix fec0:0:0:56::/64 qe0

if qe1 AdvSendAdvertisements 1
prefix 2:0:0:55::/64 qe1
prefix fec0:0:0:56::/64 qe1

if hme1 AdvSendAdvertisements 1
prefix  2002:8192:56bb:1::/64 qfe0 

if hme1 AdvSendAdvertisements 1
prefix  2002:8192:56bb:2::/64 hme1

IPv6 Interface Configuration File

IPv6 uses the /etc/hostname6.interface file at start up to automatically define IPv6 logical interfaces. When you select the IPv6 Enabled option during Oracle Solaris installation, the installation program creates an /etc/hostname6.interface file for the primary network interface, in addition to the /etc/hostname.interface file.

If more than one physical interface is detected during installation, you are prompted as to whether you want to configure these interfaces. The installation program creates IPv4 physical interface configuration files and IPv6 logical interface configuration files for each additional interface that you indicate.

As with IPv4 interfaces, you can also configure IPv6 interfaces manually, after Oracle Solaris installation. You create/etc/hostname6.interface files for the new interfaces. For instructions for manually configuring interfaces, refer to Administering Interfaces in Solaris 10 3/05 or Chapter 6, Administering Network Interfaces (Tasks).

The network interface configuration file names have the following syntax:


hostname.interface
hostname6.interface

The interface variable has the following syntax:


dev[.module[.module ...]]PPA
dev

Indicates a network interface device. The device can be a physical network interface, such as eri or qfe, or a logical interface, such as a tunnel. See IPv6 Interface Configuration File for more details.

Module

Lists one or more STREAMS modules to be pushed onto the device when the device is plumbed.

PPA

Indicates the physical point of attachment.

The syntax [.[.]] is also accepted.


Example 11–2 IPv6 Interface Configuration Files

The following are examples of valid IPv6 configuration file names:


hostname6.qfe0
hostname.ip.tun0
hostname.ip6.tun0
hostname6.ip6to4tun0
hostname6.ip.tun0
hostname6.ip6.tun0

/etc/inet/ipaddrsel.conf Configuration File

The /etc/inet/ipaddrsel.conf file contains the IPv6 default address selection policy table. When you install Oracle Solaris with IPv6 enabled, this file contains the contents that are shown in Table 11–5.

You can edit the contents of /etc/inet/ipaddrsel.conf. However, in most cases, you should refrain from modifying this file. If modification is necessary, refer to the procedure How to Administer the IPv6 Address Selection Policy Table. For more information on ippaddrsel.conf, refer to Reasons for Modifying the IPv6 Address Selection Policy Table and the ipaddrsel.conf(4) man page.