linux绑定多个ip(转载)

在Linux下有时候须要给一个网卡绑定多个IP,本文介绍在Redhat系列(redhat,Fedora Core,Centos)中的实现方法和一种在Gentoo等其余Linux中广泛适用的方法。linux

一、单网卡绑定多IP在Redhat系列中的实现方法服务器

假设须要绑定多IP的网卡是eth0,请在/etc/sysconfig/network-scripts目录里面建立一个名为ifcfg-eth0:0的文件,网络

内容样例为:
DEVICE=”eth0:0″
IPADDR=”192.168.0.2″
BROADCAST=”172.168.0.255″
NETMASK=”255.255.255.0″
ONBOOT=”yes”  
spa

其中的DEVICE为设备的名称,IPADDR为此设备的IP地址,BROADCAST是广播地址,NETMASK为子网掩码,ONBOOT 表示在系统启动时自动启动。接口

若是须要再绑定多一个IP地址,只须要把文件名和文件内的DEVICE中的eth0:x加一便可。ip

LINUX最多能够支持255个IP别名ci

二、广泛适用的单网卡绑定多IP实现方法编译

ifconfig eth0:1 192.168.0.3 broadcast 192.168.0.255 netmask 255.255.255.0ast

能够把上述命令加在启动自运行文件里面,在Gentoo下是/etc/conf.d/local.start,而某些版本的Linux是/etc/rc.d/rc.local。class

三、多网卡共用单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或者/etc/conf.d/local.start调用,以便一开机就生效。

bonding对于服务器来是个比较好的选择,在没有千兆网卡时,用两三块100兆网卡做 bonding,可大大提升服务器到交换机之间的带宽。可是须要在交换机上设置链接bonding 网卡的两个口子映射为同一个虚拟接口。

相关文章
相关标签/搜索