2013年9月25日 星期三

Redhat 4,5 Bonding 雙網卡網路

RedHat 4 的作法
vim /etc/modprobe.conf
alias bond0 bonding

若有多張網卡,可定議如下
alias bondx bonding
x為數字
依此類推

新增/etc/sysconfig/network-script/ifcfg-bond0
若有多張網卡,可以定議如下
/etc/sysconfig/network-script/ifcfg-bondx
x為數字
/etc/sysconfig/network-script/ifcfg-bond0 設定如下
DEVICE=bond0
IPADDR=192.168.1.2
NETMASK=255.255.255.0
USERCTL=no
BOOTPROTO=none
ONBOOT=yes
BONDING_OPTS="mode=1 miimon=100"

/etc/sysconfig/network-script/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no

/etc/sysconfig/network-script/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no

重啟網路
service network restart


RedHat 5 的作法
新增/etc/modprobe.d/aliases.conf ,這檔名可以自定,只要最後是帶.conf就可以被系統認出
alias bond0 bonding 若有多張網卡,設定與RH4相同

新增/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
TYPE=bonding
BOOTPROTO=static
IPADDR=192.168.1.3
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
USERCTL=no
NM_CONTROLLED=no
BONDING_OPTS="mode=6 miimon=100 updelay=200 downdelay=200"

vim /etc/sysconfig/network-scripts/ifcfg-eth0
# Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
DEVICE=eth0
HWADDR=5C:F3:FC:4B:FA:xx 這是你要綁定那一張網卡,可別照抄了
BOOTPROTO=none
NM_CONTROLLED=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no


/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
HWADDR=5C:F3:FC:4B:FA:xx  這是你要綁定那一張網卡,可別照抄了
BOOTPROTO=none
NM_CONTROLLED=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no

重啟網路
service network restart


模式有以下幾種,我各人比較偏好模式6
以下摘自http://marcustsai.blogspot.tw/2012/11/rhel5-6-nic-bonding.html
3.Bond Mode:

0balance-rr‧負載平衡模式, 需有 switch 設定 (trunk) 支援才能發揮實質效果
‧具容錯功能, 其中一張 Slave 網卡失效仍可持續運作
1active-backup‧同一時間只有單一 Slave 網卡運作
‧Active Slave 網卡失效時自動啟用次一順位 Slave 網卡
‧不需 switch 支援
2balance-xorTransmit based on [(source MAC address XOR'd with destination MAC address) modulo slave count]. This selects the same slave for each destination MAC address. This mode provides load balancing and fault tolerance.
3broadcast‧所有 Slave 網卡一齊收送網路封包
‧具容錯功能, 其中一張 Slave 網卡失效仍可持續運作
4802.3adIEEE 802.3ad Dynamic link aggregation. Creates aggregation groups that share the same speed and duplex settings. Utilizes all slaves in the active aggregator according to the 802.3ad specification.

*Pre-requisites:

1. Ethtool support in the base drivers for retrieving the speed and duplex of each slave.

2. A switch that supports IEEE 802.3ad Dynamic link aggregation. Most switches will require some type of configuration to enable 802.3ad mode
此模式可以參考 http://phorum.study-area.org/index.php?topic=43051.0
5balance-tlb‧傳出自動負載平衡
‧傳入由 Current Active Slave 負責
‧具容錯功能, 其中一張 Slave 網卡失效仍可持續運作
‧不需 switch 支援及設定
6balance-alb‧傳出及傳入皆自動負載平衡
‧具容錯功能, 其中一張 Slave 網卡失效仍可持續運作
‧Slave 網卡 driver 需支援 setting hardware address 功能
‧不需 switch 支援及設定