System Administration Guide: IP Services

Chapter 7 Configuring an IPv6 Network (Tasks)

This chapter contains tasks for configuring IPv6 on a network. The following major topics are covered:

For an overview of IPv6 concepts, refer to Chapter 3, Introducing IPv6 (Overview). For IPv6 planning tasks, refer to Chapter 4, Planning an IPv6 Network (Tasks). To find reference information about the tasks in this chapter, refer to Chapter 11, IPv6 in Depth (Reference).

Configuring an IPv6 Interface

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

During the Oracle 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:

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

Enabling IPv6 on an Interface (Task Map)

The following table lists different tasks for configuring the IPv6 interfaces. The table includes a description of what each task accomplishes and the section in the current documentation where the specific steps to perform the task are detailed.

Task 

Description 

For Instructions 

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

Use this task for enabling IPv6 on an interface after Oracle Solaris 10 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

ProcedureHow 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 Oracle 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

ProcedureHow 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.

    1. Create the configuration file.


      # touch /etc/hostname6.interface
      
    2. Add addresses to the configuration file.


      inet6 ipv6-address up
      addif inet6 ipv6-address up
      ...
  3. Create a static IPv6 default route.


    # /usr/sbin/route -p add -inet6 default ipv6-address
    
  4. (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.

  5. 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
# vi /etc/hostname6.qfe0
inet6 fe80::203:baff:fe13:1431/10 up
addif inet6 2001:db8:3c4d:15:203:baff:fe13:14e1/64 up

# route -p add -inet6 default fe80::203:baff:fe13:1431
# 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

ProcedureHow 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
    

Configuring an IPv6 Router

The first step in configuring IPv6 on a network is configuring IPv6 on a router. Router configuration involves a number of discrete tasks, which are described in this section. You might perform some or all of the tasks, depending on your site requirements.

IPv6 Router Configuration (Task Map)

Perform the next tasks in the following table in order that is shown to configure the IPv6 network. The table includes a description of what each task accomplishes and the section in the current documentation where the specific steps to perform the task are detailed.

Task 

Description  

For Instructions 

1. Ensure that you have completed the required prerequisites before you begin IPv6 configuration. 

You must complete planning tasks and Oracle Solaris installation with IPv6 enabled interfaces before you configure an IPv6-enabled router. 

Chapter 4, Planning an IPv6 Network (Tasks) and Configuring an IPv6 Interface.

2. Configure a router. 

Define the site prefix for the network.  

How to Configure an IPv6-Enabled Router

3. Configure tunnel interfaces on the router. 

Set up a manual tunnel or a 6to4 tunnel interface on the router. The local IPv6 network needs tunnels to communicate with other, isolated IPv6 networks. 

4. Configure the switches on the network. 

If your network configuration includes switches, configure them for IPv6 at this point in the configuration process. 

Refer to switch manufacturer's documentation. 

5. Configure any hubs on your network. 

If your network configuration includes hubs, configure them for IPv6 at this point in the configuration process. 

Refer to hub manufacturer's documentation. 

6. Configure the network name service for IPv6.  

Configure your primary name service (DNS, NIS, or LDAP) to recognize IPv6 addresses after the router is configured for IPv6. 

How to Add IPv6 Addresses to DNS

7. (Optional) Modify the addresses for the IPv6-enabled interfaces on hosts and servers. 

After IPv6 router configuration, make further modifications on IPv6-enabled hosts and servers. 

Modifying an IPv6 Interface Configuration for Hosts and Servers

Configure applications to support IPv6 

Different applications might require different actions in order to support IPv6. 

Refer to applications' documentation 

ProcedureHow to Configure an IPv6-Enabled Router

This procedure assumes that all interfaces of the router were configured for IPv6 during Oracle Solaris installation.

  1. On the system that will become the IPv6 router, assume the Primary Administrator role or become 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. Review which interfaces on the router were configured for IPv6 during installation.


    # ifconfig -a
    

    Check the output to ensure that the interfaces that you wanted to configure for IPv6 are now plumbed with link-local addresses. The following sample command output of ifconfig -a shows the IPv4 and IPv6 addresses that were configured for the router's interfaces.


    lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
            inet 127.0.0.1 netmask ff000000 
    dmfe0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
            inet 172.16.26.232 netmask ffffff00 broadcast 172.16.26.255
            ether 0:3:ba:11:b1:15 
    dmfe1: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4 mtu 1500 index 3
            inet 172.16.26.220 netmask ffffff00 broadcast 172.16.26.255
            ether 0:3:ba:11:b1:16 
    lo0: flags=2000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv6> mtu 8252 index 1
            inet6 ::1/128 
    dmfe0: flags=2000841 <UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 2
            ether 0:3:ba:11:b1:15 
            inet6 fe80::203:baff:fe11:b115/10 
    dmfe1: flags=2000841 <UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 3
            ether 0:3:ba:11:b1:16 
            inet6 fe80::203:baff:fe11:b116/10 

    The output also shows that the primary network interface dmfe0 and the additional interface dmfe1 were configured during installation with the IPv6 link–local addresses fe80::203:baff:fe11:b115/10 and fe80::203:baff:fe11:b116/10.

  3. Configure IPv6 packet forwarding on all interfaces of the router.

    For Solaris 10 11/03 and earlier releases, use the following command:


    # routeadm -e ipv6-forwarding -u
    

    Use either of the following to enable packet forwarding:

    • Use the routeadm command, as follows:


      # routeadm -e ipv6-forwarding -u
      
    • Use the following Service Management Facility (SMF) command, as follows:


      # svcadm enable ipv6-forwarding
  4. Start the routing daemon.

    The in.ripngd daemon handles IPv6 routing.

    For Solaris 10 11/06 and earlier releases, start in.ripngd by typing the following command:


    # routeadm -e ipv6-routing
    # routeadm -u
    

    Turn on IPv6 routing in either of the following ways:

    • Use the routeadm command as follows:


      # routeadm -e ipv6-routing -u
      
    • Use SMF to enable IPv6 routing:


      # svcadm enable ripng:default
      

    For syntax information on the routeadm command, see the routeadm(1M) man page.

  5. Create the /etc/inet/ndpd.conf file.

    You specify the site prefix to be advertised by the router and other configuration information in /etc/inet/ndpd.conf. This file is read by the in.ndpd daemon, which implements the IPv6 Neighbor Discovery protocol.

    For a list of variables and allowable values, refer to ndpd.conf Configuration File and the ndpd.conf(4)man page.

  6. Type the following text into the /etc/inet/ndpd.conf file:


    ifdefault AdvSendAdvertisements true
    prefixdefault AdvOnLinkFlag on AdvAutonomousFlag on
    

    This text tells the in.ndpd daemon to send out router advertisements over all interfaces of the router that are configured for IPv6.

  7. Add additional text to the /etc/inet/ndpd.conf file to configure the site prefix on the various interfaces of the router.

    The text should have the following format:


    prefix global-routing-prefix:subnet ID/64 interface
    

    The following sample /etc/inet/ndpd.conf file configures the router to advertise the site prefix 2001:0db8:3c4d::/48 over the interfaces dmfe0 and dmfe1.


    ifdefault AdvSendAdvertisements true
    prefixdefault AdvOnLinkFlag on AdvAutonomousFlag on
    
    if dmfe0 AdvSendAdvertisements 1
    prefix 2001:0db8:3c4d:15::0/64 dmfe0
    
    if dmfe1 AdvSendAdvertisements 1
    prefix 2001:0db8:3c4d:16::0/64 dmfe1
    
  8. Reboot the system.

    The IPv6 router begins advertising on the local link any site prefix that is in the ndpd.conf file.


Example 7–3 ifconfig Output Showing IPv6 Interfaces

The following example shows output from the ifconfig -a command such as you would receive after you finish the Configuring an IPv6 Router procedure.


lo0: flags=1000849 <UP LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
dmfe0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 172.16.15.232 netmask ffffff00 broadcast 172.16.26.255
        ether 0:3:ba:11:b1:15 
dmfe1: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4 mtu 1500 index 3
        inet 172.16.16.220 netmask ffffff00 broadcast 172.16.26.255
        ether 0:3:ba:11:b1:16 
lo0: flags=2000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv6> mtu 8252 index 1
        inet6 ::1/128 
dmfe0: flags=2100841 <UP,RUNNING,MULTICAST,ROUTER,IPv6> mtu 1500 index 2
        ether 0:3:ba:11:b1:15 
        inet6 fe80::203:baff:fe11:b115/10 
dmfe0:1: flags=2180841 <UP,RUNNING,MULTICAST,ADDRCONF,ROUTER,IPv6> mtu 1500
          index 2
        inet6 2001:db8:3c4d:15:203:baff:fe11:b115/64
dmfe1: flags=2100841 <UP,RUNNING,MULTICAST,ROUTER,IPv6> mtu 1500 index 3
        ether 0:3:ba:11:b1:16 
        inet6 fe80::203:baff:fe11:b116/10 
dmfe1:1: flags=2180841 <UP,RUNNING,MULTICAST,ADDRCONF,ROUTER,IPv6> mtu 1500
           index 3
        inet6 2001:db8:3c4d:16:203:baff:fe11:b116/64

In this example, each interface that was configured for IPv6 now has two addresses. The entry with the name of the interface, such as dmfe0, shows the link-local address for that interface. The entry with the form interface:n, such as dmfe0:1, shows a global IPv6 address. This address includes the site prefix that you configured in the /etc/ndpd.conf file, in addition to the interface ID.


See Also

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, as explained in Stateless Autoconfiguration Overview. However, you can modify the IPv6 address of an interface, if necessary, as explained in the tasks of this section.

Modifying an IPv6 Interface Configuration (Task Map)

The following table lists different tasks to modify an existing IPv6 network. The table includes a description of what each task accomplishes and the section in the current documentation where the specific steps to perform the task are detailed.

Task 

Description 

For Instructions 

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

Create a temporary address for a host. 

Hide a host's interface ID by configuring a randomly created temporary address that is used as the lower 64 bits of the address. 

How to Configure a Temporary Address

Configure a token for the interface ID of a system. 

Create a 64-bit token to be used as the interface ID in an IPv6 address. 

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 interfaces 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)

