System Administration Guide, Volume 3

Enabling IPv6 Nodes

This section provides procedures you might need to configure IPv6 nodes on your network.


Note -

The term node in this context refers either to a Solaris server or client workstation.


Enabling IPv6 Nodes Task Map

Table 17-1 Enabling IPv6 Nodes Task Map

Task 

Description 

For Instructions, Go to ... 

Enable IPv6 on a node 

Involves touching hostname6.interface file, displaying addresses, and entering them in the /etc/inet/ipnodes file. (See note.)

"How to Enable IPv6 on a Node"

Configure a Solaris IPv6 router 

Involves adding entries to the indp.conf file.

"How to Configure a Solaris IPv6 Router"

Add IPv6 addresses to NIS and NIS+ 

Involves adding entries to the /etc/ipnodes file.

"How to Add IPv6 Addresses to NIS and NIS+"

Add IPv6 addresses to DNS 

Involves adding AAAA records to the DNS zone and reverse zone file. 

"How to Add IPv6 Addresses to DNS"


Note -

You can enable IPv6 on a system when you install the Solaris software. If you answered yes to enable IPv6 during the installation process, you can omit the following IPv6 enabling procedure.


How to Enable IPv6 on a Node

  1. Become superuser on the system where you want to enable IPv6.

  2. On a command line, type the following for each interface.


    # touch /etc/hostname6.interface
    

    Interface

    Interface name, such as le0, le1.

  3. Reboot.


    Note -

    Rebooting sends out router discovery packets and the router responds with a prefix, enabling the node to configure the interfaces with an IP address. Rebooting also restarts key networking daemons in IPv6 mode.


  4. On a command line, type the following command to display the IPv6 addresses.


    # ifconfig -a
    
  5. Add the IPv6 address to the appropriate name service as follows:

    1. For NIS and NIS+, see "How to Add IPv6 Addresses to NIS and NIS+".

    2. For DNS, see "How to Add IPv6 Addresses to DNS".

How to Configure a Solaris IPv6 Router

  1. Become superuser on the system that will act as a router.

  2. Edit the file /etc/inet/ndpd.conf with subnet prefixes by adding one or more of the following entries.

    See the in.ndpd(1M) man page for a list of variables and allowable values. For more information about the ndpd.conf file, see the ndpd.conf(4) man page.

    1. Add entries specifying router behavior for all interfaces.


      ifdefault variable value
      
    2. Add entries specifying prefix advertisement default behaviors.


      prefixdefault variable value
      
    3. Add sets per interface parameter entries.


      if interface variable value
      
    4. Add advertises per interface prefix information entries.


      prefix prefix/length interface variable value
      
  3. Reboot the system.


Note -

Neighbor discovery (in.ndpd) relays to the hosts their subnet address prefixes. Also, the RIPng routing protocol (in.ripngd) runs automatically.


Example--ndpd.conf Router Configuration File


# Send router advertisements out all NICs
ifdefault AdvSendAdvertisements on
# Advertise a global prefix and a 
# site local prefix on three interfaces.
# 0x9255 = 146.85
prefix 2:0:0:9255::0/64	 	hme0
prefix fec0:0:0:9255::0/64 	hme0
# 0x9256 = 146.86
prefix 2:0:0:9256::0/64 	hme1
prefix fec0:0:0:9256::0/64	hme1
# 0x9259 = 146.89
prefix 2:0:0:9259::0/64		hme2
prefix fec0:0:0:9259::0/64	hme2

How to Add IPv6 Addresses to NIS and NIS+

A new table has been added for NIS+ named ipnodes.org_dir. It contains both IPv4 and IPv6 addresses for a host. The existing hosts.org_dir table, which contains only IPv4 addresses for a host, remains as it is to facilitate existing applications. You must keep both the hosts.org_dir and ipnodes.org_dir tables consistent with the IPv4 addresses. This does not happen automatically. See "IPv6 Extensions to Solaris Name Services" for an overview.

Administration of the new ipnodes.org_dir table is similar to administering the hosts.org_dir. The same tools and utilities that were used in administering the previous NIS+ tables are valid for ipnodes.org_dir. See Solaris Naming Administration Guide for complete details on how to manipulate the NIS+ table.

The following procedure merges the entries from /etc/inet/ipnodes into the ipnodes.org_dir table (in verbose mode). The NIS+ table was probably created by nistbladm(1), nissetup(1M), or nisserver(1M).

    On a command line, type the following command:


    % nisaddent -mv -f /etc/inet/ipnodes ipnodes
    

Use the following procedure to display the ipnodes.org_dir table.

    On a command line, type the following command:


    % nisaddent -d ipnodes
    

Two new maps have been added for NIS: ipnodes.byname and ipnodes.byaddr. These maps contain both IPv4 and IPv6 hostname and address associations. The existing hosts.byname and hosts.byaddr maps, which contain only IPv4 hostname and address associations, will remain as they are to facilitate existing applications. Administration of the new maps is similar to the maintenance of the older hosts.byname and hosts.byaddr maps. Again, it is important that when you update the hosts maps with IPv4 addresses that the new ipnode maps are also updated with the same information.


Note -

IPv6 aware tools will use the new NIS and NIS+ maps and tables exclusively.


How to Add IPv6 Addresses to DNS

  1. Become superuser on system that has DNS.

  2. Edit the appropriate DNS zone file by adding AAAA records for the IPv6-enabled host, using the following format.


    host-name  IN   AAAA 	host-address
    
  3. Edit the DNS reverse zone file and add PTR records, using the following format.


    host-address IN   PTR   host-name
    

See RFC 1886 for more information about AAAA and PTR records.

Example--DNS Zone File


vallejo		IN		AAAA   2::9256:a00:20ff:fe12
IN		AAAA   fec0::9256:a00:20ff:fe12:528

Example--DNS 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.
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.0.c.e.f \
	IN		PTR		vallejo.Eng.apex.COM.