/ / Kaip automatiškai perkrauti maršrutizatorių Geeky Way

Kaip automatiškai perkrauti maršrutizatorių

„Verizon FIOS“ yra puikus - greitis yraneįtikėtina, o kaina yra ... na, šiek tiek brangi. Tikroji problema yra ta, kad baisų maršrutizatorių, kurį jie jums suteikia, reikia visą laiką perkrauti, o tai yra karališkas skausmas, atsižvelgiant į tai, kad jis rūsyje. Be to, aš nenoriu išlipti iš sofos.

Taigi aš svarstiau, kaip galėčiau išspręsti šią problemą, naudodamas technologijas. Štai ką daro geikai, tiesa?

Taip, aš žinau, tikriausiai galėčiau paskambinti „Verizon“ iratnaujinti maršrutizatorių, esu tikras, kad dabar jie turi geresnį modelį. Ir tikrai, jūs galite atnaujinti programinę-aparatinę įrangą, tačiau ji neveiks mano senam maršrutizatoriui, nes nėra atnaujinimo. Laikas paprastesniam sprendimui, kuris idealiu atveju apima „cron“ darbą. „Cron“ darbai visada yra geras sprendimas.

Po trijų minučių tyrimų irsmegenų šturmas, pristatytas pats sprendimas: maršrutizatoriuje galite įjungti telnet, nustatyti scenarijų, kuris automatiškai paleidžia komandų serijas naudodamas telnet sąsają, ir tada suplanuoti tą scenarijų su cron darbu reguliariai. Man tai reiškė kiekvieną rytą 7 ryto, valandą prieš pabudimą ir vėl 17:30, nes aš visada būnu iš namų. Problema išspręsta ir aš galiu naudoti „Vim“, kuris mane taip pat džiugina.

Ir, be abejo, galite sukurti scenarijų, kad jis būtų vykdomas pagal pareikalavimą, kad iškart paleistumėte maršrutizatorių, kai tik norite.

Pastaba: turbūt tą patį galite padaryti ir su kelvedžiu, kuris nėra „Verizon“. Turėsite patikrinti maršrutizatoriaus administravimo skydą ir sužinoti, kaip ten veikia parinktys.

Prisijungimas prie maršrutizatoriaus per „Telnet“

Pirmas dalykas, kurį norėsite padaryti, yra išsiaiškintikaip įjungti telnet maršrutizatoriuje. Tam „Verizon“ maršrutizatoriui reikėjo pereiti į „Advanced -> Local Administration“ ir įsitikinti, kad įjungtas „Use Primary Telnet Port“. Būtinai spustelėkite Taikyti.

Šiuo metu jūs galite lengvai naudotis telnet išterminalas arba komandinė eilutė prisijungti prie maršrutizatoriaus. Jei naudojate „Windows“, greičiausiai turėsite įgalinti telnet. Norėdami prisijungti, tiesiog įveskite šį žodį, jei reikia, pakeisdami savo maršrutizatoriaus IP adresą (nors dauguma jų naudojasi 192 diapazonu)

telnet 192.168.1.1

Kai esate ten, paprastai galite įvestipagalbos komanda, kad pamatytumėte, kokios yra parinktys. „Verizon FIOS“ variantas, kurio aš ieškojau, buvo sistemos poskyryje ir buvo tinkamai pavadintas „reboot“. Turite iš tikrųjų įvesti „system reboot“, o ne tik „reboot“.

Kai tik nurodysite komandą, būsite atjungti, o maršrutizatorius bus paleistas iš naujo. Lengva, taip. Bet kas gi nori visa tai rašyti kiekvieną kartą?

„Telnet“ scenarijavimas per terminalą („OS X“ arba „Linux“ arba „Cygwin“ „Windows“)

Manysime, kad turite prieigą prie „bash“ apvalkalo, nesvarbu, ar tai jūsų įprastoje OS, arba jei jūsų OS („Windows“) nėra bash, jums gali tekti įdiegti „Cygwin“.

