Under Red Hat Enterprise Linux, all network communications occur between configured software interfaces and physical networking devices connected to the system.
The configuration files for network interfaces, and the scripts used to activate and deactivate them, are located in the /etc/sysconfig/network-scripts/ directory. Although the number and type of interface files can differ from system to system, there are three categories of files that exist in this directory:
Interface configuration files
Interface control scripts
Network function files
The files in each of these categories work together to enable various network devices.
This chapter explores the relationship between these files and how they are used.
Before delving into the interface configuration files, let us first itemize the primary configuration files used in network configuration. Understanding the role these files play in setting up the network stack can be helpful when customizing a Red Hat Enterprise Linux system.
The primary network configuration files are as follows:
/etc/hosts — The main purpose of this file is to resolve hostnames that cannot be resolved any other way. It can also be used to resolve hostnames on small networks with no DNS server. Regardless of the type of network the computer is on, this file should contain a line specifying the IP address of the loopback device (127.0.0.1) as localhost.localdomain. For more information, refer to the hosts man page.
/etc/resolv.conf — This file specifies the IP addresses of DNS servers and the search domain. Unless configured to do otherwise, the network initialization scripts populate this file. For more information about this file, refer to the resolv.conf man page.
/etc/sysconfig/network — Specifies routing and host information for all network interfaces. For more information about this file and the directives it accepts, refer to Section 4.1.25 /etc/sysconfig/network.
/etc/sysconfig/network-scripts/ifcfg-<interface-name> — For each network interface, there is a corresponding interface configuration script. Each of these files provide information specific to a particular network interface. Refer to Section 8.2 Interface Configuration Files for more information on this type of file and the directives it accepts.
The /etc/sysconfig/networking/ directory is used by the Network Administration Tool (system-config-network) and its contents should not be edited manually. In addition, any use of the Network Administration Tool, even launching the application, will override any directives previously set in /etc/sysconfig/network-scripts. Using only one method for network configuration is strongly encouraged, due to the risk of configuration deletion.
For more information about configuring network interfaces using the Network Administration Tool, refer to the chapter titled Network Configuration in the Red Hat Enterprise Linux System Administration Guide.