Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Automatyczny restart połączenia w modemach neostrady od Orange - funbox, livebox

sylweksylwina 06 Jun 2017 13:54 13545 0
  • #1
    sylweksylwina
    Moderator of Computers service
    Jednym z głównych mankamentów neostrady od firmy Orange jest zmiana IP co ok. 24h. Doskonale wiem, że jest to uciążliwe, zwłaszcza jak mamy własny serwer.

    Biznesowe łącza od Orange ze stałym IP stanowczo są zbyt drogie, a z pomocą Dynamicznego DNS zmiany IP można przeboleć.

    Zostaje kwestia kiedy chcemy zmiany IP? Można powiedzieć, że można zresetować router o określonej porze, lecz na tym nie zawsze można polegać.

    Dlatego dzięki prostemu skryptowi z wykorzystaniem biblioteki cURL będziemy mieć nad tym kontrolę. Wiem, że można to zrealizować za pomocą np. czasowego wyłącznika zasilania, lecz nie mamy pewności, że np. DSLAM nie obetnie nam przepustowości, jak będzie widział ciągłe zaniki synchronizacji DSL.

    Skrypt nie resetuje routera, lecz restartuje samo połączenie z internetem.
    Osobiście testowałem go na routerze Funbox 2.0, lecz z livebox'em i innymi routerami z Firmware "SoftAtHome" powinien również działać bez zarzutu.

    Z gotowych rozwiązań nie znalazłem działającego skryptu resetu połączenia, więc należało samemu coś zdziałać. Jeżeli chodzi o podobne sprawy tyczące się tych routerów, to m. in. na forach francuskich można znaleźć podobne próby rozwiązania tego lub innych problemów.

    Z pewnością konsola (F12) i zakładka network w google chrome była bardzo pomocna.
    Poniżej skrypt w bash'u. Wymaga zainstalowania: jq oraz curl'a

    Code: bash
    Log in, to see the code


    Jeżeli chodzi o skrypt w CMD, wymaga uruchomienia w folderze z curl.exe i ca-bundle.crt, oba dostępne z paczki curl'a do pobrania
    tutaj oraz jq-win32.exe do pobrania tutaj.
    Code: dos
    Log in, to see the code


    Na koniec można zautomatyzować proces resetu np. w cron'ie jeżeli chodzi o system linux wydając komendę crontab -e i dodając w naszym edytorze przykładowo linię
    Code: bash
    Log in, to see the code

    W tym przypadku reset nastąpi codziennie o godzinie 6 rano.
    A my nie doświadczymy zrywania połączenia o innych porach.

    Edit 16.07 2017: Niestety Orange wprowadził nową wersję softu o oznaczeniu SG10_sip-pl-6.2.19.17 (przynajmniej jeżeli chodzi o funbox 2.0), w którym logowanie zrealizowane jest przez javascript. Postaram się przygotować nowszą wersję wkrótce.
    Niestety nastąpiła pomyłka. Mimo nowszej wersji softu skrypt dalej działa, po prostu przy migracji na nowy serwer, zapomniałem zainstalować pakiet jq.