JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Configuring and Administering Oracle Solaris 11.1 Networks     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information

Preface

1.  Planning the Network Deployment

2.  Considerations When Using IPv6 Addresses

3.  Configuring an IPv4 Network

4.  Enabling IPv6 on the Network

Configuring an IPv6 Interface

How to Configure a System For IPv6

How to Turn Off IPv6 Address Autoconfiguration

Configuring an IPv6 Router

How to Configure an IPv6-Enabled Router

Modifying an IPv6 Interface Configuration for Hosts and Servers

Using Temporary Addresses for an Interface

How to Configure a Temporary Address

Configuring an IPv6 Token

How to Configure a User-Specified IPv6 Token

Administering IPv6-Enabled Interfaces on Servers

How to Enable IPv6 on a Server's Interfaces

Configuring Name Service Support for IPv6

How to Add IPv6 Addresses to DNS

How to Display IPv6 Name Service Information

How to Verify That DNS IPv6 PTR Records Are Updated Correctly

How to Display IPv6 Information Through NIS

5.  Administering a TCP/IP Network

6.  Configuring IP Tunnels

7.  IPv4 Reference

8.  IPv6 Reference

Index

Modifying an IPv6 Interface Configuration for Hosts and Servers

This section explains how to modify the configuration of IPv6-enabled interfaces on nodes that are hosts or servers. In most instances, you should use address autoconfiguration for IPv6-enabled interfaces. However, you can modify the IPv6 address of an interface, if necessary, as explained in the tasks of this section.

You need to perform three general tasks in the following sequence:

  1. Turn off IPv6 address autoconfiguration. See How to Turn Off IPv6 Address Autoconfiguration.

  2. Create a temporary address for a host. See How to Configure a Temporary Address.

  3. Configure an IPv6 token for the interface ID. See How to Configure a User-Specified IPv6 Token.

Using Temporary Addresses for an Interface

An IPv6 temporary address includes a randomly generated 64-bit number as the interface ID, instead of an interface's MAC address. You can use temporary addresses for any interface on an IPv6 node that you want to keep anonymous. For example, you might want to use temporary addresses for the interfaces of a host that needs to access public web servers. Temporary addresses implement IPv6 privacy enhancements. These enhancements are described in RFC 3041, available at “Privacy Extensions for Stateless Address Autoconfiguration in IPv6”.

You enable a temporary address in the /etc/inet/ndpd.conf file for one or more interfaces, if needed. However, unlike standard, autoconfigured IPv6 addresses, a temporary address consists of the 64-bit subnet 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.

Be aware that temporary addresses have a default preferred lifetime of one day. When you enable temporary address generation, you may also configure the following variables in the /etc/inet/ndpd.conf file:

valid lifetime TmpValidLifetime

Time span in which the temporary address exists, after which the address is deleted from the host.

preferred lifetime TmpPreferredLifetime

Elapsed time before the temporary address is deprecated. This time span should be shorter than the valid lifetime.

address regeneration

Duration of time before the expiration of the preferred lifetime, during which the host should generate a new temporary address.

You express the duration of time for temporary addresses as follows:

n

n number of seconds, which is the default

n h

n number of hours (h)

n d

n number of days (d)

