System Administration Guide: IP Services
Previous Next

Configuring Systems on the Local Network

Network software installation occurs along with the installation of the operating system software. At that time, certain IP configuration parameters must be stored in appropriate files so that they can be read at boot time.

The network configuration process involves creating or editing the network configuration files. How configuration information is made available to a system's kernel is conditional. The availability depends on whether these files are stored locally (local files mode) or acquired from the network configuration server (network client mode).

The parameters that are supplied during network configuration follow:

  • The IP address of each network interface on every system.

  • The host names of each system on the network. You can type the host name in a local file or a name service database.

  • The NIS, LDAP, or DNS domain name in which the system resides, if applicable.

  • The default router addresses. You supply this information if you have a simple network topology with only one router attached to each network. You also supply this information if your routers do not run routing protocols such as the Router Discovery Server Protocol (RDISC) or the Router Information Protocol (RIP). For more information on default routers, refer to Packet Forwarding and Routing on IPv4 Networks See Table 5-1 for a list of routing protocols supported in the Solaris OS.

  • Subnet mask (required only for networks with subnets).

If the Solaris installation program detects more one interface on the system, you can optionally configure the additional interfaces during installation. For complete instructions, see Solaris Express Installation Guide: Basic Installations.

This chapter contains information on creating and editing local configuration files. See System Administration Guide: Naming and Directory Services (DNS, NIS, and LDAP) for information on working with name service databases.

How to Configure a Host for Local Files Mode

Use this procedure for configuring TCP/IP on a host that runs in local files mode.

  1. 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. Change to the /etc directory.
  3. Verify that the correct host name is set in the /etc/nodename file.

    When you specify the host name of a system during Solaris installation, that host name is entered into the /etc/nodename file. Make sure that the node name entry is the correct host name for the system.

  4. Verify that an /etc/hostname.interface file exists for each network interface on the system.

    For file syntax and basic information about the /etc/hostname.interface file, refer to Basics for Administering Physical Interfaces.

    The Solaris installation program requires you to configure at least one interface during installation. The first interface that you configure automatically becomes the primary network interface. The installation program creates an /etc/hostname.interface file for the primary network interface and any other interfaces that you optionally configure at installation time.

    If you configured additional interfaces during installation, verify that each interface has a corresponding /etc/hostname.interface file. You do not need to configure more than one interface during Solaris installation. However, if you later want to add more interfaces to the system, you must manually configure them.

    For steps for manually configuring interfaces, refer to How to Configure a Physical Interface After System Installation, for releases starting with Solaris 10 1/06.

  5. Verify that the entries in the /etc/inet/hosts file are current.

    The Solaris installation program creates entries for the primary network interface, loopback address, and, if applicable, any additional interfaces that were configured during installation.

    1. Make sure that the existing entries in /etc/inet/hosts are current.
    2. (Optional) Add the IP addresses and corresponding names for any network interfaces that were added to the local host after installation.
    3. (Optional) Add the IP address or addresses of the file server, if the /usr file system is NFS mounted.
  6. Type the host's fully qualified domain name in the /etc/defaultdomain file.

    For example, suppose host tenere was part of the domain deserts.worldwide.com. Therefore, you would type deserts.worldwide.com in /etc/defaultdomain. See /etc/defaultdomain File for more information.

  7. Type the router's name in the /etc/defaultrouter file.

    See /etc/defaultrouter File for information about this file.

  8. Type the name of the default router and its IP addresses in the /etc/inet/hosts file.

    Additional routing options are available, as discussed in How to Configure Hosts for Network Client Mode. You can apply these options to a local files mode configuration.

  9. Add the network mask for your network, if applicable:
    • If the host gets its IP address from a DHCP server, you do not have to specify the network mask.

    • If you have set up a NIS server on the same network as this client, you can add netmask information into the appropriate database on the server.

    • For all other conditions, do the following:

    1. Type the network number and the netmask in the /etc/inet/netmasks file.

      Use the following format:

      network-number netmask

      For example, for the Class C network number 192.168.83, you would type:

      192.168.83.0 255.255.255.0

      For CIDR addresses, convert the network prefix into the equivalent dotted decimal representation. Network prefixes and their dotted decimal equivalents can be found in Table 2-3. For example, use the following to express the CIDR network prefix 192.168.3.0/22.

      192.168.3.0 255.255.252.0
    2. Change the lookup order for netmasks in /etc/nsswitch.conf, so that local files are searched first:
      netmasks:   files nis
  10. Reboot the system.

How to Set Up a Network Configuration Server

