System Administration Guide: IP Services
Previous Next

Configuring an IPv6 Interface

The initial step in IPv6 configuration is enabling IPv6 on an interface. You can enable IPv6 support during the Solaris 10 installation process or by configuring IPv6 on the interfaces of an installed system.

During the Solaris 10 installation process, you can enable IPv6 on one or more of a system's interfaces. After installation, the following IPv6-related files and tables are in place:

  • Each interface that was enabled for IPv6 now has an associated /etc/hostname6.interface file, such as hostname6.dmfe0.

  • The /etc/nsswitch.conf file has been modified to accommodate lookups using IPv6 addresses.

  • The IPv6 address selection policy table is created. This table prioritizes the IP address format to use for transmissions over an IPv6-enabled interface.

This section describes how to enable IPv6 on the interfaces of an installed system.

Enabling IPv6 on an Interface (Task Map)

Task

Description

For Instructions

Enable IPv6 on an interface on a system that has already been installed with the Solaris 10 OS.

Use this task for enabling IPv6 on an interface after the Solaris 10 OS has been installed.

How to Enable an IPv6 Interface for the Current Session

Make the IPv6-enabled interface persist across reboots.

Use this task to make the IPv6 address of the interface permanent.

How to Enable Persistent IPv6 Interfaces

Turn off IPv6 address autoconfiguration.

Use this task if you need to manually configure the interface ID portion of the IPv6 address.

How to Turn Off IPv6 Address Autoconfiguration

How to Enable an IPv6 Interface for the Current Session

Begin your IPv6 configuration process by enabling IPv6 on the interfaces of all systems that will become IPv6 nodes. Initially, the interface obtains its IPv6 address through the autoconfiguration process, as described in IPv6 Address Autoconfiguration. You then can tailor the node's configuration based on its function in the IPv6 network, either as a host, server, or router.


Note - If the interface is on the same link as a router that currently advertises an IPv6 prefix, the interface obtains that site prefix as part of its autoconfigured addresses. For more information, refer to How to Configure an IPv6-Enabled Router.


The following procedure explains how to enable IPv6 for an interface that was added after Solaris 10 installation.

Before You Begin

Complete the planning tasks for the IPv6 network, such as upgrading hardware and software, and preparing an addressing plan. For more information, see IPv6 Planning (Task Maps).

  1. Log in to the prospective IPv6 node as Primary Administrator or as superuser.

    The Primary Administrator role includes the Primary Administrator profile. To create the role and assign the role to a user, see Chapter 2, Working With the Solaris Management Console (Tasks), in System Administration Guide: Basic Administration.

  2. Enable IPv6 on an interface.
    # ifconfig inet6 interface plumb up
  3. Start the IPv6 daemonin.ndpd.
    # /usr/lib/inet/in.ndpd

    Note - You can display the status of a node's IPv6-enabled interfaces by using the ifconfig-a6 command.


Example 7-1 Enabling an IPv6 Interface After Installation

This example shows how to enable IPv6 on the qfe0 interface. Before you begin, check the status of all interfaces configured on the system.

# ifconfig -a
lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
qfe0: flags=1000863 <UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST,IPv4> mtu 1500 
           index 2
        inet 172.16.27.74 netmask ffffff00 broadcast 172.16.27.255
        ether 0:3:ba:13:14:e1 

Only the qfe0 interface is currently configured for this system. Enable IPv6 on this interface as follows:

# ifconfig inet6 qfe0 plumb up
# /usr/lib/inet/in.ndpd
# ifconfig -a6
lo0: flags=2000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv6> mtu 8252 index 1
        inet6 ::1/128 
qfe0: flags=2000841 <UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 2
        ether 0:3:ba:13:14:e1 
        inet6 fe80::203:baff:fe13:14e1/10

The example shows the status of the system's interface before and after qfe0becomes IPv6-enabled. The -a6 option of ifconfig shows just the IPv6 information for qfe0 and the loopback interface. Note that the output indicates that only a link-local address was configured for qfe0, fe80::203:baff:fe13:14e1/10. This address indicates that as of yet no router on the node's local link advertises a site prefix.

