WAN 장애 발생 시 셀룰러 장애 조치를 수행하도록(또는 그 반대) Debian 9 장치를 구성하려고 합니다. 를 사용하여 이 작업을 시도했는데 ifenslave
장애 조치는 일반적으로 잘 작동하지만 게이트웨이를 전환하지 않습니다. 첫 번째를 유지합니다.
이것은 다음의 구성입니다 /etc/network/interfaces
(여기서는 예제 3을 사용했습니다:https://wiki.debian.org/본딩):
# interfaces(5) file used by ifup(8) and ifdown(8)
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
auto eth1 lo
iface lo inet loopback
auto bond0
iface bond0 inet dhcp
bond-slaves eth0 eth1 eth2
bond-mode active-backup
bond-primary eth0
bond-miimon 100
bond_downdelay 200
bond_updelay 200
allow-bond0 eth0
iface eth0 inet manual
allow-bond0 eth1
iface eth1 inet manual
allow-bond0 eth2
iface eth2 inet manual
iface eth1 inet static
address 192.168.4.127
network 192.168.4.0
netmask 255.255.255.0
broadcast 192.168.4.255
gateway 192.168.4.1
일반 테스트를 위해 eth1도 추가했습니다. ip r
eth0에서 케이블을 분리하기 전의 출력은 다음 과 같습니다 .
default via 192.168.22.2 dev bond0
10.0.0.0/8 dev eth2 proto kernel scope link src 10.197.68.254
192.168.4.0/24 dev eth1 proto kernel scope link src 192.168.4.127
192.168.22.0/24 dev bond0 proto kernel scope link src 192.168.22.31
케이블을 분리한 후:
default via 192.168.22.2 dev bond0
10.0.0.0/8 dev eth2 proto kernel scope link src 10.197.68.254
192.168.4.0/24 dev eth1 proto kernel scope link src 192.168.4.127 linkdown
192.168.22.0/24 dev bond0 proto kernel scope link src 192.168.22.31
보시다시피 eth0과 셀룰러 인터페이스 eth2는 DHCP를 통해 서로 다른 게이트웨이를 수신합니다. 따라서 시간이 지남에 따라 변경될 수 있으므로 셀룰러 인터페이스에 대해 정적 GW를 설정할 수 없습니다.
왜 이것이 제대로 작동하지 않습니까? 아니면 구성하는 방법에 대한 더 좋은 아이디어가 있습니까?