在Linux中,为了解决一些网络访问的问题,有时需要对一个网卡配置多个IP,在一些资料中,称为“Adds aliases for Device!”。
以下是在普通以太网类型的网卡中的常用的几个配置选项:
  DEVICE=eth0 #定义物理设备的名称。
  ONBOOT=yes #可选yes、no,是否在启动时激活网卡。
  BOOTPROTO=static #使用的协议类型,可选static、dhcp、bootp、none。
  HWADDR=00:12:34:56:78:AB #MAC。
  IPADDR=192.168.1.2 #设置网络IP地址
  NETMASK=255.255.255.0 #设置子网掩码
  GATEWAY=192.168.1.1 #设置网关
  BROADCAST=192.168.1.255 #设置广播地址
  USERCTL=no #可选yes、no,是否允许非root用户控制该设备
  TYPE=Ethernet #设置网卡类型
  配置多个IP地址,可以分为以下两种情形,一是额外配置少数的IP地址,例如为某个主机增加一个IP地址;二是为保留某个网段中的批量连续的多个IP地址,一次性增加多个。
下面,将简要对这两种情形的配置过程进行分析。
针对第一种情形,我们假设在上面的配置基础上添加一个IP地址:192.168.1.3,子网掩码等参数不变。配置步骤如下,先将对应的配置文件生成一个副本,在使用cp命令时,最好加上“-a”参数,保留原始文件的属性,避免因为权限等因素,导致后续的配置中出现网络无法启动的故障。命令如下:
  #cd /etc/sysconfig/network-scripts/
  #cp -a ifcfg-eth0 ifcfg-eth0:1
然后使用vim等编辑器打开“ifcfg-eth0:1”文件,参考上面的各选项。新的“ifcfg-eth0:1”文件中,只需要保留以下内容:
  DEVICE=eth0
  IPADDR=192.168.1.3
  NETMASK=255.255.255.0
其他的选项,可以从主配置文件中获取。
针对第二种情形,我们假设需要跨网段添加192.168.2.1~~192.168.2.100,共100个IP,子网掩码为255.255.255.0,步骤如下:
  #cd /etc/sysconfig/network-scripts/
  #cp -a ifcfg-eth0 ifcfg-eth0-range0
然后修改“ifcfg-eth0-range0”文件,在这个文件中,需做如下变化:
  DEVICE=eth0
  IPADDR_START=192.168.2.1 #设置地址段的起始IP
  IPADDR_END=192.168.2.100 #设置地址段的结束IP
  NETMASK=255.255.255.0
  CLONENUM_START=”20” #设置虚拟接口(CLONE--克隆)的起始“编号”
#在本例中,将从20开始,21,22,23……
  NO_ALIASROUTING=yes #该选项可以设置在主配置文件中(ifcfg-eth0)
#虚拟接口可以继承主配置文件中的设置,其作用是避免虚拟接口在从新定义路由信息,导致路由访问缓慢的问题。当然,也可以根据实际的需要进行定义