Объединенный порт с activebackup и проверкой соединения arp-ping завершается неудачно, когда один порт умирает
У меня есть две машины, которые связаны между собой через 2 порта, и я хочу, чтобы оба порта были объединены, чтобы иметь единую связь.
Я настроил участника команды, чтобы activebackup
и средство проверки состояния связи должно быть arp_ping
, Результат работает и, как правило, хорошо себя обрабатывает, но при этом активная-пассивная природа соединения, похоже, вызывает проблему в некоторых сценариях, когда порт отключается:
[root@machine1 ~]# teamdctl team_master state
setup:
runner: activebackup
ports:
team_slave1
link watches:
link summary: up
instance[link_watch_0]:
name: arp_ping
link: up
down count: 0
team_slave0
link watches:
link summary: down
instance[link_watch_0]:
name: arp_ping
link: down
down count: 0
runner:
active port: team_slave1
Я настроил все это через NetworkManager и воспроизвел мою проблему. Мне достаточно взять активный интерфейс на обеих машинах одновременно с nmcli dev disconnect team_slave1
,
Результат (ip addr
):
10: team_master: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
link/ether ...
А также
[root@machine1 ~]# teamdctl team_master state
setup:
runner: activebackup
ports:
team_slave0
link watches:
link summary: down
instance[link_watch_0]:
name: arp_ping
link: down
down count: 0
runner:
active port:
Каким-то образом захват просто не произошел, и кажется, что основная причина в том, что NetworkManager предполагает, что пассивный порт не работает, и не пытается его активировать.
Кто-нибудь сталкивался с чем-то похожим? Есть идеи что делать? С помощью round-robin
бегун, кажется, помогает, но это не схема, которую я бы предпочел.