検索しても意外とちゃんと情報がまとまっていなかったので、自分で整理メモ。
設定内容
-
mode はアクティブスタンバイ</p>
- 運用上の NIC の冗長化を狙っているので、定常時にトラフィックが流れる向きは固定したい
- 最短で切り替わるようにしたい miimon は最小 100msec
1) /etc/modprobe.conf
以下のように記述
# vi /etc/modprobe.conf alias bond0 bonding options bond0 mode=1 primary=eth0 options bond0 miimon=100
2) ifcfg-bond0 を作成
記述形式は ifcfg-eth0 などと同様なので、コピってきたほうが早い。
# cd /etc/sysconfig/network-scripts # cp ifcfg-eth0 ifcfg-bond0 # vi ifcfg-bond0
記述内容は
DEVICE=bond0 IPADDR=192.168.1.100 NETMASK=255.255.255.0 NETWORK=192.168.1.0 BROADCAST=192.168.1.255 ONBOOT=yes BOOTPROTO=none
として、保存。
3) 対象となる物理インターフェイスへの設定 ifcfg-eth0, ifcfg-eth1 設定変更
# cd /etc/sysconfig/network-scripts # vi ifcfg-eth0 DEVICE=eth0 ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none
# vi ifcfg-eth1 DEVICE=eth1 ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none
4) network の再起動
# /etc/rc.d/init.d/network restart
5) 確認
- ifconfig でみる
bond0, eth0, eth1 ともに MAC アドレスが同じになっていて、bond0 “MASTER”, eth0,1 “SLAVE” となっていればOK
この時、IPアドレスは bond0 にしかついていないことも確認
bond0 Link encap:Ethernet HWaddr 00:90:99:32:4F:DC inet addr:172.16.100.31 Bcast:172.16.255.255 Mask:255.255.0.0 UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1 RX packets:210 errors:0 dropped:0 overruns:0 frame:0 TX packets:42 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:19458 (19.0 Kb) TX bytes:3162 (3.0 Kb) eth0 Link encap:Ethernet HWaddr 00:90:99:32:4F:DC UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:104 errors:0 dropped:0 overruns:0 frame:0 TX packets:21 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:9669 (9.4 Kb) TX bytes:1698 (1.6 Kb) Interrupt:15 Base address:0xdf80 eth1 Link encap:Ethernet HWaddr 00:90:99:32:4F:DC UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:106 errors:0 dropped:0 overruns:0 frame:0 TX packets:21 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:9789 (9.5 Kb) TX bytes:1464 (1.4 Kb) Interrupt:10 Base address:0x1c00
- dmesg を実行
タイムスタンプはないが bond0 で eth0, eth1 の active 切り替わりが確認できる
- tail /var/log/message を実行
タイムスタンプありで bond0 の切り替わりがログに出力される