Не виждам защо да не пингваш дори всяка секунда?
Работа би ти свършил shell-script от сорта:
Примерния код го написах, без да тествам, така че може да има и синтактични грешки. Давам го само да посочи евентуална логика и алгоритъм за решение. Примерът трябва да върши работа дори при едновременен отказ и на двете мрежи.Код:#!/bin/bash GATE_A="10.0.0.1" #ИП адрес на първия гейт GATE_B="192.168.0.1" #ИП адрес на втория гейт main() { while : do sleep 1 ping -c1 ${GATE_A} || route_2 ping -c1 ${GATE_B} || route_1 done } route_2() { #******** # # Тук пишеш правила да пратиш целия трафик през $GATE_B # #******** while : do ping -c1 ${GATE_A} && route_0 sleep 1 done } route_1(){ #******** # # Тук пишеш правила да пратиш целия трафик през ${GATE_A} # #******** while : do ping -c1 ${GATE_B} && route_0 sleep 1 done } route_0() { #***** # Тук пишеш правила за рутиране при нормално състояние: # BG -> interface1, INTERNET -> interface2 #****** main } route_0 #EOF