ProcedureHow to Configure a Temporary Address

  1. Log in to the IPv6 host 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. If necessary, enable IPv6 on the host's interfaces

    Refer to How to Enable an IPv6 Interface for the Current Session.

  3. 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 
      
  4. (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.

  5. (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.


  6. (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.

  7. Change the configuration of the in.ndpd daemon.


    # pkill -HUP in.ndpd
    # /usr/lib/inet/in.ndpd
    
  8. Verify that temporary addresses have been created by running the ifconfig -a6 command, as shown in Example 7–5.

    The output from ifconfig should have the word TEMPORARY in the same line as the interface definition.


Example 7–4 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 7–5 ifconfig-a6 Command Output with Temporary Addresses Enabled

This example shows the output of the ifconfig command after temporary addresses are created.


# ifconfig -a6
lo0: flags=2000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv6> mtu 8252 index 1 
     inet6 ::1/128
hme0: flags=2000841 <UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 2 
     ether 8:0:20:b9:4c:54
     inet6 fe80::a00:20ff:feb9:4c54/10
hme0:1: flags=2080841 <UP,RUNNING,MULTICAST,ADDRCONF,IPv6> mtu 1500 index 2 
     inet6 2001:db8:3c4d:15:a00:20ff:feb9:4c54/64
hme0:2: flags=802080841<UP,RUNNING,MULTICAST,ADDRCONF,IPv6,TEMPORARY> mtu 1500 index 2 
      inet6 2001:db8:3c4d:15:7c37:e7d1:fc9c:d2cb/64

Note that the line following interface hme0:2 includes the word TEMPORARY. This designation indicates that the address 2001:db8:3c4d:15:7c37:e7d1:fc9c:d2cb/64 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, as introduced in IPv6 Addressing Overview. 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.


ProcedureHow 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 is plumbed.

    An interface must be plumbed before you can configure a token for its IPv6 address.


    # 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

    This output shows that the network interface qfe0 is plumbed and has the link-local address fe80::203:baff:fe13:14e1/10. This address was automatically configured during installation.

  2. Create one or more 64-bit hexadecimal numbers to be used as tokens for the node's interfaces. For examples of tokens, refer to Link-Local Unicast Address.

  3. Configure each interface with a token.

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


    ifconfig interface inet6  token address/64
    

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


    # ifconfig qfe0 inet6 token ::1a:2b:3c:4d/64
    

    Repeat this step for every interface that will have a user-specified token.

  4. (Optional) Make the new IPv6 address persist across reboots.

    1. Edit or create an /etc/hostname6.interface file for each interface you configured with a token.

    2. Add the following text at the bottom of each /etc/hostname.6interface file:


      token ::token-name/64

      For example, you might add the following text to the bottom of an/etc/hostname6.interface file:


      token ::1a:2b:3c:4d/64

    After the system reboots, the token that you configured in an /etc/hostname6.interface file is applied to the interface's IPv6 address. This IPv6 address remains persistent across subsequent reboots.

  5. Update the IPv6 daemon with your changes.


    # pkill -HUP -in.ndpd
    

Example 7–6 Configuring a User-Specified Token on an IPv6 Interface

In the following example, the interface bge0:1 has an autoconfigured IPv6 address. The subnet prefix 2001:db8:3c4d:152:/64 is advertised by a router on the node's local link. The interface ID 2c0:9fff:fe56:8255 is generated from bge0:1's MAC address.


# ifconfig -a6
lo0: flags=2002000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv6,VIRTUAL> mtu 8252 index 1
        inet6 ::1/128
bge0: flags=2100801 <UP,MULTICAST,IPv6> mtu 1500 index 5
        inet6 fe80::2c0:9fff:fe56:8255/10
        ether 0:c0:9f:56:82:55
bge0:1: flags=2180801 <UP, MULTICAST,ADDRCONF,IPv6>mtu 1500 index 5
        inet6 2001:db8:3c4d:152:c0:9fff:fe56:8255/64
# ifconfig bge0 inet6 token ::1a:2b:3c:4d/64
# vi /etc/hostname6.bge0
token ::1a:2b:3c:4d/64
# pkill -HUP -in.ndpd
# ifconfig -a6
lo0: flags=2002000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv6,VIRTUAL> mtu 8252 index 1
        inet6 ::1/128
bge0: flags=2100801 <UP,MULTICAST,IPv6> mtu 1500 index 5
        inet6 fe80::2c0:9fff:fe56:8255/10
        ether 0:c0:9f:56:82:55
bge0:1: flags=2180801 <UP, MULTICAST,ADDRCONF,IPv6>mtu 1500 index 5
        inet6 2001:db8:3c4d:152:1a:2b:3c:4d/64

After the token is configured, the global address on the second status line of bge0:1 now has 1a:2b:3c:4dconfigured for its interface ID.


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.

ProcedureHow to Enable IPv6 on a Server's Interfaces

Before You Begin

The next procedure assumes the following:

If applicable, upgrade the application software to support IPv6. Note that many applications that run on the IPv4 protocol stack also successfully run on IPv6. For more information, refer to How to Prepare Network Services for IPv6 Support.

  1. On the server, assume the Primary Administrator role or become 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. 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 introduced in IPv6 Address Autoconfiguration.

    • 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.

Tasks for Configuring Tunnels for IPv6 Support (Task Map)

The following table lists different tasks for configuring different types of IPv6 tunnels. The table includes a description of what each task accomplishes and the section in the current documentation where the specific steps to perform the task are detailed.

Task 

Description 

For Instructions 

Manually configure IPv6 over IPv4 tunnels. 

Manually creates an IPv6 tunnel over a IPv4 network, a solution for reaching remote IPv6 networks within a larger, mostly IPv4 enterprise network. 

How to Manually Configure IPv6 Over IPv4 Tunnels

Manually configure IPv6 over IPv6 tunnels. 

Manually configures an IPv6 tunnel over an IPv6 network, typically used within a large enterprise network. 

How to Manually Configure IPv6 Over IPv6 Tunnels

Manually configure IPv4 over IPv6 tunnels. 

Manually configures an IPv4 tunnel over an IPv6 network, useful for large networks with both IPv4 and IPv6 networks. 

How to Configure IPv4 Over IPv6 Tunnels

Automatically configure IPv6 over IPv4 tunnels (6to4 tunnels). 

Create an automatic, 6to4 tunnel, a solution for reaching an external IPv6 site over the Internet. 

How to Configure a 6to4 Tunnel

Configure a tunnel between a 6to4 router and a 6to4 relay router. 

Enables a tunnel to a 6to4 relay router by using the 6to4relay command.

How to Configure a 6to4 Tunnel to a 6to4 Relay Router

Configuring Tunnels for IPv6 Support

IPv6 networks are often isolated entities within the larger IPv4 world. Nodes on your IPv6 network might need to communicate with nodes on isolated IPv6 networks, either within your enterprise or remotely. Typically, you configure a tunnel between IPv6 routers, although IPv6 hosts can also function as tunnel endpoints. For tunnel planning information, refer to Planning for Tunnels in the Network Topology.

You can set up automatically or manually configured tunnels for the IPv6 network. The Oracle Solaris IPv6 implementation supports the following types of tunnel encapsulation:

For conceptual descriptions of tunnels, see IPv6 Tunnels.

ProcedureHow to Manually Configure IPv6 Over IPv4 Tunnels

This procedure describes how to set up a tunnel from an IPv6 node to a remote IPv6 node over an IPv4 network.

  1. Log in to the local tunnel endpoint 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 the /etc/hostname6.ip.tunn file.

    where n represents the tunnel number, beginning at zero for the first tunnel. Then, add entries by following these substeps:

    1. Add the tunnel source address and the tunnel destination address.


      tsrc IPv4-source-address tdst IPv4-destination-address up
    2. (Optional) Add a logical interface for the source IPv6 address and the destination IPv6 addresses.


      addif IPv6-source-address  IPv6-destination-address 
      

      Omit this substep if you want the address autoconfigured for this interface. You do not need to configure link-local addresses for your tunnel.

  3. Reboot the system.

  4. Repeat this task on the opposite endpoint of the tunnel.


Example 7–7 Entry in the /etc/hostname6.ip.tun File for a Manual, IPv6 Over IPv4 Tunnel

This sample /etc/hostname6.ip.tun file shows a tunnel for which global source addresses and global destination addresses are manually configured.


tsrc 192.168.8.20 tdst 192.168.7.19 up
addif 2001:db8:3c4d:8::fe12:528 2001:db8:3c4d:7:a00:20ff:fe12:1234 up

ProcedureHow to Manually Configure IPv6 Over IPv6 Tunnels

This procedure describes how to set up a tunnel from an IPv6 node to a remote IPv6 node over an IPv6 network.

  1. Log in to the local tunnel endpoint 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 the /etc/hostname6.ip6.tun n file.

    Use the values 0, 1, 2, and so on, for n. Then, add entries by following these substeps.

    1. Add the tunnel source address and the tunnel destination address.


      tsrc IPv6-source-address tdst IPv6-destination-address
      IPv6-packet-source-address IPv6-packet-destination-address up
    2. (Optional) Add a logical interface for the source IPv6 address and destination IPv6 address.


      addif IPv6-source-address  IPv6-destination-address up

      Omit this step if you want the address autoconfigured for this interface. You do not need to configure link-local addresses for your tunnel.

  3. Reboot the system.

  4. Repeat this procedure at the opposite endpoint of the tunnel.


Example 7–8 Entry in the /etc/hostname6.ip6.tun File for an IPv6 Over IPv6 Tunnel

This example shows the entry for an IPv6 over IPv6 tunnel.


tsrc 2001:db8:3c4d:22:20ff:0:fe72:668c tdst 2001:db8:3c4d:103:a00:20ff:fe9b:a1c3
fe80::4 fe80::61 up

ProcedureHow to Configure IPv4 Over IPv6 Tunnels

This procedure explains how to configure a tunnel between two IPv4 hosts over an IPv6 network. You would use this procedure if your corporate network is heterogeneous, with IPv6 subnets that separate IPv4 subnets.

  1. Log in to the local IPv4 tunnel endpoint 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 the /etc/hostname.ip6.tunn file.

    Use the values 0, 1, 2, and so on, for n. Then, add entries by following these steps:

    1. Add the tunnel source address and the tunnel destination address.


      tsrc IPv6-source-address tdst IPv6-destination-address
      
    2. (Optional) Add a logical interface for the source IPv6 address and destination IPv6 address.


      addif IPv6-source-address  IPv6-destination-address up
  3. Reboot the local host.

  4. Repeat this procedure at the opposite endpoint of the tunnel.


Example 7–9 Entry in the /etc/hostname6.ip6.tun for an IPv4 Over IPv6 Tunnel

This example shows the entry for an IPv4 over IPv6 tunnel.


tsrc 2001:db8:3c4d:114:a00:20ff:fe72:668c tdst 2001:db8:3c4d:103:a00:20ff:fe9b:a1c3
10.0.0.4 10.0.0.61 up

ProcedureHow to Configure a 6to4 Tunnel

If your IPv6 network needs to communicate with a remote IPv6 network, consider using automatic, 6to4 tunnels. The process of configuring a 6to4 tunnel includes configuring the boundary router as a 6to4 router. The 6to4 router functions as the endpoint of a 6to4 tunnel between your network and an endpoint router at a remote IPv6 network.

Before You Begin

Before you configure 6to4 routing on an IPv6 network, you must have done the following:

  1. Log in to the prospective 6to4 router 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. Configure a 6to4 pseudo-interface on the router by creating the /etc/hostname6.ip.6to4tun0 file.

    • If you plan to use the recommended convention of subnet ID=0 and host ID=1, use the short format for /etc/hostname6.ip.6to4tun0:


      tsrc IPv4-address up
    • If you plan to use other conventions for the subnet ID and host ID, use the long format for /etc/hostname6.ip.6to4tun0:


      tsrc IPv4-address 2002:IPv4-address:subnet-ID:interface-ID:/64 up

    The required parameters for /etc/hostname6.ip.6to4tun0 follow:

    tsrc

    Indicates that this interface is used as a tunnel source.

    IPv4-address

    Specifies, in dotted-decimal format, the IPv4 address that is configured on the physical interface to become the 6to4 pseudo-interface.

    The remaining parameters are optional. However, if you specify one optional parameter, you must specify all optional parameters.

    2002

    Specifies the 6to4 prefix.

    IPv4–address

    Specifies, in hexadecimal notation, the IPv4 address of the pseudo-interface.

    subnet-ID

    Specifies, in hexadecimal notation, a subnet ID other than 0.

    interface-ID

    Specifies an interface ID other than 1.

    /64

    Indicates that the 6to4 prefix has a length of 64 bits.

    up

    Configures the 6to4 interface as “up.”


    Note –

    Two IPv6 tunnels on your network cannot have the same source address and the same destination address. Packets are dropped as a result. This type of event can happen if a 6to4 router also performs tunneling through the atun command. For information about atun, refer to the tun(7M) man page.


  3. (Optional) Create additional 6to4 pseudo-interfaces on the router.

    Each prospective 6to4 pseudo-interface must have an already configured, globally unique IPv4 address.

  4. Reboot the 6to4 router.

  5. Verify the status of the interface.


    # ifconfig ip.6to4tun0 inet6
            
    

    If the interface is correctly configured, you receive output that is similar to the following:


    ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6>mtu 1480 index 11
            inet tunnel src 111.222.33.44 
            tunnel hop limit 60 
            inet6 2002:6fde:212c:10:/64 
  6. Edit the /etc/inet/ndpd.conf file to advertise 6to4 routing.

    For detailed information, refer to the ndpd.conf(4) man page.

    1. Specify the subnet to receive the advertisement in the first line.

      Create an if entry with the following format:


      if subnet-interface AdvSendAdvertisements 1

      For example, to advertise 6to4 routing to the subnet that is connected to interface hme0, replace subnet-interface with hme0.


      if hme0 AdvSendAdvertisements 1
    2. Add the 6to4 prefix as the second line of the advertisement.

      Create a prefix entry with following format:


      prefix 2002:IPv4-address:subnet-ID::/64 subnet-interface
      
  7. Reboot the router.

    Alternatively, you can issue a sighup to the /etc/inet/in.ndpd daemon to begin sending router advertisements. The IPv6 nodes on each subnet to receive the 6to4 prefix now autoconfigure with new 6to4-derived addresses.

  8. Add the new 6to4-derived addresses of the nodes to the name service that is used at the 6to4 site.

    For instructions, go to Configuring Name Service Support for IPv6.


Example 7–10 6to4 Router Configuration (Short Form)

The following is an example of the short form of /etc/hostname6.ip.6to4tun0:


# cat /etc/hostname6.ip.6to4tun0
tsrc 111.222.33.44 up


Example 7–11 6to4 Router Configuration (Long Form)

Here is an example of the long form of /etc/hostname6.ip.6to4tun0:


# cat /etc/hostname6.ip.6to4tun0
tsrc 111.222.33.44 2002:6fde:212c:20:1/64 up


Example 7–12 ifconfig Output Showing 6to4 Pseudo-Interface

The following sample shows output of the ifconfig command for a 6to4 pseudo-interface:


# ifconfig ip.6to4tun0 inet6
ip.6to4tun0: flags=2200041<UP,RUNNING,NONUD,IPv6> mtu 1480 index 11
        inet tunnel src 192.168.87.188
        tunnel hop limit 60 
        inet6 2002:c0a8:57bc::1/64 


Example 7–13 6to4 Advertisements in/etc/inet/ndpd.conf

The following sample /etc/inet/ndpd.conf file advertises 6to4 routing on two subnets:


if qfe0 AdvSendAdvertisements 1
prefix  2002:c0a8:57bc:10::/64 qfe0 

if qfe1 AdvSendAdvertisements 1
prefix  2002:c0a8:57bc:2::/64 qfe1

Configuring Multiple Routers at the 6to4 Site

For a multiple router site, the routers behind the 6to4 router might require further configuration to support 6to4. If your site uses RIP, you must configure on each non-6to4 router the static routes to the 6to4 router. If you use a commercial routing protocol, you do not need to create static routes to the 6to4 router.

ProcedureHow to Configure a 6to4 Tunnel to a 6to4 Relay Router


Caution – Caution –

Because of major security issues, by default, 6to4 relay router support is disabled in Oracle Solaris. See Security Issues When Tunneling to a 6to4 Relay Router.


Before You Begin

Before you enable a tunnel to a 6to4 relay router, you must have completed the following tasks:

  1. Log in to the 6to4 router 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 a tunnel to the 6to4 relay router by using either of the following formats:

    • Enable a tunnel to an anycast 6to4 relay router.


      # /usr/sbin/6to4relay -e
      

      The -e option sets up a tunnel between the 6to4 router and an anycast 6to4 relay router. Anycast 6to4 relay routers have the well-known IPv4 address 192.88.99.1. The anycast relay router that is physically nearest to your site becomes the endpoint for the 6to4 tunnel. This relay router then handles packet forwarding between your 6to4 site and a native IPv6 site.

      For detailed information about anycast 6to4 relay routers, refer to RFC 3068, "An Anycast Prefix for 6to4 Relay Routers".

    • Enable a tunnel to a specific 6to4 relay router.


      # /usr/sbin/6to4relay -e -a relay-router-address
      

      The -a option indicates that a specific router address is to follow. Replace relay-router-address with the IPv4 address of the specific 6to4 relay router with which you want to enable a tunnel.

    The tunnel to the 6to4 relay router remains active until you remove the 6to4 tunnel pseudo-interface.

  3. Delete the tunnel to the 6to4 relay router, when the tunnel is no longer needed:


    # /usr/sbin/6to4relay -d
    
  4. (Optional) Make the tunnel to the 6to4 relay router persistent across reboots.

    Your site might have a compelling reason to have the tunnel to the 6to4 relay router reinstated each time the 6to4 router reboots. To support this scenario, you must do the following:

    1. Edit the/etc/default/inetinit file.

      The line that you need to modify is at the end of the file.

    2. Change the “NO” value in the line ACCEPT6TO4RELAY=NO to “YES”.

    3. (Optional) Create a tunnel to a specific 6to4 relay router that persists across reboots.

      For the parameter RELAY6TO4ADDR, change the address 192.88.99.1 to the IPv4 address of the 6to4 relay router that you want to use.


Example 7–14 Getting Status Information About 6to4 Relay Router Support

You can use the /usr/bin/6to4relay command to find out whether support for 6to4 relay routers is enabled. The next example shows the output when support for 6to4 relay routers is disabled, as is the default in Oracle Solaris:


# /usr/sbin/6to4relay
6to4relay: 6to4 Relay Router communication support is disabled.

When support for 6to4 relay routers is enabled, you receive the following output:


# /usr/sbin/6to4relay
6to4relay: 6to4 Relay Router communication support is enabled.
IPv4 remote address of Relay Router=192.88.99.1

Configuring Name Service Support for IPv6

This section describes how to configure the DNS and NIS name services to support IPv6 services.


Note –

LDAP supports IPv6 without requiring IPv6-specific configuration tasks.


For full details for administering DNS, NIS, and LDAP, refer to the System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP).

ProcedureHow to Add IPv6 Addresses to DNS

  1. Log in to the primary or secondary DNS server 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. Edit the appropriate DNS zone file by adding AAAA records for each IPv6-enabled node:


    host-name  IN   AAAA 	host-address
    
  3. Edit the DNS reverse zone file and add PTR records:


    host-address IN   PTR   hostname
    

    For detailed information on DNS administration, refer to System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP).


Example 7–15 DNS Reverse Zone File

This example shows an IPv6 address in the reverse zone file.


$ORIGIN	ip6.int.	
8.2.5.0.2.1.e.f.f.f.9.2.0.0.a.0.6.5.2.9.0.0.0.0.0.0.0.0.2.0.0.0 \
	IN		PTR		vallejo.Eng.apex.COM.

Adding IPv6 Addresses to NIS

In Solaris 10 11/06 and earlier releases, two maps were added for NIS : ipnodes.byname and ipnodes.byaddr. These maps contained both IPv4 and IPv6 host name and address associations. Tools that are aware of IPv6 used the ipnodes NIS maps. The hosts.byname and hosts.byaddr maps contained only IPv4 host name and address associations. These maps are unchanged so that they can facilitate existing applications. Administration of the ipnodes maps is similar to the administration of the hosts.byname and hosts.byaddr maps. For Solaris 10 11/06, it is important that when you update the hosts maps with IPv4 addresses, the ipnode maps are also updated with the same information.


Note –

Subsequent releases of Oracle Solaris 10 do not use the ipnodes maps. The IPv6 functionality of the ipnodes maps is now maintained in the hosts maps.


For instructions on administering NIS maps, refer to Chapter 5, Setting Up and Configuring NIS Service, in System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP).

