Portál AbcLinuxu, 28. října 2025 09:54
)
My to řešíme jednoduchým skriptem v cronu, který každou minutu pinguje nějaký stroj v síti UPC (levné, rychlé 100/10, nespolehlivé
) s omezeným TTL (aby to nedopingoval přes druhého ISP). Při nedostupnosti přehodí síťová rozhraní na ADSL a po rozjetí UPC se to zase vrátí zpět. Pro každé rozhraní máme vlastní routovací tabulky a jenom se přehazuje defaultní gateway, flushnou se keše a conntrack pro NAT. Už to roky dolaďujeme, přesto se občas vyskytne nějaká moucha. Ale docela to funguje, k přehození dochází i několikrát denně.
cíl brána maska metrika rozhraníPokud bude mít router na hlavní spojení ve své tabulce kromě default (tedy cíl 0.0.0.0 maska 0.0.0.0) směrem přímo ven i stejný cíl a masku, ale s vyšší metrikou na druhý router okamžitě po detekci výpadku spojení zašle posílat pakety na něj. A jaký router jsem myslel, takový který má v provozu alespoň RIP a není to jen krabička se staticky navolenými cestami. a k druhé otázce? pokud má systém přes jedno spojení statickou vnější adresu a přes druhé ne tak konnektivitu zvnějšku stejně ztratí. na přístup směrem zevnitř ven by to nemělo mít vliv.
on1=pripojeni prvni ADSL
on2=pripojeni druhe ADSL
off= vypnuti ADSL
brana1= brana od poskytovatel ADSL1
brana2= brana 2 od ADSL2
while [ true ]; do
if ! ping -i 5 -c 1 -w 1 brana1 > /dev/null; then
echo "Chyba";
$off
sleep 5
$on2
if ! ping -c 1 -w 1 brana2 > /dev/null; then
echo "Chyba pri pokusu obnovit pripojeni, konec nastal $(date +%Y.%m.%d-%H:%M:%S)" >> /var/log/asdl.log;
else
echo "Pripojeni obnoveno v $(date +%Y.%m.%d-%H:%M:%S)" >> /var/log/adsl.log ;
fi
fi
sleep 5
done
else
echo "Nepripojeno";
fi
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.