[ ivica82 @ 11.07.2010. 19:43 ] @
Imam dva internet linka, jedan koji koristim vec duze vreme i drugi koju sam skoro uzeo kao rezervu. E sad, kako da podesim da se MT kad mi pukne primarni link automatski prebaci na rezervni, a kad se ovaj primarni vrati, odnosno proradi, da se ponovo vrati na njega. Trazio sam po netu, ali nisam uspeo da nadjem.

Hvala!
[ yolja624 @ 11.07.2010. 20:20 ] @
Ako sam dobro razumio...
http://wiki.mikrotik.com/wiki/Two_gateways_failover
[ BigFoot @ 11.07.2010. 21:07 ] @
Da li ovo znači da primarni gateway treba samo da je dostupan, ili da se kroz njega može ići dalje?

Npr. 192.168.1.1 može biti adresa ADSL modema i veza do njega uvek postoji, ali ADSL modem nema uspostavljenu konekciju ka provajderu. Da li se ovo, na ovaj način, računa kao upotrebljiv ili neupotrebljiv gw?
[ ivica82 @ 11.07.2010. 21:17 ] @
Jesi dobro razumeo, ovo nisam uspeo da nadjem na netu. Ali sad se javlja jos jedan problemcic. Za primarni link javnu adresu MT dobija preko DHCP-a i gateway se cesto menja. Dobija se dinamicka ruta za koju ne moze da se stavi da proverava ping. Ima li resenja za ovu situaciju. U svakom slucaju hvala, ovo je prvi korak.
[ Kolins Balaban @ 11.07.2010. 23:45 ] @
ja stvarno ne mogu da skontam ljude, koji eto kao hoce da barataju s routerima, a nisu naucili osnovne stvari na internetu, poput hebene pretrage jednog foruma. pa da si u pretragu samo ukucao "dinamicki gateway" dobio bi odgovor iste sekunde: http://www.elitesecurity.org/t395743-0#2561111
razumijem ja da su ovdje neki pocetnici ALI U MIROTIKU, ali ne razumijem da su pocetnici u pretrazi interneta... cak stavise, mislim da je ljenost u pitanju...... predlazem sljedece:

1. da se napravi jedan topic, koji ce moderator zakljucati i pinovati, i u kojem ce stojati samo link na sajt: http://wiki.mikrotik.com/wiki/Main_Page
taj link napisati najvecim mogucim slovima crvene boje, i topicu dati naslov ""OBAVEZNO POGLEDATI PRIJE NEGO POSTAVIS PITANJE NA PODFORUMU"
2. NE odgovarati na pitanja koja se pretragom mogu naci na navedenom linku.... mislim da ce pojedinci jedino na taj nacin nauciti da nadju sto im treba (bez da im mi to ovdje pisemo po ko zna koji puta), a usput ce posjetom navedenog sajta, nauciti jos stosta. nije cilj da se raja otjera sa foruma, nego da se malo potrude SAMI, i da se smanji broj nepotrebnih postova na forumu i formum malo dovede u red!!!!
[ BigFoot @ 12.07.2010. 09:40 ] @
Ima li odgovora na moje pitanje? Ja sam čitao Wiki, tražio po forumu, Google-u, ali ovo ne znam...
[ djricky @ 12.07.2010. 10:04 ] @
Citat:
BigFoot: Da li ovo znači da primarni gateway treba samo da je dostupan, ili da se kroz njega može ići dalje?

Npr. 192.168.1.1 može biti adresa ADSL modema i veza do njega uvek postoji, ali ADSL modem nema uspostavljenu konekciju ka provajderu. Da li se ovo, na ovaj način, računa kao upotrebljiv ili neupotrebljiv gw?


mozes da ga pingujes i/ili vidis ga u ARP tabeli? znaci da je upotrebljiv...

adsl ruter treba prebaciti u bridge mode, i PPPoE konekciju praviti direktno sa mikrotik rutera, a za default gateway staviti samo PPPoE interfejs... resen problem...

