OS/Linux

Bonding작성후 발생하는 에러

yueisu 2009. 10. 6. 11:54
2개의 NIC을 이용하여 본딩을 작성후 네트워크 서비스를 재기동하면 다음과 같은 경고가 발생할 경우가 있습니다.
kernel: bonding: bond0: Warning: the permanent HWaddr of eth1 - xx:xx:xx:xx:xx:xx - is still in use by bond0. Set the HWaddr of eth1 to a different address to avoid conflicts.

예를들어 eth0와 eth1를 이용해서 bond0를 설정했을 경우, 위와 같은 경고가 발생할 수 있는데요, 이유는 eth0의 MAC 어드레스를 bond0가 이용하기 때문이랍니다. bond0 모듈은 네트워크 서비스가 정지할 때, SLAVE 디바이스를 eth0 -> eth1 순으로 정지를 시키는데, bond0가 사용하고 있는 MAC 어드레스 소유의 디바이스가 다른 디바이스보다 먼저 정지하기 때문이라는군요. 이말은 bond0가 사용하고 있는 MAC 어드레스 소유의 디바이스를 가장 마지막에 정지시키면 위와 같은 경고는 발생하지 않는다는 얘기죠.

해결방법은 두가지가 있더군요.
1. bond0가 사용하고 있는 MAC 어드레스의 디바이스를 eth0 이외로 설정
ifcfg-bond0의 마지막에 eth0이외의 MACADDR를 추가해주면 됩니다.
MACADDR=aa:aa:aa:aa:aa:aa

2. ifdown-eth를 편집하여, 정지하는 디바이스의 순서를 eth0 -> eth1가 아닌 eth1 -> eth0로 변경
if is_bonding_device ${DEVICE} ; then
    for device in `LANG=C grep -l "^[[:space:]]*MASTER=${DEVICE}" /etc/sysconfig/network-scri
pts/ifcfg-*` ; do
        is_ignored_file "$device" && continue
        /sbin/ifdown ${device##*/}
    done

fi


위와같이 bonding의 부분을 다음과 같이 변경해줍니다.
변경전 : for device in `LANG=C grep -l "^[[:space:]]*MASTER=${DEVICE}" /etc/sysconfig/network-scri
pts/ifcfg-*` ; do

변경후 :
for device in `LANG=C grep -l "^[[:space:]]*MASTER=${DEVICE}" /etc/sysconfig/network-scri
pts/ifcfg-* | tac` ; do

전 1번으로 해결되었습니다.

'OS > Linux' 카테고리의 다른 글

LPIC에 가상화기술 인정 자격 신설  (0) 2010.08.02
net-snmp의 버그?  (0) 2010.06.28
CentOS 5.5 공개  (0) 2010.05.17
Red Hat Enterprise Linux 5.5 제공 개시  (0) 2010.04.05
Load Average값을 로그화일로 작성  (0) 2009.11.09
CentOS 5.4 릴리스 & VMware Server 2와의 버그  (0) 2009.10.24
2TB의 벽  (0) 2009.08.28
[에러] UNEXPECTED INCONSISTENCY  (0) 2009.07.28