본문으로 건너뛰기

네트워크 bonding 설정 방법은 무엇인가요?

💡 요약 정리

  • 네트워크 bonding은 두 개의 네트워크 라인을 하나로 묶어서 사용하는 방법입니다.
  • mode에 따라 확장과 백업 등의 여러 가지 용도로 사용할 수 있습니다.
  • 설정은 7단계로 진행됩니다: 설정 파일 수정 → 모듈 활성화 → 네트워크 재시작 → 동작 확인

네트워크 bonding은 두개의 네트워크 라인을 하나로 묶어서 사용하는 방법으로 mode에 따라 확장과 백업등의 여러가지 용도로 사용할 수 있습니다.

1. /etc/modprobe.conf 파일에 본딩 옵션 추가

[root@localhost ~]# cat  /etc/modprobe.conf
alias eth0 bnx2
alias eth1 bnx2
alias eth2 e1000
alias eth3 e1000
alias scsi_hostadapter cciss
alias scsi_hostadapter1 ata_piix

alias bond0 bonding
options bond0 mode=1 miimon=100
alias bond1 bonding
options bond1 mode=1 miimon=100

2. /etc/sysconfig/network-scripts/ifcfg-bondX 파일 생성

[root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
IPADDR=192.168.100.101
NETMASK=255.255.255.0
ONBOOT=yes
USERCTL=no

[root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-bond1
DEVICE=bond1
BOOTPROTO=none
IPADDR=192.168.100.102
NETMASK=255.255.255.0
ONBOOT=yes
USERCTL=no

3. slave device 파일 편집

[root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
HWADDR=00:1B:78:CD:4A:AE
ONBOOT=yes
USERCTL=no

[root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
HWADDR=00:1B:78:CD:4A:BA
ONBOOT=yes
USERCTL=no

[root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-eth2
DEVICE=eth2
BOOTPROTO=none
MASTER=bond1
SLAVE=yes
HWADDR=00:1B:78:CD:4A:AE
ONBOOT=yes
USERCTL=no

[root@localhost ~]# cat  /etc/sysconfig/network-scripts/ifcfg-eth3
DEVICE=eth3
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
HWADDR=00:1B:78:CD:4A:BA
ONBOOT=yes
USERCTL=no

4. bonding 모듈 활성화

[root@localhost ~]# modprobe  bond0
[root@localhost ~]# modprobe  bond1

5. Network Daemon 재시작

[root@localhost ~]# service  network  restart

6. bonding 동작 확인

[root@localhost ~]# cat  /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.4.0 (October 7, 2008)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:1B:78:CD:4A:AE

Slave Interface: eth1
MII Status: up
Link Failure Count: 1
Permanent HW addr: 00:1B:78:CD:4A:BA

[root@localhost ~]# cat  /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.4.0 (October 7, 2008)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth2
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth2
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:1B:78:CD:4A:AE

Slave Interface: eth3
MII Status: up
Link Failure Count: 1
Permanent HW addr: 00:1B:78:CD:4A:BA

현재 bond0 에서는 eth0, bond1 에서는 eth2 가 active로 동작하고 있습니다. eth0 과 eth2 의 랜케이블을 뽑거나 네트워크 카드에 장애가 발생할 경우, eth1 과 eth3 이 active로 동작하게 됩니다.


7. bonding mode

bonding mode는 아래와 같이 여러가지가 있으나, 일반적으로 mode 0 과 mode 1 을 많이 씁니다. mode 0 은 대역폭을 확장하기 위해서 사용하고 mode 1 은 active + standby 로 구성하여 장애를 대비하기 위해서 많이 사용합니다.

  • Mode 0 (balance-rr)
  • Mode 1 (active-backup)
  • Mode 3 (broadcast)
  • Mode 4 (802.3ad)
  • Mode 5 (balance-tlb)
  • Mode 6 (balance-alb)