ali stvarno, ovo smo sve vec pisali... nekoliko puta... + stvarno ima na mikrotik wiki-ju sve lepo objasnjeno...
[ Kolins Balaban @ 12.07.2010. 11:59 ] @
BigFoot, mislim da se da se sa parametrom
Code:
check-gateway=ping
provjerava samo dostupnost adrese, ali to ne znaci da se kroz taj gateway moze na net. rjesenje je da se pppoe konekcija zove sa mikrotika (modem u bridge modu), kao sto je i djricki predlozio....
[ ivica82 @ 12.07.2010. 13:40 ] @
Ljudi, meni treba skripta koja ce sa DHCP clienta da procita dinamicki gateway i da na osnovu toga kreira rutu ka 0.0.0.0/0 sa uslovom da se ping ka gateway-u proverava i sa distancom 0 posto mi je to primarni gateway. Jedina mogucnos je da se podesi DHCP client da ne pravi default rutu nego da skripta kreira staticku rutu, koju ce da proverava gateway u DHCP klijentu npr. svakih 30 skundi iz scheduler-a.

Alternativni link mi ide preko PPPoE-client-a i tu dobijam staticki gateway koji se ne menja, znaci ta ruta nije problem.

Na netu sam nasao skripte koje citaju sa pppoe-client interfacea gateway, a ni jedni koja cita iz DHCP-klijenta. Da napomenem da nisam pocetnik u Mikrotiku, ali sam pocetnik sto se tice pravljenja skripti.

Ako neko zeli i moze da mi pomogne, bio bi mu zahvalan neizmerno, jer kazem, pravljenje skripti mi je strani pojam, jos uvek.
[ Kolins Balaban @ 12.07.2010. 21:11 ] @
da si malo ukljucio mozak, nasao bi lako gdje i sta treba izmjeniti u mojoj skripti koja glasi:
Code:

:local TrenutniGateway [ /ip address get [/ip address find interface=naziv_interfejsa_ciji_gateway_zelimo ] network] 

:local PostojeciGateway [/ip route get [/ip route find comment="Komentar na default routi u koju zelimo ubaciti gateway"] gateway] 

:if ($TrenutniGateway != $PostojeciGateway) do={ 

  :log info ("Postavljanje default gateway-a " )
  :local a [ /ip route find comment="Komentar na default routi u koju zelimo ubaciti gateway"]

:if ([ :typeof $a ] = nil ) do={
    :log info "Dodavanje route..."
    /ip route add dst-address=0.0.0.0/0 gateway=$TrenutniGateway routing-mark="naziv_routing_marka_ako_ga_imamo" comment="Komentar na default routi u koju zelimo ubaciti gateway"
   } else={
    :log info "Promjena route..."
    /ip route set $a gateway=$TrenutniGateway
   }
} else={
  :log info "Nije potrebna izmjena route."
}


skripta koja uzima gateway sa dhcp-clienta izgleda ovako:

Code:

:local TrenutniGateway [ /ip dhcp-client get [/ip dhcp-client find interface=naziv_interfejsa_ciji_gateway_zelimo ] gateway] 

:local PostojeciGateway [/ip route get [/ip route find comment="Komentar na default routi u koju zelimo ubaciti gateway"] gateway] 

:if ($TrenutniGateway != $PostojeciGateway) do={ 

  :log info ("Postavljanje default gateway-a " )
  :local a [ /ip route find comment="Komentar na default routi u koju zelimo ubaciti gateway"]

:if ([ :typeof $a ] = nil ) do={
    :log info "Dodavanje route..."
    /ip route add dst-address=0.0.0.0/0 gateway=$TrenutniGateway routing-mark="naziv_routing_marka_ako_ga_imamo" comment="Komentar na default routi u koju zelimo ubaciti gateway"
   } else={
    :log info "Promjena route..."
    /ip route set $a gateway=$TrenutniGateway
   }
} else={
  :log info "Nije potrebna izmjena route."
}


pa ti sad skontaj kolika je muka bila da se skripta prepravi da odgovori tvom zahtjevu ;)


[ ivica82 @ 13.07.2010. 12:50 ] @
HVALA PUNO!!!!!!!!!!!!!!!!!!

