Each Linux network interface has an ifcfg configuration file located in /etc/sysconfig/network-scripts. The device name is added to the end of the filename. So, for example, the configuration file for the first Ethernet interface is called ifcfg-eth0.
This file is created and updated by the Network Configuration program, so you don’t have to edit it directly (if you don’t want to).
Here’s a typical ifcfg file for an interface that has a static IP address:
DEVICE=eth0 BOOTPROTO=none ONBOOT=yes USERCTL=no IPADDR=192.168.1.200 NETMASK=255.255.255.0 BROADCAST=192.168.1.255 NETWORK=192.168.1.0
Here’s an example for an interface that uses DHCP:
DEVICE=eth0 BOOTPROTO=dhcp ONBOOT=yes USERCTL=no
Here, the ifcfg file doesn’t have to specify the IP address information because the interface gets that information from a DHCP server.
The following paragraphs describe the settings that you’re most likely to see in this file:
DEVICE: The name of the device, such as eth0 or eth1.
USERCTL: Specifies YES or NO to indicate whether local users are allowed to start or stop the network.
ONBOOT: Specifies YES or NO to indicate whether the device should be enabled when Linux boots up.
BOOTPROTO: Specifies how the device gets its IP address. Possible values are NONE for static assignment, DHCP, or BOOTP.
BROADCAST: The broadcast address used to send packets to everyone on the subnet. For example: 192.168.1.255.
NETWORK: The network address. For example: 192.168.1.0.
NETMASK: The subnet mask. For example: 255.255.255.0.
IPADDR: The IP address for the adapter.