How to Configure a Temporary Address

  1. If necessary, enable IPv6 on the host's interfaces

    Refer to How to Configure a System For IPv6.

  2. Edit the /etc/inet/ndpd.conf file to turn on temporary address generation.
    • To configure temporary addresses on all interfaces of a host, add the following line to /etc/inet/ndpd.conf:

      ifdefault TmpAddrsEnabled true
    • To configure a temporary address for a specific interface, add the following line to /etc/inet/ndpd.conf:

      if interface TmpAddrsEnabled true 
  3. (Optional) Specify the valid lifetime for the temporary address.
    ifdefault TmpValidLifetime duration

    This syntax specifies the valid lifetime for all interfaces on a host. The value for duration should be in seconds, hours, or days. The default valid lifetime is 7 days. You can also use TmpValidLifetime with the if interface keywords to specify the valid lifetime for a temporary address of a particular interface.

  4. (Optional) Specify a preferred lifetime for the temporary address, after which the address is deprecated.
    if interface TmpPreferredLifetime duration

    This syntax specifies the preferred lifetime for the temporary address of a particular interface. The default preferred lifetime is one day. You can also use TmpPreferredLifetime with the ifdefault keyword to specify the preferred lifetime for the temporary addresses on all interfaces of a host.


    Note - Default address selection gives a lower priority to IPv6 addresses that have been deprecated. If an IPv6 temporary address is deprecated, default address selection chooses a nondeprecated address as the source address of a packet. A nondeprecated address could be the automatically generated IPv6 address, or possibly, the interface's IPv4 address. For more information about default address selection, see Administering Default Address Selection.


  5. (Optional) Specify the lead time in advance of address deprecation, during which the host should generate a new temporary address.
    ifdefault TmpRegenAdvance duration

    This syntax specifies the lead time in advance of address deprecation for the temporary addresses of all interfaces on a host. The default is 5 seconds.

  6. Change the configuration of the in.ndpd daemon.
    # pkill -HUP in.ndpd
    # /usr/lib/inet/in.ndpd
  7. Verify that temporary addresses have been created by issuing the ipadm show-addr command, as shown in Example 4-4.

    The command output displays the t flag on the CURRENT field of temporary addresses.

Example 4-3 Temporary Address Variables in the /etc/inet/ndpd.conf File

The following example shows a segment of an /etc/inet/ndpd.conf file with temporary addresses enabled for the primary network interface.

ifdefault TmpAddrsEnabled true

ifdefault TmpValidLifetime 14d

ifdefault TmpPreferredLifetime 7d

ifdefault TmpRegenAdvance 6s

Example 4-4 ipadm show-addr Command Output with Temporary Addresses Enabled

This example shows the output of the ipadm show-addr command after temporary addresses are created. Note that only IPv6–related information is included in the sample output.

# ipadm show-addr -o all
ADDROBJ   TYPE     STATE CURRENT PERSISTENT ADDR
lo0/v6    static   ok    U----   ---        ::1/128
net0/v6   addrconf ok    U----   ---        fe80::a00:20ff:feb9:4c54/10
net0/v6a  static   ok    U----   ---        2001:db8:3c4d:15:a00:20ff:feb9:4c54/64
net0/?    addrconf ok    U--t-   ---        2001:db8:3c4d:15:7c37:e7d1:fc9c:d2cb/64

Note that for the address object net0/?, the t flag is set under the CURRENT field. The flag indicates that the corresponding address has a temporary interface ID.

See Also

Configuring an IPv6 Token

The 64-bit interface ID of an IPv6 address is also referred to as a token. During address autoconfiguration, the token is associated with the interface's MAC address. In most cases, nonrouting nodes, that is IPv6 hosts and servers, should use their autoconfigured tokens.

However, using autoconfigured tokens can be a problem for servers whose interfaces are routinely swapped as part of system maintenance. When the interface card is changed, the MAC address is also changed. Servers that depend on having stable IP addresses can experience problems as a result. Various parts of the network infrastructure, such as DNS or NIS, might have stored specific IPv6 addresses for the interfaces of the server.

To avoid address change problems, you can manually configure a token to be used as the interface ID in an IPv6 address. To create the token, you specify a hexadecimal number of 64 bits or less to occupy the interface ID portion of the IPv6 address. During subsequent address autoconfiguration, Neighbor Discovery does not create an interface ID that is based on the interface's MAC address. Instead, the manually created token becomes the interface ID. This token remains assigned to the interface, even when a card is replaced.


Note - The difference between user-specified tokens and temporary addresses is that temporary addresses are randomly generated, rather than explicitly created by a user.


How to Configure a User-Specified IPv6 Token