Skripta radi kao sat. Brate hvala ti.

Imam samo jos jednu molbu za tebe, nece ti biti tesko da mi pomognes, a veruj mi da sam ja duduk za skripte.

Sad mi treba da ova skripta u ruti ne menja gateway ukoliko DHCP klijent dobije gateway 10.20.4.1, znaci da ovu adresu zanemari i u ruti da ostane gateway koji je bio. Desava se da u nedostatku izlaza na internet servera sa kog vucem internet link, DHCP klijet dobije ovaj gateway (10.20.4.1) sto je inace wlan adresa servera sa kog vucem internet (Posto internet link vucem wireless-om). Znaci, ako doda ovaj gateway u ruti, imace ping ka ovoj adresi, ali nece da ima izlaz na net i zato nece da se prebaci na sekundarni link.

Ja sam probao da ubacim jos jedan red sa if komandom, ali to nesto nije radilo. Ovako to izgleda:


:local TrenutniGateway [ /ip dhcp-client get [/ip dhcp-client find interface=INTERNET] gateway]

:local PostojeciGateway [/ip route get [/ip route find comment="PrimGway"] gateway]

:if ($TrenutniGateway != $PostojeciGateway) do={

:if ($TrenutniGateway != 10.20.4.1) do={

:log info ("Postavljanje default gateway-a " )
:local a [ /ip route find comment="PrimGway"]

:if ([ :typeof $a ] = nil ) do={
:log info "Dodavanje route..."
/ip route add dst-address=0.0.0.0/0 gateway=$TrenutniGateway routing-mark="" comment="PrimGway"
} else={
:log info "Promjena route..."
/ip route set $a gateway=$TrenutniGateway
}
} else={
:log info "Nije potrebna izmjena route."
}


Verovatno to ne treba tako, ovo je bila samo moja pretpostavka. Ovaj red sam ja ubacio:

:if ($TrenutniGateway != 10.20.4.1) do={
[ Kolins Balaban @ 13.07.2010. 13:33 ] @
a da pokusas ovako:
Code:

:local TrenutniGateway [ /ip dhcp-client get [/ip dhcp-client find interface=INTERNET] gateway] 

:local PostojeciGateway [/ip route get [/ip route find comment="PrimGway"] gateway] 

:if (($TrenutniGateway != $PostojeciGateway) || ($TrenutniGateway != "10.20.4.1")) do={ 

:log info ("Postavljanje default gateway-a " )
:local a [ /ip route find comment="PrimGway"]

:if ([ :typeof $a ] = nil ) do={
:log info "Dodavanje route..."
/ip route add dst-address=0.0.0.0/0 gateway=$TrenutniGateway routing-mark="" comment="PrimGway"
} else={
:log info "Promjena route..."
/ip route set $a gateway=$TrenutniGateway
}
} else={
:log info "Nije potrebna izmjena route."
}



ako ne htjedne tako, probaj tu adresu 10.20.4.1 staviti bez navodnika.....
[ ivica82 @ 13.07.2010. 15:05 ] @
Probao sam ovu izmenu, ali opet ne radi kako treba
Sada svaki put u logovima ispisuje da je ruta promenjena i da se gateway promenio, iako nije, sto znaci da red sa if uslovom nije u redu. Probao sam i da izbrisem navodnike, ali se isto desava u oba slucaja.

Znaci, ovaj red ima neku gresku pa ga skripta preskoci

:if (($TrenutniGateway != $PostojeciGateway) || ($TrenutniGateway != "192.168.100.1")) do={
[ Kolins Balaban @ 13.07.2010. 15:51 ] @
pokusaj ovako:
Code:

:if (($TrenutniGateway != $PostojeciGateway) && ($TrenutniGateway != "192.168.100.1")) do={



[ ivica82 @ 13.07.2010. 16:04 ] @
Sad izgleda nema sintaksnih gresaka, izbacuje poruku "Nije potrebna promena rute"

Znaci if uslov radi, samo jos da probam da li ce da odbaci doticnu adresu (10.20.4.1), pa javljam.

Pozz