На микротике 3 WAN, разные подсети раскиданы по разным WAN с помощью mangle. Я написал скрипты для netwatch, только они пропускают действия. Подскажите где я ошибся. Code: :local W1IP [/ping 208.67.220.220 count=5] :local W3IP [/ping 1.1.1.1 count=5] :if (W1IP = 0) do={ :if (W3IP = 0) do={ /system script run [find name="DISABLE_ALL"] :log warning "ALL WANS IS DOWN! DISABLE ALL MANGLE!" } else={ /system script run [find name="all_to_WAN3"] :log warning "WAN1 AND WAN2 IS DOWN! ALL SWICHED TO WAN3!" } } else={ :if (W3IP = 0) do={ /system script run [find name="all_to_WAN1"] :log warning "WAN2 AND WAN3 IS DOWN! ALL SWICHED TO WAN1!" } else={ /system script run [find name="only_WAN1_and_WAN3"] :log warning "WAN2 IS DOWN! ALL SWICHED TO WAN1 AND WAN3!" } } Это скрипт срабатывает когда WAN2 имеет статус down. Так Если у меня выключен и WAN3 и после этого выключается WAN2, он должен все переключить на WAN3. Это 3 действие в скрипте, но он его не выполняет, а выполняет последнее. В итоге результат "WAN2 IS DOWN! ALL SWICHED TO WAN1 AND WAN3!". Ошибка в логике алгоритма который я использую для проверки и переключения каналов или же в написании команд?
Фиксирую каждый адрес в своей таблице маршрутизации. Lookup only in table wan1, wan2 и wan3 соответственно.