Information for setting up installation servers and boot servers is found in Solaris Express Installation Guide: Basic Installations.

  1. 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. Change to the root (/) directory of the prospective network configuration server.
  3. Turn on the in.tftpd daemon by creating the directory /tftpboot:
    # mkdir /tftpboot

    This command configures the system as a TFTP, bootparams, and RARP server.

  4. Create a symbolic link to the directory.
    # ln -s /tftpboot/. /tftpboot/tftpboot
  5. Enable the tftp line in the /etc/inetd.conf file.

    Check that the entry reads as follows:

    tftp dgram udp6 wait root /usr/sbin/in.tftpd in.tftpd -s /tftpboot

    This line prevents in.tftpd from retrieving any file other than the files that are located in /tftpboot.

  6. Edit the hosts database.

    Add the host names and IP addresses for every client on the network.

  7. Edit the ethers database.

    Create entries for every host on the network that runs in network client mode.

  8. Edit the bootparams database.

    See bootparams Database. Use the wildcard entry or create an entry for every host that runs in network client mode.

  9. Convert the /etc/inetd.conf entry into a Service Management Facility (SMF) service manifest, and enable the resulting service:
    # /usr/sbin/inetconv
  10. Verify that in.tftpd is working correctly.
    # svcs network/tftp/udp6

    You should receive output resembling the following:

    STATE          STIME    FMRI
    online         18:22:21 svc:/network/tftp/udp6:default
More Information
Administering the in.tftpdDaemon

The in.tftpd daemon is managed by the Service Management Facility. Administrative actions on in.tftpd, such as enabling, disabling, or restarting, can be performed using the svcadm command. Responsibility for initiating and restarting this service is delegated to inetd. Use the inetadm command to make configuration changes and to view configuration information for in.tftpd. You can query the service's status by using the svcs command. For an overview of the Service Management Facility, refer to Chapter 14, Managing Services (Overview), in System Administration Guide: Basic Administration.

Configuring Network Clients

Network clients receive their configuration information from network configuration servers. Therefore, before you configure a host as a network client you must ensure that at least one network configuration server is set up for the network.

How to Configure Hosts for Network Client Mode

Do the following procedure on each host to be configured in network client mode.

  1. 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. Search the /etc directory for the nodename file.

    If such a file exists, delete it.

    Eliminating /etc/nodename causes the system to use the hostconfig program to obtain the host name, domain name, and router addresses from the network configuration server. See Configuring Systems on the Local Network .

  3. Create the /etc/hostname.interface file, if it does not exist.

    Ensure that the file is empty. An empty /etc/hostname.interface file causes the system to acquire the IPv4 address from the network configuration server.

  4. Ensure that the /etc/inet/hosts file contains only the localhost name and IP address of the loopback network interface.
    # cat /etc/inet/hosts
    # Internet host table
    #
    127.0.0.1       localhost

    The IPv4 loopback interface has the IP address 127.0.0.1.

    For more information, see Loopback Address. The file should not contain the IP address and host name for the local host (primary network interface).

  5. Check for the existence of an /etc/defaultdomain file.

    If such a file exists, delete it.

    The hostconfig program automatically sets the domain name. To override the domain name that is set by hostconfig, type the substitute domain name in the /etc/defaultdomain file.

  6. Ensure that the search paths in the client's /etc/nsswitch.conf file reflect the name service requirements for your network.

How to Change the IPv4 Address and Other Network Configuration Parameters

This procedure explains how to modify the IPv4 address, host name, and other network parameters on a previously installed system. Use the procedure for modifying the IP address of a server or networked standalone system. The procedure does not apply to network clients or appliances. The steps create a configuration that persists across reboots.


Note - The instructions apply specifically to changing the IPv4 address of the primary network interface. To add another interface to the system, refer to How to Configure a Physical Interface After System Installation.


In almost all cases, the following steps use traditional IPv4 dotted decimal notation to specify the IPv4 address and subnet mask. Alternatively, you can use CIDR notation to specify the IPv4 address in all the applicable files in this procedure. For an introduction to CIDR notation, see IPv4 Addresses in CIDR Format.

  1. 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. If the system's host name must change, modify the host name entry in the /etc/nodename file.
  3. Modify the IP address and, if applicable, the host name in the /etc/inet/hosts file or equivalent hosts database.
  4. Modify the IP address in the /etc/hostname.interface file for the primary network interface.

    You can use any of the following as the entry for the primary network interface in the /etc/hostnameinterface file:

    • IPv4 address, expressed in traditional dotted decimal format

      Use the following syntax:

      IPv4 address
      (Optional) subnet mask

      Here is an example:

      # vi hostname.eri0
      10.0.2.5
      netmask + 255.0.0.0

      The netmask entry is optional. If you do not specify it, the default netmask is assumed.

    • IPv4 address, expressed in CIDR notation, if appropriate for your network configuration.

      IPv4 address/network prefix

      Here is an example:

      # vi hostname.eri0
      10.0.2.5/8

      The CIDR prefix designates the appropriate netmask for the IPv4 address. For example, the /8 above indicates the netmask 255.0.0.0.

    • Host name.

      To use the system's host name in the /etc/hostname.interface file, be sure that the host name and associated IPv4 address are also in the hosts database.

  5. If the subnet mask has changed, modify the subnet entries in the following files:
    • /etc/netmasks

    • (Optional) /etc/hostname.interface

  6. If the subnet address has changed, change the IP address of the default router in /etc/defaultrouter to that of the new subnet's default router.
  7. Reboot the system.
    # reboot -- -r