ProcedureHow to Display IPv6 Name Service Information

You can use the nslookup command to display IPv6 name service information.

  1. Under your user account, run the nslookup command.


    % /usr/sbin/nslookup
    

    The default server name and address appear, followed by the nslookup command's angle bracket prompt.

  2. View information about a particular host by typing the following commands at the angle bracket prompt:


    >set q=any
    >host-name
    
  3. Type the following command to view only AAAA records:


    >set q=AAAA
    hostname
    
  4. Quit the nslookup command by typing exit.


Example 7–16 Using nslookup to Display IPv6 Information

This example shows the results of nslookup in an IPv6 network environment.


%  /usr/sbin/nslookup
Default Server:  dnsserve.local.com
Address:  10.10.50.85
> set q=AAAA
> host85
Server:  dnsserve.local.com
Address:  10.10.50.85

host85.local.com      IPv6 address = 2::9256:a00:fe12:528
> exit

ProcedureHow to Verify That DNS IPv6 PTR Records Are Updated Correctly

In this procedure, you use the nslookup command to display PTR records for DNS IPv6.

  1. Under your user account, run the nslookup command.


    % /usr/sbin/nslookup
    

    The default server name and address display, followed by the nslookup command's angle bracket prompt.

  2. Type the following at the angle bracket prompt to see the PTR records:


    >set q=PTR
    
  3. Quit the command by typing exit.


