Psal jsem to narychlo tak nevim jestli to bude dělat co má, ale vyzkoušej to:
:local ip1 "192.168.1.1"
:local ip2 "192.168.2.1"
:local interface1 "konektivita1"
:local interface2 "konektivita22"
:global konektivita
:if ($konektivita = 1) do={
:if ([/ping $ip1 interface=$interface1 count=3] = 0) do={
/interface disable 3
/interface enable 4
:log error ("Byl vypnut konekt1 a zapnut konekt2")
:set konektivita "2"
}} else {
:set konektivita "2"
}
:if ($konektivita = 2) do={
:if ([/ping $ip2 interface=$interface2 count=3] = 0) do={
/interface disable 4
/interface enable 3
:log error ("Byl vypnut konekt2 a zapnut konekt1")
:set konektivita "1"
}
}
Kdyžtak to můžu ještě nějak doupravit kdyby to nechodilo.
Super :) ani som necakal ze sa na to vazne niekto pozre... ;) diky. mam otazocku:
v pripade ak mu vypadnu 3 pingy na interface 1(ether1) tak spraví:
/interface disable 3
/interface enable 4
prečo 3 a 4? Ak mu vypadne ping na ether1, musí vypnúť ether1 a zapnúť ether2
následne beží pop cez alternatívnu trasu..... popri tom musí mk pingať cez ether 2 inú IP.... ak mu prejdu 3 pingy OK musí vypnúť ether2 a zapnúť ether1
cize v druhom kroku MK sleduje kedy sa primárny spoj znova obnoví, takze má ping: timeout.... a sleduje kedy to nabehne:
( = 0 /// nema tu byt = 1?
K tomu nákresu, vysvetlím ešte raz:
-> V kludovom stave beží komunikácia cez porty ETH1 a ETH1 na oboch stranách, pričom ETH2 na MK 2 je DISABLE. Skript beží na MK2 a pingá IP: 192.168.192.2 (teda protistranu primárneho spoja)
-> akonáhle skript zistí, že mu vypadli 3-4 pingy na danú IP, vypne na MK2 port ETH1 a zapne port ETH2.
Tu je tá podstatná časť, teraz spoj beží cez náhradnú trasu a porty ETH2 - ETH2. Tu skript, ktorý beží na MK2 musí pingovať IP: 192.168.192.3, čo je defakto IP primárneho spoja na jeho strane. Ale musí to pingovať "dookola" cez bridge MK1, aby zistil kedy pôvodný spoj nabehne....
snad sa mi to podarilo prehladne vysvetlit. PS: v ziadnom pripade sa nesmie stat, ze ostanú zapnuté oba ethernety....