Example 5-1 Modifying the IPv4 Address and Other Network Parameters to Persist Across Reboots

This example shows how to change the following network parameters of a system that is moved to another subnet:

  • IP address for the primary network interface eri0 changes from 10.0.0.14 to 192.168.55.14.

  • Host name changes from myhost to mynewhostname.

  • Netmask changes from 255.0.0.0 to 255.255.255.0.

  • Default router address changes to 192.168.55.200.

Check the system's current status:

# hostname
myhost
# ifconfig -a
lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
eri0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 10.0.0.14 netmask ff000000 broadcast 10.255.255.255
        ether 8:0:20:c1:8b:c3 

Next, change the system's host name and the IP address of eri0 in the appropriate files:

# vi /etc/nodename mynewhostname
# vi /etc/inet/hosts # # Internet host table # 127.0.0.1 localhost 192.168.55.14 mynewhostname loghost
# vi /etc/hostname.eri0 192.168.55.14 netmask + 255.255.255.0

Finally, change the netmask and the IP address of the default router.

# vi /etc/netmasks.
.
.
192.168.55.0 255.255.255.0
# vi /etc/defaultrouter
192.168.55.200 #moved system to 192.168.55 net
#

After making these changes, reboot the system.

# reboot -- -r

Verify that the configuration you just set is maintained after the reboot:

# hostname
mynewhostname
# ifconfig -a

lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
eri0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 192.168.55.14 netmask ffffff00 broadcast 10.255.255.255
        ether 8:0:20:c1:8b:c3 
Example 5-2 Changing the IP Address and Host Name For the Current Session

This example shows how to change a host's name, IP address of the primary network interface, and subnet mask for the current session only. If you reboot, the system reverts to its previous IP address and subnet mask. The IP address for the primary network interface eri0 changes from 10.0.0.14 to 192.168.34.100.

# ifconfig -alo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
eri0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 10.0.0.14 netmask ff000000 broadcast 10.255.255.255
        ether 8:0:20:c1:8b:c3 
# ifconfig eri0 192.168.34.100 netmask 255.255.255.0 broadcast + up
# vi /etc/nodename
mynewhostname

# ifconfig -a
lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
eri0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 192.168.34.100 netmask ffffff00 broadcast 10.255.255.255
        ether 8:0:20:c1:8b:c3 
# hostname
mynewhostname
Example 5-3 Changing the IPv4 Address for the Current Session, Using CIDR Notation

This example shows how to change a host name and IP address for the current session only, using CIDR notation. If you reboot, the system reverts to its previous IP address and subnet mask. The IP address for the primary network interface, eri0, changes from 10.0.0.14 to 192.168.6.25/27.

# ifconfig -a
lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
eri0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 10.0.0.14 netmask ff000000 broadcast 10.255.255.255
        ether 8:0:20:c1:8b:c3 
# ifconfig eri0 192.168.6.25/27 broadcast + up
# vi /etc/nodename
mynewhostname
# ifconfig -a
lo0: flags=1000849 <UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000 
eri0: flags=1000843 <UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet 192.168.06.25 netmask ffffffe0 broadcast 10.255.255.255
        ether 8:0:20:c1:8b:c3 
# hostname
mynewhostname

When you use CIDR notation for the IPv4 address, you do not have to specify the netmask. ifconfig uses the network prefix designation to determine the netmask. For example, for the 192.168.6.0/27 network, ifconfig sets the netmask ffffffe0. If you had used the more common /24 prefix designation, the resulting netmask is ffffff00. Using the /24 prefix designation is the equivalent of specifying the netmask 255.255.255.0 to ifconfig when configuring a new IP address.

See Also

To change the IP address of an interface other than the primary network interface, refer to System Administration Guide: Basic Administration and How to Configure a Physical Interface After System Installation.

Previous Next