Stebina, kad nesunku nuskaityti komandų rinkinį ir įterpti juos į telnet programą. Viskas, ką jums reikia padaryti, yra kažkas tokio:

(echo commandname;echo anothercommand) | telnet 192.168.1.1

Vienintelė problema yra slaptas prisijungimas, kurį jūsturi praeiti ... jis iškart nepasirodo. Taigi, jei įvesite „echo admin“, o tada „echo password“, tai įvyks per greitai ir nebus išsiųstas į serverį. Sprendimas? Pasinaudokite miego komanda!

Per kelias miego valandas pridedant 3 komandasper tris sekundes išsprendžia problemą. Pirmiausia pakartosime vartotojo vardą ir slaptažodį, o tada pakartosime komandą iš naujo - ir kiekvieną kartą lauksime tris sekundes. Galutinė komanda nedelsdama paleis serverį:

(sleep 3;echo admin;sleep 3;echo mypassword;sleep 3;echo system reboot;sleep 3;) | telnet 192.168.1.1

Galite tai sudėti į apvalkalo scenarijų ir paleisti jį kada panorėję. Arba galite pridėti jį prie savo cron taip („OS X“ ar „Linux“):

crontab -e

Pridėkite šią eilutę kažkur:

1 7 * * * (sleep 3;echo admin;sleep 3;echo mypassword;sleep 3;echo system reboot;sleep 3;) | telnet 192.168.1.1

Tai leis iš naujo paleisti maršrutizatorių kiekvieną rytą 7:01 val.

Iš naujo paleiskite maršrutizatorių „Windows Way“

Jei naudojate „Windows“, tai yra daug daugiausudėtinga suplanuoti tai automatiškai, tačiau tikrai lengvai galime jį nuskaityti. Pirmiausia turėsite apsilankyti Valdymo skyde, apsilankę skydelyje „Įjungti arba išjungti„ Windows “funkcijas“ (tiesiog jo ieškokite) ir tada įgalinę „Telnet Client“.

Dabar galite įklijuoti šiuos dalykus į „Notepad“, betjei reikia, pakeiskite maršrutizatoriaus IP ir pakeiskite „mypassword“ eilutę savo tikruoju slaptažodžiu. Gali reikėti redaguoti skirtingų komandų scenarijus.

Option explicit
Dim oShell
set oShell= Wscript.CreateObject("WScript.Shell")
oShell.Run "telnet"
WScript.Sleep 3000
oShell.Sendkeys "open 192.168.1.1~"
WScript.Sleep 3000
oShell.Sendkeys "admin~"
WScript.Sleep 3000
oShell.Sendkeys "mypassword~"
WScript.Sleep 3000
oShell.Sendkeys "system reboot~"
WScript.Sleep 3000
oShell.Sendkeys "~"
Wscript.Quit

Išsaugokite jį kaip .vbs plėtinį ir tada galėsite dukart spustelėti ant jo bet kuriuo metu, kai norite iš naujo paleisti maršrutizatorių.

Planavimas sistemoje „Windows“ su suplanuota užduotimi

Atidarykite užduočių planuoklę ir sukurkite naują „Basic“Užduotis, suteikiant jai pavadinimą ir grafiką - kasdien, tam tikru metu, dirbtų. Tada naudokite parinktį Pradėti programą ir suraskite scenarijų failą, kurį sukūrėte.

Tai beveik viskas, ką turite padaryti.

Pastaba: šiame straipsnyje pateiktos instrukcijos yra konkrečios„Verizon FIOS“, bet greičiausiai tai galite padaryti naudodami bet kurį maršrutizatorių. Praneškite mums komentaruose, jei norite, kad jis veiktų su kitu maršrutizatoriumi, ir mes atnaujinsime straipsnį, kad jis atspindėtų.