Interface configuration files contol the software interfaces for individual network devices.
RHEL/CentOS 6 does not configure network interfaces on default installation. Also, it is configured to use NetworkManager. To enable networking interface and disable NetworkManager please follow instructions below.
The /etc/sysconfig/network-scripts/ifcfg-eth0 content looks as follows on default installation.
DEVICE=”eth0″
HWADDR=specifc mac address
NM_CONTROLLED=”yes”
ONBOOT=”no
For DHCP, configure the interface as follows.
DEVICE=”eth0″
HWADDR=specifc mac address
NM_CONTROLLED=”no”
ONBOOT=”yes”
BOOTPROTO=”dhcp”
Restart the network after configuration.
/etc/init.d/network restart
or
service network restart
For Static ip, configure it as follows
DEVICE=”eth0″(the name of device that the configuration controls)
HWADDR=specifc mac address(ensure that the interfaces assigned the correct device names regardless of the configured load order for each NIC's module.)
NM_CONTROLLED=”no”(NetworkManager is permitted to configure this device.)
ONBOOT=”yes”(this device should activated at boot-time.)
BOOTPROTO=”static”(boot time protocol.)
IPADDR=ip address here.(IPv4 address.)
NETMASK=netmask here.(netmask value.)
Change the /etc/sysconfig/network to have the GATEWAY.
NETWORKING=yes (networking should be configured)
HOSTNAME=www.linuxbyanish.com
GATEWAY=gateway address here.
Restart the network after configuration.
/etc/init.d/network restart(init.d contains scripts used by System V init tools---SystemVinit.)
To see current ip address information for eth0:-
# ip addr show eth0
To see routing information:
# ip route show
ifconfig command example
Simply type the ifconfig command as follows to display eth0 IP information:
# ifconfig eth0
eth0 Link encap:Ethernet HWaddr b8:ac:6f:65:31:e5
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::baac:6fff:fe65:31e5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:308560 errors:0 dropped:0 overruns:0 frame:0
TX packets:217836 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:431112624 (431.1 MB) TX bytes:20994801 (20.9 MB)
Interrupt:17
type the following command to display an IP and its netmask:
# ifconfig eth0 | grep ‘inet addr:’
Sample outputs:
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
What is the difference between /etc/init/ and /etc/init.d/?
/etc/init.d contains scripts used by the System V init tools (SysVinit). This is the traditional service management package for Linux, containing the init program (the first process that is run when the kernel has finished initializing¹) as well as some infrastructure to start and stop services and configure them. Specifically, files in /etc/init.d are shell scripts that respond to start, stop, restart, and (when supported) reload commands to manage a particular service. These scripts can be invoked directly or (most commonly) via some other trigger (typically the presence of a symbolic link in /etc/rc?.d/).
/etc/init contains configuration files used by Upstart. Upstart is a young service management package championed by Ubuntu. Files in /etc/init are configuration files telling Upstart how and when to start, stop, reload the configuration, or query the status of a service. As of lucid, Ubuntu is transitioning from SysVinit to Upstart, which explains why many services come with SysVinit scripts even though Upstart configuration files are preferred. In fact, the SysVinit scripts are processed by a compatibility layer in Upstart.
.d in directory names typically indicates a directory containing many configuration files or scripts for a particular situation (e.g. /etc/apt/sources.list.d contains files that are concatenated to make a virtual sources.list; /etc/network/if-up.d contains scripts that are executed when a network interface is activated). This structure is usually used when each entry in the directory is provided by a different source, so that each package can deposit its own plug-in without having to parse a single configuration file to reference itself. In this case, it just happens that “init” is a logical name for the directory, SysVinit came first and used init.d, and Upstart used plain init for a directory with a similar purpose (it would have been more “mainstream”, and perhaps less arrogant, if they'd used /etc/upstart.d instead).