Delivered each Tuesday, TechRepublic’s free Linux NetNote provides tips, articles, and other resources to help you hone your Linux skills. Automatically sign up today!
When you set up a Linux system’s network, you
typically assign one IP address per network interface card (NIC).
This serves as the primary address for the NIC. For example, a
firewall may have one Ethernet interface (e.g., eth0) assigned an
external ISP-supplied IP, whereas the other interface (e.g., eth1)
would have a local IP used on the local LAN.
But in a situation that requires multiple IP
addresses on a machine (all of which connect to the same network),
you don’t need one NIC per IP address. Linux is capable of mapping
multiple IP addresses to a single NIC by using IP aliasing.
To set up an IP alias, execute the
# ifconfig eth0:0 192.168.5.12 netmask
This assigns the IP address 192.168.5.12 to
eth0 as the first alias (noted as eth0:0) on eth0. If you look at
the output of ifconfig,
you’ll see the distinct IP address for eth0 and another for
If you need to add another IP address, just run
the same command as root, and increment the alias number. In this
example, the next alias number would be eth0:1.
On Mandrakelinux, Red Hat, and similar systems,
you can make aliases automatic by creating files in
/etc/sysconfig/network-scripts/. In this directory, create a new
file called ifcfg-eth0:0 that contains the following contents:
On systems that don’t use these network
scripts, just add the call to ifconfig directly in your
startup script (usually /etc/rc.d/rc.local).