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í
×
    11.7. 16:44 | Komunita

    Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.

    Ladislav Hagara | Komentářů: 3
    11.7. 14:55 | Humor

    McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.

    Ladislav Hagara | Komentářů: 14
    11.7. 00:11 | Nová verze

    Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    10.7. 21:00 | Bezpečnostní upozornění

    Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 4
    10.7. 15:22 | Nová verze

    Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.

    Ladislav Hagara | Komentářů: 12
    10.7. 12:55 | Bezpečnostní upozornění

    Ministerstvo vnitra odhalilo závažný kyberincident v IT systému resortu. Systém, do kterého se dostal útočník bez oprávnění, byl odpojen a nedošlo k odcizení dat [𝕏].

    Ladislav Hagara | Komentářů: 16
    10.7. 11:55 | Humor

    Před rokem byla streamovací služba HBO Max přejmenována na Max. Dle managementu slovo HBO v názvu nebylo důležité. Včera byl Max přejmenován zpět na HBO Max. Kolik milionů dolarů to stálo? 😂

    Ladislav Hagara | Komentářů: 15
    10.7. 02:11 | Nová verze

    Byla vydána nová major verze 8.0.0 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata (Wikipedie). Přehled novinek v oficiálním oznámení a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    10.7. 01:11 | Nová verze

    Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.4. Přehled novinek s náhledy a videi v oznámení na blogu.

    Ladislav Hagara | Komentářů: 1
    10.7. 00:11 | IT novinky

    Instituce státní správy nebudou smět využívat produkty, aplikace, řešení, webové stránky a webové služby poskytované čínskou společností DeepSeek. Na doporučení Národního úřadu pro kybernetickou a informační bezpečnost rozhodla o jejich zákazu vláda Petra Fialy na jednání ve středu 9. července 2025.

    Ladislav Hagara | Komentářů: 8
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (27%)
     (7%)
     (3%)
     (1%)
     (1%)
     (4%)
    Celkem 389 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    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: 29 | Plzeň - Bolevec
    Pomoc se scriptem - hlídání připojení k internetu
    Přečteno: 630×
    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

    Ř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: 29 | 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
    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
    29.9.2013 16:25 hermelin | skóre: 21
    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: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: Pomoc se scriptem - hlídání připojení k internetu
    Nohy líbám!!!
    LinMuck, WinFuck :-P
    29.9.2013 19:38 hermelin | skóre: 21
    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: 29 | 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
    Petr Maleček avatar 29.9.2013 21:39 Petr Maleček | skóre: 29 | 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
    29.9.2013 21:46 hermelin | skóre: 21
    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: 29 | 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
    29.9.2013 21:52 hermelin | skóre: 21
    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: 29 | 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
    29.9.2013 22:05 hermelin | skóre: 21
    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: 29 | 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
    Petr Maleček avatar 29.9.2013 22:49 Petr Maleček | skóre: 29 | 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
    29.9.2013 22:53 hermelin | skóre: 21
    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: 29 | 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
    Petr Maleček avatar 29.9.2013 22:00 Petr Maleček | skóre: 29 | 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

    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.