RedHat/Centos

关注公众号 jb51net

关闭
操作系统 > RedHat/Centos >

LINUX系统一个网卡绑定多个IP的方法

佚名

一个网卡绑定多个IP

linux的网络设备配置文件存放在/etc/sysconfig/network-scripts里面,
对于以太网的第一个网络设备,配置文件名一般为ifcfg-eth0。
如果需要为第一个网络设备多绑定一个IP地址,只需要在
/etc/sysconfig/network-scripts目录里面创建一个名为ifcfg-eth0:0的文件,
内容样例为:

DEVICE="eth0:0"
IPADDR="211.100.10.119"
NETMASK="255.255.255.0"
ONBOOT="yes"

其中的DEVICE为设备的名称,
IPADDR为此设备的IP地址,
NETMASK为子网掩码
ONBOOT 表示在系统启动时自动启动。
如果需要再绑定多一个IP地址,
只需要把文件名和文件内的DEVICE中的eth0:x加一即可。
LINUX最多可以支持255个IP别名


多个网卡绑定一个IP

使用多块网卡虚拟成为一块网卡,具有相同的IP地址。
这项技术其实在sun和cisco中已经存在,分别称为Trunking和etherchannel技术,
在linux中,这种技术称为bonding。
因为bonding在内核2.4.x中已经包含了,
只需要在编译的时候把网络设备选项中的 Bonding driver support选中就可以了。
  然后,重新编译核心,重新起动计算机,执行如下命令:

  ismod bonding
  ifconfig eth0 down
  ifconfig eth1 down
  ifconfig bond0 ipaddress
  ifenslave bond0 eth0
  ifenslave bond0 eth1

  现在两块网卡已经象一块一样工作了,这样可以提高集群节点间的数据传输。
  你最好把这几句写成一个脚本,再由/etc/rc.d/rc.local调用,
以便一开机就生效。
  bonding对于服务器来是个比较好的选择,在没有千兆网卡时,
用两三块100兆网卡作 bonding,可大大提高服务器到交换机之间的带宽。
但是需要在交换机上设置连接bonding 网卡的两个口子映射为同一个虚拟接口。