The next instructions are particularly useful for servers whose interfaces are routinely replaced. They also are valid for configuring user-specified tokens on any IPv6 node.

  1. Verify that the interface you want to configure with a token exists and that no IPv6 addresses are configured on the interface.

    Note - Ensure that the interface has no configured IPv6 address.


    # ipadm show-if
    IFNAME   CLASS      STATE   ACTIVE   OVER
    lo0      loopback   ok       yes     ---
    net0     ip         ok       yes     ---
    
    # ipadm show-addr
    ADDROBJ      TYPE       STATE   ADDR
    lo0/v4       static     ok      127.0.0.1/8

    This output shows that the network interface net0 exists with no configured IPv6 address.

  2. Create one or more 64-bit hexadecimal numbers to be used as tokens for the node's interfaces that follows the format xxxx:xxxx:xxxx:xxxx.
  3. Configure each interface with a token.

    Use the following form of the ipadm command for each interface to have a user-specified interface ID (token):

    # ipadm create-addr -T addrconf -i interface-ID interface

    For example, you would use the following command to configure interface net0 with a token:

    # ipadm create-addr -T addrconf -i ::1a:2b:3c:4d/64 net0

    Note - After the address object has been created with the token, you can no longer modify the token.


  4. Update the IPv6 daemon with your changes.
    # pkill -HUP in.ndpd

Example 4-5 Configuring a User-Specified Token on an IPv6 Interface

The following example shows net0 being configured with an IPv6 address and a token.

# ipadm show-if
IFNAME   CLASS      STATE    ACTIVE     OVER
lo0      loopback   ok       yes        ---
net0     ip         ok       yes        ---

# ipadm show-addr
ADDROBJ      TYPE       STATE   ADDR
lo0/v4       static     ok      127.0.0.1/8

# ipadm create-addr -T addrconf -i ::1a:2b:3c:4d/64 net0
# pkill -HUP in.ndpd
# ipadm show-addr
ADDROBJ      TYPE       STATE   ADDR
lo0/v6       static     ok      ::1/128
net0/v6      addrconf   ok      fe80::1a:2b:3c:4d/10
net0/v6a     addrconf   ok      2002:a08:39f0:1:1a:2b:3c:4d/64

After the token is configured, the address object net0/v6 has both a link local address as well as an address with 1a:2b:3c:4dconfigured for its interface ID. Note that this token can no longer be modified for this interface after net0/v6 was created.

See Also

Administering IPv6-Enabled Interfaces on Servers

When you plan for IPv6 on a server, you must make a few decisions as you enable IPv6 on the server's interfaces. Your decisions affect the strategy to use for configuring the interface IDs, also known as tokens, of an interface's IPv6 address.

How to Enable IPv6 on a Server's Interfaces

This procedure provides general steps to enable IPv6 on your network's servers. Some of the steps might vary depending on the manner that you want to implement IPv6.

  1. Enable IPv6 on the server's IP interfaces.

    For procedures, refer to Configuring an IPv6 Interface.

  2. Ensure that an IPv6 subnet prefix is configured on a router on the same link as the server.

    For more information, refer to Configuring an IPv6 Router.

  3. Use the appropriate strategy for the interface ID for the server's IPv6-enabled interfaces.

    By default, IPv6 address autoconfiguration uses the MAC address of an interface when creating the interface ID portion of the IPv6 address. If the IPv6 address of the interface is well known, swapping one interface for another interface can cause problems. The MAC address of the new interface will be different. During address autoconfiguration, a new interface ID is generated.

    • For an IPv6-enabled interface that you do not plan to replace, use the autoconfigured IPv6 address, as explained in Autoconfiguration Process.

    • For IPv6-enabled interfaces that must appear anonymous outside the local network, consider using a randomly generated token for the interface ID. For instructions and an example, refer to How to Configure a Temporary Address.

    • For IPv6-enabled interfaces that you plan to swap on a regular basis, create tokens for the interface IDs. For instructions and an example, refer to How to Configure a User-Specified IPv6 Token.