Ubuntu: 케이블을 뽑았다가 다시 꽂은 후 ethX 인터페이스가 결합되지 않음

Ubuntu: 케이블을 뽑았다가 다시 꽂은 후 ethX 인터페이스가 결합되지 않음

본딩에서 장애 복구 구성을 설정하려고 하는데 인터페이스 구성을 해결할 수 없습니다. 내 인터페이스는 다음과 같습니다.

auto bond0
iface bond0 inet static
       address 192.168.1.39
       netmask 255.255.255.0
       up /sbin/ifenslave bond0 eth1 eth3
       down /sbin/ifenslave -d bond0 eth1 eth3

내 /etc/modprobe.d/bonding.conf 파일은 다음과 같습니다.

alias bond0 bonding
options bonding mode=3

다른 시스템에서 ping을 실행하여 테스트합니다. 나의 채권 상태는 다음과 같습니다.

Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: fault-tolerance (broadcast)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 44:a8:42:03:68:2c
Slave queue ID: 0

Slave Interface: eth3
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 44:a8:42:03:68:2c
Slave queue ID: 0

eth1 케이블을 제거하면 장애 조치가 작동하고 eth3이 데이터를 수행합니다(핑은 계속해서 계속됩니다).

eth1을 다시 연결하고 eth3을 제거하면 핑이 중지되고 결합 상태에 인터페이스가 포함되지 않습니다. 채권 상태는 다음과 같습니다.

Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: fault-tolerance (broadcast)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0

본딩의 모든 모드(0~6)를 사용해 보았습니다. 그러나 어떤 구성도 장애 복구 지원을 제공하지 않습니다. 내가 어디로 잘못 가고 있습니까?

답변1

2019-01-10 수정:이 지침은 Ubuntu 16.04 이상에 적용됩니다. 18.04에 대한 지침을 업데이트하려고 합니다.

이 답변에서는 장애 조치가 가능할 때 기본으로 돌아갈 수 있도록 하는 인터페이스 세트 active-backup와 결합을 사용하고 있습니다 . bond-primary더 많은 정보를 찾을 수 있습니다:https://wiki.linuxfoundation.org/networking/bonding


Ubuntu에서의 결합은 RedHat과 같은 다른 Linux 배포판과 다른 설정입니다. 나는 Ubuntu에서 몇 가지 결합 구성을 수행했으며 가능한 한 최선을 다해 아래에 배치하겠습니다.

보이는 대로 이미 ifenslave설치했지만 그렇지 않은 경우 다음을 설치하십시오 ifenslave.

sudo apt-get install ifenslave

/etc/modules다음으로, 다음 줄이 있는지 살펴보고 확인하세요.

loop
lp
rtc
bonding

파일 에서 , 및 인터페이스를 /etc/network/interfaces설정합니다 .loopbacketh1eth3

auto lo
    iface lo inet loopback

auto eth1
    iface eth1 inet manual
    bond-master bond0
    bond-primary eth1

auto eth3
    iface eth3 inet manual
    bond-master bond0

이제 NIC 연결 중 하나가 실패할 경우 장애 조치를 위해 bond0인터페이스를 설정하십시오.active-backup

auto bond0
    iface bond0 inet static
    address 192.168.1.39
    netmask 255.255.255.0
    network 192.168.1.0
    broadcast 192.168.1.255
    gateway 192.168.1.1
    bond-mode active-backup
    bond-miimon 100
    bond-slaves none

변경 사항을 /etc/network/interfaces파일에 저장하고 네트워킹 서비스를 다시 시작합니다.

sudo /etc/init.d/networking restart

이제 본딩 설정을 확인할 수 있습니다. bond0, eth1eth3가 올바른지 확인하세요 .

sudo ethtool bond0
sudo ethtool eth1
sudo ethtool eth3

eth1다음에서 제거하여 이제 장애 조치가 작동하는지 확인하십시오 bond0.

sudo ifenslave -d bond0 eth1

여전히 게이트웨이를 ping할 수 있는지 확인하세요.

ping -c2 192.168.1.1

eth1다음에 다시 추가 bond0:

sudo ifenslave bond0 eth1

도움이 되었기를 바랍니다!

관련 정보