abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 5
dnes 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 0
včera 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 5
včera 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 33
včera 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 9
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 25
2.12. 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 18
2.12. 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 6
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 775 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Pomoc se scriptem - hlídání připojení k internetu

Petr Maleček avatar 28.9.2013 03:22 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Pomoc se scriptem - hlídání připojení k internetu
Přečteno: 534×
Ahoj,

potřeboval bych pomoct s následujícícm scriptem. Cílem je, aby v případě výpadku hlavního netu došlo k nastavení nižší priority (metriky) a upřednostnilo se záložní připojení. Ve chvíli, kdy se původní připojení obnoví, tak se metrika opět nastaví na nulu a bude jako hlavní:

#!/bin/bash

ip=/sbin/ip
ping=/bin/ping
route=/sbin/route

CS_IP="172.16.26.1"
CS_IF="eth2"

CS_METRIC=(`$ip route | grep $CS_IP | awk '{print $7}'`)
CS_PING=(`$ping -w 1 -c 1 -I $CS_IF 8.8.8.8`)

while [ true ]; do

  ## Pokud havni pripojeni nefunguje, prepneme na zalozni.
  if [[ "$CS_METRIC" -ne "10" && ! "$CS_PING" ]];
    then
        $route del default gw $CS_IP
        $route add default gw $CS_IP metric 10
        echo "Nefunguje"

  fi


  ## Pokud pripojeni opet zacne fungovat, tak mu zvysime prioritu (hlavni)
  if [[ "$CS_METRIC" -eq "10" && "$CS_PING" ]];
    then

        $route del default gw $CS_IP
        $route add default gw $CS_IP metric 0
        echo "Opet funguje"

  fi

sleep 5
done

Zdá se mi, že nefunguje právě to ověření PINGu, jakoby to nevracelo false, nebo možná očekávám něco jiného, než to vrací.

Můžete prosím poradit? :-) Díky.
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.

Řešení dotazu:


Odpovědi

28.9.2013 10:15 NN
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Proc tak slozite, nestacilo by ten 'failover' nakonfigurovat rovnou?
Petr Maleček avatar 29.9.2013 12:04 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Jasně a nějaká rada jak na to? Já mám nastavené toto:

# vytvoreni routovacich tabulek (CS, PF) a rout
    $ip route add 172.16.26.0 dev eth2 src 172.16.26.62 table T1
    $ip route add default via 172.16.26.1 table T1
    $ip route add 10.109.13.128 dev eth1 src 10.109.13.146 table T2
    $ip route add default via 10.109.13.129 table T2

    # nastaveni rout
    $ip route add 172.16.26.0 dev eth2 src 172.16.26.62
    $ip route add 10.109.13.128 dev eth1 src 10.109.13.146

    # nasteveni defaultni routy
    $ip route add default via 172.16.26.1

    # nasteveni smerovacich rout (aby slo dovnitr a ven to, jakym interfacem to prislo)
    $ip rule add from 172.16.26.62 table T1
    $ip rule add from 10.109.13.146 table T2

    # prirazeni konexi do tabulek
    $ip route add 192.168.1.0 dev eth0 table T1
    $ip route add 10.109.13.128 dev eth1 table T1
    $ip route add 127.0.0.0/8 dev lo table T1
    $ip route add 192.168.1.0 dev eth0 table T2
    $ip route add 172.16.26.0 dev eth2 table T2
    $ip route add 127.0.0.0/8 dev lo table T2

    # nastaveni nexthopu (volba odchozi GW je na kernelu)
    $ip route add default scope global nexthop via 172.16.26.1 dev eth2 weight 1 nexthop via 10.109.13.129 dev eth1 weight 2
Tak co doplnit?
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
Jashin© avatar 28.9.2013 19:48 Jashin© | skóre: 8 | Keyboard/Home
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
.

muzes zkusit IFovat budto navratovou hodnou pingu nebo pocet prijatych packetu:
ping_gw0=$(ping -c 1 ${gw0})
if [ $? == 0 ]; then
#brana funguje
else
#brana nejde
fi



ping_gw0=$(ping -c 10 ${gw0} | grep received | awk '{print $4 }')
if [ ${ping_gw0} -ge 8 ]; then
#brana funguje
else
#brana nejde
fi

With liberty and metal for all
28.9.2013 20:58 Patrik Uhrak | skóre: 31 | blog: pato
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu

Na received.com ti to uz fungovat nebude :P a grep nie je nuten.

gw0=
ping_gw0=$(ping -c 10 "$gw0" | awk "/--- $gw0 ping statistics ---/"'{ getline; print $4 }')
if [ "${ping_gw0}" -ge 8 ]; then 
#brana funguje 
else
#brana nejde 
fi
Řešení 1× (Petr Maleček (tazatel))
29.9.2013 16:25 hermelin | skóre: 22
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Nezabyvej se vymyslenim neceho co uz vymyslel a odladil nekdo jiny :-)

https://code.google.com/p/wanfailoverscript/

Pouzivam k maximalni spokojenosti
Petr Maleček avatar 29.9.2013 18:59 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Nohy líbám!!!
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
29.9.2013 19:38 hermelin | skóre: 22
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
To nemusis :-)

Resil jsem podobny problem pred par lety - dokonce se tremi pripojenimi

$ip route add default scope global nexthop via 172.16.26.1 dev eth2 weight 1 nexthop via 10.109.13.129 dev eth1 weight 2

