Go to main content

Configuring an Oracle® Solaris 11.3 System as a Router or a Load Balancer

Exit Print View

Updated: December 2018

How to Configure an IPv6-Enabled Router

The following procedure assumes that you have already configured the system for IPv6. For the procedures, refer to Chapter 3, Configuring and Administering IP Interfaces and Addresses in Oracle Solaris in Configuring and Managing Network Components in Oracle Solaris 11.3.

  1. Become an administrator.

    For more information, see Using Your Assigned Administrative Rights in Securing Users and Processes in Oracle Solaris 11.3.

  2. Configure IPv6 packet forwarding on all interfaces of the router.
    # ipadm set-prop -p forwarding=on ipv6
  3. Start the routing daemon.

    The in.ripngd daemon handles IPv6 routing. Enable IPv6 routing by using either of the following commands:

    • Use the routeadm command:

      # routeadm -e ipv6-routing -u

      where –e option enables IPv4 routing and –u option applies the current configuration to the running system.

    • Use the appropriate SMF command:

      # svcadm enable ripng:default

    For more information about the routeadm command, see the routeadm(1M) man page.

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

    Specify the site prefix to be advertised by the router and other configuration information in the /etc/inet/ndpd.conf file. 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 the ndpd.conf(4) man page.

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

  6. To configure the site prefix on the various interfaces of the router, add additional text to the /etc/inet/ndpd.conf file.

    The text should be added in the following format:

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

    In the following example, /etc/inet/ndpd.conf file configures the router to advertise the site prefix 2001:0db8:3c4d::/48 over the interfaces net0 and net1.

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

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

  8. Display the interface configured for IPv6.
    # ipadm show-addr
    ADDROBJ      TYPE       STATE   ADDR
    lo0/v4       static     ok
    net0/v4      static     ok
    net1/v4      static     ok
    net0/v6      addrconf   ok      fe80::203:baff:fe11:b115/10
    lo0/v6       static     ok      ::1/128
    net0/v6a     static     ok      2001:db8:3c4d:15:203:baff:fe11:b115/64
    net1/v6      addrconf   ok      fe80::203:baff:fe11:b116/10
    net1/v6a     static     ok      2001:db8:3c4d:16:203:baff:fe11:b116/64

    In the output, each interface that was configured for IPv6 now has two addresses. The entry with the address object name such as interface/v6 shows the link-local address for that interface. The entry with the address object name such as interface/v6a shows a global IPv6 address. In addition to the interface ID, this address includes the site prefix that you configured in the /etc/ndpd.conf file. Note that the designation v6a is a randomly defined string. You can define other strings to constitute the second part of the address object name provided that the interface reflects the interface over which you are creating the IPv6 addresses, for example, net0/mystring, net0/ipv6addr.

See Also