After IPv6 is enabled, you can use the ifconfig -a command to display both IPv4 and IPv6 addresses for all interfaces on a system.

Next Steps

How to Enable Persistent IPv6 Interfaces

This procedure explains how to enable IPv6 interfaces with autoconfigured IPv6 addresses that persist across subsequent reboots.


Note - If the interface is on the same link as a router that currently advertises an IPv6 prefix, the interface obtains that site prefix as part of its autoconfigured addresses. For more information, refer to How to Configure an IPv6-Enabled Router.


  1. Log in to the IPv6 node as Primary Administrator or as superuser.

    The Primary Administrator role includes the Primary Administrator profile. To create the role and assign the role to a user, see Chapter 2, Working With the Solaris Management Console (Tasks), in System Administration Guide: Basic Administration.

  2. Create IPv6 addresses for interfaces that were added after installation.
    # touch /etc/hostname6.interface
  3. (Optional) Create an /etc/inet/ndpd.conf file that defines parameters for interface variables on the node.

    If you need to create temporary addresses for the host's interface, refer to Using Temporary Addresses for an Interface. For details about /etc/inet/ndpd.conf, refer to the ndpd.conf(4) man page and ndpd.conf Configuration File.

  4. Reboot the node.
    # reboot -- -r

    The reboot process sends router discovery packets. If a router responds with a site prefix, the node can configure any interface with a corresponding /etc/hostname6.interface file with a global IPv6 address. Otherwise, the IPv6-enabled interfaces are configured solely with link-local addresses. Rebooting also restarts in.ndpd and other network daemons in IPv6 mode.

Example 7-2 Making an IPv6 Interface Persist Across Reboots

This example shows how to make the IPv6 configuration for the qfe0 interface persist across reboots. In this example, a router on the local link advertises the site prefix and subnet ID 2001:db8:3c4d:15/64.

First, check the status of the system's interfaces.

# ifconfig -a
lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
qfe0: flags=1000863 <UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST,IPv4> mtu 1500 
           index 2
        inet 172.16.27.74 netmask ffffff00 broadcast 172.16.27.255
        ether 0:3:ba:13:14:e1 
# touch /etc/hostname6.qfe0
# reboot -- -r

Verify that the IPv6 address you configured is still applied to the qfe0 interface.

# ifconfig -a6
qfe0: flags=2000841 <UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 2
       ether 0:3:ba:13:14:e1 
       inet6 fe80::203:baff:fe13:14e1/10 
 qfe0:1: flags=2180841 <UP,RUNNING,MULTICAST,ADDRCONF,IPv6> mtu 1500 
          index 2
        inet6 2001:db8:3c4d:15:203:baff:fe13:14e1/64

The output of ifconfig -a6 shows two entries for qfe0. The standard qfe0 entry includes the MAC address and the link-local address. A second entry, qfe0:1, indicates that a pseudo-interface was created for the additional IPv6 address on the qfe0 interface. The new, global IPv6 address, 2001:db8:3c4d:15:203:baff:fe13:14e1/64, includes the site prefix and subnet ID advertised by the local router.

Next Steps

How to Turn Off IPv6 Address Autoconfiguration

You normally should use address autoconfiguration to generate the IPv6 addresses for the interfaces of hosts and servers. However, sometimes you might want to turn off address autoconfiguration, especially if you want to manually configure a token, as explained in Configuring an IPv6 Token.

  1. Log in to the IPv6 node as Primary Administrator or as superuser.

    The Primary Administrator role includes the Primary Administrator profile. To create the role and assign the role to a user, see Chapter 2, Working With the Solaris Management Console (Tasks), in System Administration Guide: Basic Administration.

  2. Create an /etc/inet/ndpd.conf file for the node.

    The /etc/inet/ndpd.conf file defines interface variables for the particular node. This file should have the following contents in order to turn off address autoconfiguration for all of the server's interfaces:

    if-variable-name StatelessAddrConf false

    For details about /etc/inet/ndpd.conf, refer to the ndpd.conf(4) man page and ndpd.conf Configuration File.

  3. Update the IPv6 daemon with your changes.
    # pkill -HUP in.ndpd
Previous Next