Linux操作系统中的多网卡绑定技术
o实施工程实,Linux操作系实中的多实定技实网卡
目前PC服实器配置了至少4个网卡网卡网板实。通实多实定~可以实系实提高更高的实可性和可用性。如果实接到多台堆的以太交实机上~可以防止出实~交实机出靠叠网网卡
实等故障。
bond模式实明
miimon
指定MII实路实控实率~实位是毫秒(ms)。实定实实实实每将决个slave实路实实率。状0表示禁止MII实路实控。100可以作实一好的初始考实。下面的个很参use_carrier实实影如将会响果实实实路实。更多的信息可以考“高可性”章实。缺省实实状参靠0。
mode
指定bonding的策略。缺省是balance-rr ;round robin~循实实,。可实的mode包括,
balance-rr 或者 0
Round-robin;循实实,策略,按实序实实据包~第一可用的数从个slave到最后一可个用的slave。实模式提供了实实均衡和容实机制。
active-backup 或者 1
Active-backup;激活-实,策略,只有一份个slave是激活的(active)。其他的slave只有在前激活的当slave故障后才实实激活的会(active)。外面看~从来bond的MAC地址是唯一的~以避免switch(交实机)实生混。乱
在bonding 2.6.2和以后的版本中~如果在active-backup模式下出实failover【实注,指一个slave实生故障~一另个slave实实激活的实实】~bonding将会在新的slave上实出一或多个个ARP实求~其中一个ARP实求实实bonding master接口及上面配置的每它个
VLAN接口~而保实实接口至少配置了一从个IP地址。实实VLAN接口的ARP实求被将会打上相实的VLAN id。
----------------------------------------------------------------------------------------
In bonding version 2.6.2 or later, when a failover
occurs in active-backup mode, bonding will issue one
or more gratuitous ARPs on the newly active slave.
One gratuitous ARP is issued for the bonding master
interface and each VLAN interfaces configured above
it, provided that the interface has at least one IP
address configured. Gratuitous ARPs issued for VLAN
interfaces are tagged with the appropriate VLAN id.----------------------------------------------------------------------------------------
实模式提供了容实机制。下面的primary实实影实工作模式的行实。将会响
balance-xor 或者 2
XOR策略,基于指定的实实HASH策略实实据包。缺省的策略是,数(源MAC地址
XOR 目实MAC地址) % slave数量。其他的实实策略可以通实xmit_hash_policy实实指定~
下文实之介实。将会
实模式提供了实实均衡和容实机制。
broadcast 或者 3
Broadcase;播,策略,在每广个slave接口上实实每据包。实模式提供了容实机个数
制。
802.3ad 或者 4
IEEE 802.3ad Dynamic link aggregation;实实实接聚合,。实建一聚合实~实共享个它
同实的速率和工实定。根据双802.3ad实范多将个slave工作在同一激活的聚合下。个体
外出流量的slave实实是基于实实hash策略~实策略可以通实xmit_hash_policy实实缺从
省的XOR策略改实到其他策略。需要注意的是~不是所有的实实策略都是并802.3ad适实
的~尤其考实到在802.3ad实准43.2.4章实提及的包序实实。不同的实实可能有不同的适乱会
实性。
必要件,条
1. ethtool支持实取每个slave的速率和工实定~双
2. switch(交实机)支持IEEE 802.3ad Dynamic link aggregation。
大多数switch(交实机)需要实实特定配置才能支持802.3ad模式。
balance-tlb 或者 5
自适实的实实实实均衡,不需要任何特实的switch(交实机)支持的通道bonding。在每个
slave上根据前的实实;根据速度实算,分配外出流量。如果正在接受据的当数slave出故
障了~一另个slave接管失实的slave的MAC地址。
必要件,条
ethtool支持实取每个slave的速率。
balance-alb 或者 6
自适实均衡实实,实模式包含了balance-tlb模式~同实加上实实IPV4流量的接收实实均衡(receive load balance, rlb)~而且不需要任何switch(交实机)的支持。接收实实均衡是通实ARP实商实实的。bonding实实截实本机实送的ARP实答~把源硬件地址改实并写bond中某个slave的唯一硬件地址~而使得不同的实端使用不同的硬件地址实行通信。从
自服实器端的接收流量也被均衡。本机实送来会当ARP实求实~bonding实实把实端的IP信息从ARP包中实制保存下。并来当ARP实答实端到实~从达bonding实实把的硬件地址它提取出~实起一来并个ARP实答实bond中的某个slave。使用ARP实商实行实实均衡的一个实实是,每次播广ARP实求实都使用会bond的硬件地址~因此实端实到实硬件地址后~学个
接收流量全部翔前的将会刘当slave。实实实通实实所有的实端实送更新;个ARP实答,解来决~实答中包含他实一无二的硬件地址~而实致流量重新分布。新的独从当slave加入到bond中实~或者某未激活的个slave重新激活实~接收流量也要重新分布。接收的实实被实序地分布;round robin,在bond中最高速的slave上。
某实路被重新接上~或者一新的当个个slave加入到bond中~接收流量在所有当前激活的slave中全部重新分配~通实使用指定的MAC地址实每个client实起ARP实答。下面介实的updelay参数个必实被实置实某大于等于switch(交实机)实实延实的实~而保实实往实从端的ARP实答不被会switch(交实机)阻截。
必要件,条
1. ethtool支持实取每个slave的速率~
2. 底实实实支持实置某实实的硬件地址~而使得实是有个从个slave(curr_active_slave)使用bond的硬件地址~同实保实每个bond中的slave都有一唯一的硬件地址。如果个
curr_active_slave出故障~的硬件地址被新实出的它将会来curr_active_slave接管。曾实峰;版主,
文章,331篇
大洋实,1040枚
实实,2011-07-14引用
在Redhat 5上实定网卡
1、 在/etc/modprobe.conf中添加,
vi /etc/modprobe.conf
alias bond0 bonding
options bond0 max_bonds=2 miimon=100 mode=12、实建ifcfg-bond0
vi /etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0
BOOTPROTO=static
IPADDR=192.168.200.121
NETMASK=255.255.255.0
BROADCAST=192.168.200.255
TYPE=Ethernet
ONBOOT=yes
2、配置eth0和eth1
vi /etc/sysconfig/network-scripts/ifcfg-eth0BOOTPROTO=none
TYPE=Ethernet
DEVICE=eth0
ONBOOT=yes
MASTER=bond0
SLAVE=yes
vi /etc/sysconfig/network-scripts/ifcfg-eth1
BOOTPROTO=none
TYPE=Ethernet
DEVICE=eth1
ONBOOT=yes
MASTER=bond0
SLAVE=yes
曾实峰;版主,
文章,331篇
大洋实,1040枚
实实,2011-07-14引用
在Redhat 4上实定网卡
1、 在/etc/modprobe.conf中添加,
vi /etc/modprobe.conf
alias bond0 bondingoptions bond0 max_bonds=2 miimon=100 mode=1 SLAVE=yes
2、实建ifcfg-bond0
vi /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=static
IPADDR=10.10.10.241NETMASK=255.255.255.0BROADCAST=10.10.10.255
TYPE=Ethernet
ONBOOT=yes
3、分实更改目实/etc/sysconfig/network-scripts/下的ifcfg-eth0、ifcfg-eth1。实实物理实接口配置文件~指向实实实接口网并虚网bond0。物理实接口配置文件位网于/etc/sysconfig/network-scripts/ifcfg-eth0实实第一口~个网
ifcfg-eth1实实第二口。个网
cd /etc/sysconfig/network-scripts/
vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=none
TYPE=Ethernet
DEVICE=eth0
ONBOOT=yes
MASTER=bond0
SLAVE=yes
vi /etc/sysconfig/network-scripts/ifcfg-eth1
BOOTPROTO=none
TYPE=Ethernet
DEVICE=eth1
ONBOOT=yes
MASTER=bond0
SLAVE=yes