To mi vubec nefungovalo. Nevim proc kdyz je to vsude uvadene jako prave failover nastaveni. Mozna na to ma vliv to jestli je za tim pripojene jeste nejake zarizeni (napr. AP) ktere i v pripade vypadku linky nejake pakety IN/OUT na port sitove karty posila.
29.9.2013 20:13 NN
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
To je to na co jsem narazel, to by melo jako failover zafungovat samo o sobe, bez nutnosti testovani protistrany. Nicmene tipuju, ze to funguje jen kdyz vypadek shodi rozhrani. Osobne bych problem resil implementaci jednoho ze sady NHRP protokolu, ve spolupraci s ISP.
Petr Maleček avatar 29.9.2013 21:35 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Mě to právě nefunguje v žádné situaci. Schválně jsem mezi to připojil ještě jeden hloupý switch od kterého jsem pak jedno připojení odpojil (fyzicky ale k serveru stále byl připojen kabel) a nic se nepřeplo, prostě net nefungoval. A i když jsem odpojil celý switch (čili rozhraní se odpojilo), tak taky nic.

Tenhle script který jsi mi poradil a za který moc děkuji funguje přesně jak potřebuji až na jeden drobný detail a to - i když je nastaveno ping -w 1 -c 2 8.8.8.8, tak nevím proč, ale on prostě čeká třeba minutu, než mu dojde, že ten ping neprošel. Jako by čekal na nevím co, když jsem mu jasně parametrem řekl, že má na odpověď počkat vteřinu. To úplně ignoruje. Takže teď třeba přepnutí z hlavní linky na záložní trvá tak 3 minuty.
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
Petr Maleček avatar 29.9.2013 21:39 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Upřesním - tři minuty pro to, že cca minutu čeká než zjistí, že ping neprošel a má na to 3 pokusy. Server jsem dal do testování zatím jen jeden. Až tohle vyřeším, tak dám dva. Asi nějaké public DNS servery. Jeden GOOGLu a jeden NICu.
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
29.9.2013 21:46 hermelin | skóre: 22
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
mrkni sem https://code.google.com/p/wanfailoverscript/source/browse/trunk/README

polozky INTERVAL, TESTCOUNT, TRESHOLD
Petr Maleček avatar 29.9.2013 21:48 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Já jsem readme četl. To mám nastavené zatím dost "ostře" aby to reagovalo okamžitě a stejně nic. Nebo ne?

#
# WFS - Wan Failover Script
# Configuration file
#
TARGETS_FILE=/etc/wfs/targets.txt
PRIMARY_GW=172.16.26.1
SECONDARY_GW=10.109.13.129
MAX_LATENCY=50
INTERVAL=5
TEST_COUNT=2
THRESHOLD=3
COOLDOWNDELAY01=5
COOLDOWNDELAY02=5
MAIL_TARGET="mail@(muj).cz"
DAEMON=1
QUIET=1
PIDFILE=/var/run/wfs.pid
PRIMARY_CMD=""
SECONDARY_CMD=""
DEBUG=1

LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
29.9.2013 21:52 hermelin | skóre: 22
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
a co to pise v logu ?
Petr Maleček avatar 29.9.2013 21:57 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Příloha:
Píše to přesně to co má, jen mu trvá děsně dlouho, než zjistí, že prostě připojení (ping) neprošel. Viz příloha, všimněte si těch časů.
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
Řešení 1× (Petr Maleček (tazatel))
29.9.2013 22:05 hermelin | skóre: 22
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Navrhuju tykani :-)

a proc mas MAX_LATENCY=50 ? Zkus dat 2.

Pripadne prubni starsi verzi - v te posledni to vypada ze se prave delalo dost zmen ohledne casu.

Ja aktualne pouzivam 2.01 a tam to funguje presne podle nastaveni.
Petr Maleček avatar 29.9.2013 22:13 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Díky, ach jo, já jsem kus v*la. Já měl za to, že je to latence v milisekundách a ono je to v sekundách. A ještě ke všemu jsem si myslel že to je braný jakože i když ping projde, ale jeho latence je větší než 50ms, tak že to bere jako podnět k přepnutí na zálohu. OMG, já jsem takovej v*l.

No, tak se omlouvám za zbytečný spamování, teď už mi to funguje. Sypu si popel na hlavu.
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
Petr Maleček avatar 29.9.2013 22:49 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Jinak teď se mi to chová přesně takhle (moje nahrávka) - YouTube odkaz. Takže super! :-)
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
29.9.2013 22:53 hermelin | skóre: 22
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Online forever :-)
Petr Maleček avatar 29.9.2013 23:44 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
No, díky bohu za to. Teď nebudu muset jezdit 2x - 3x do týdne do kanceláře, abych vyřešil výpadek internetu. Povedlo se mi zajistit ještě jednu záložní linku, takže v případě výpadku se to přepne samo a nemsím nikam. Uff. To bude úleva :-))
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.
Petr Maleček avatar 29.9.2013 22:00 Petr Maleček | skóre: 27 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
Skoro 2 minuty od prvního testování pingu. 2 minuty, než zjistil, že ping neprošel. Ačkoli timeout je nastaven na 1s.
LinMuck, WinFuck :-P - pokud by mi někdo chtěl pomoct s prostorem na DropBoxu a sám získat 250MB, tak zde.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.