Example 7–17 Using nslookup to Display PTR Records

The following example shows the PTR record display from the nslookup command.


%  /usr/sbin/nslookup
Default Server:  space1999.Eng.apex.COM
Address:  192.168.15.78
> set q=PTR
> 8.2.5.0.2.1.e.f.f.f.0.2.0.0.a.0.6.5.2.9.0.0.0.0.0.0.0.0.2.0.0.0.ip6.int

8.2.5.0.2.1.e.f.f.f.0.2.0.0.a.0.6.5.2.9.0.0.0.0.0.0.0.0.2.0.0.0.ip6.int name = 
vallejo.ipv6.Eng.apex.COM
ip6.int nameserver = space1999.Eng.apex.COM
> exit

ProcedureHow to Display IPv6 Information Through NIS

In this procedure, you use the ypmatch command to display IPv6 information through NIS:

  1. Under your user account, type the following to display IPv6 addresses in NIS:


    % ypmatch hostname hosts ipnodes.byname
    

    The information about the specified hostname is displayed.


    Note –

    Oracle Solaris releases after Solaris 10 11/06 no longer include the ipnodes maps. The IPv6 functionality of ipnodes is now maintained in the hosts maps.



Example 7–18 IPv6 Addresses Output by the ypmatch Command

For Solaris 10 11/06 and earlier releases, the following sample shows the results of a ypmatch operation on the ipnodes.byname database.


% ypmatch farhost hosts ipnodes.byname
2001:0db8:3c4d:15:a00:20ff:fe12:5286       farhost

ProcedureHow to Display IPv6 Information Independent of the Name Service

This procedure can be used for Solaris 10 11/06 and earlier releases only. For subsequent releases, you can perform the same operation on the hosts database.

  1. Under your user account, type the following command:


    % getent ipnodes hostname
    

    The information about the specified host-name is displayed.


Example 7–19 Displaying IPv6 Information in the ipnodes Database

The following sample shows the output of the getent command:


% getent ipnodes vallejo

2001:0db8:8512:2:56:a00:fe87:9aba    myhost myhost
fe80::56:a00:fe87:9aba     myhost myhost