Come riavviare automaticamente il router in modo Geeky

Sommario:

Come riavviare automaticamente il router in modo Geeky
Come riavviare automaticamente il router in modo Geeky

Video: Come riavviare automaticamente il router in modo Geeky

Video: Come riavviare automaticamente il router in modo Geeky
Video: Windows Command Line Tutorial 8 - File Attributes - YouTube 2024, Maggio
Anonim
Verizon FIOS è fantastico - le velocità sono incredibili e il prezzo è … beh, un po 'caro. Il vero problema è che il terribile router che ti danno ha bisogno di essere riavviato in continuazione, il che è un dolore reale considerando che è giù nel seminterrato. Inoltre, non voglio scendere dal divano.
Verizon FIOS è fantastico - le velocità sono incredibili e il prezzo è … beh, un po 'caro. Il vero problema è che il terribile router che ti danno ha bisogno di essere riavviato in continuazione, il che è un dolore reale considerando che è giù nel seminterrato. Inoltre, non voglio scendere dal divano.

Così ho pensato a come risolvere questo problema usando la tecnologia. Questo è ciò che fanno i geek, giusto?

Sì, lo so, probabilmente potrei chiamare Verizon e aggiornare il router, sono sicuro che ora hanno un modello migliore. E sicuramente, è possibile aggiornare il firmware, ma questo non funzionerà con il mio vecchio router poiché non c'è un aggiornamento. Tempo per una soluzione più semplice che idealmente coinvolge un lavoro cron. I lavori di Cron sono sempre una buona decisione.

Dopo tre minuti di ricerca e brainstorming, si è presentata una soluzione: è possibile abilitare telnet sul router, impostare uno script che esegua automaticamente una serie di comandi utilizzando l'interfaccia telnet e quindi pianificare lo script con un cron job da eseguire su un normale base. Per me, ciò significava ogni mattina alle 7 del mattino, un'ora prima del mio risveglio, e di nuovo alle 5:30 del pomeriggio, visto che sono sempre fuori di casa a quel punto. Problema risolto, e posso usare Vim, che mi rende anche felice.

E, naturalmente, è possibile eseguire uno script su richiesta per riavviare immediatamente il router quando lo si desidera.

Nota:probabilmente puoi fare la stessa cosa con un router che non è Verizon. Dovrai controllare il pannello di amministrazione del tuo router e vedere come funzionano le opzioni lì.

Connessione al tuo router tramite Telnet

La prima cosa che vorrai fare è capire come abilitare il telnet sul router. Per il router Verizon, è stato necessario accedere a Advanced -> Local Administration e assicurarsi che "Using Primary Telnet Port" sia abilitato. Assicurati di fare clic su Applica.

A questo punto è possibile utilizzare facilmente telnet dal terminale o prompt dei comandi per connettersi al router. Se stai usando Windows, probabilmente dovrai abilitare Telnet. Per connetterti, digita questo, sostituendo l'indirizzo IP per l'IP del tuo router, se necessario (anche se molti sono impostati per utilizzare l'intervallo 192)
A questo punto è possibile utilizzare facilmente telnet dal terminale o prompt dei comandi per connettersi al router. Se stai usando Windows, probabilmente dovrai abilitare Telnet. Per connetterti, digita questo, sostituendo l'indirizzo IP per l'IP del tuo router, se necessario (anche se molti sono impostati per utilizzare l'intervallo 192)

telnet 192.168.1.1

Una volta che sei lì, di solito puoi digitare il comando help per vedere quali sono le opzioni. Per Verizon FIOS, l'opzione che stavo cercando era nella sottosezione di sistema, ed era giustamente intitolata "reboot". In realtà devi digitare "riavvio del sistema" e non solo "riavvio".

Dopo aver digitato il comando al prompt, verrai disconnesso e il router verrà riavviato. Facile, sì. Ma chi vuole fare tutto ciò che scrive ogni volta?
Dopo aver digitato il comando al prompt, verrai disconnesso e il router verrà riavviato. Facile, sì. Ma chi vuole fare tutto ciò che scrive ogni volta?

Scripting Telnet tramite il terminale (OS X o Linux o Cygwin su Windows)

Daremo per scontato che tu abbia accesso alla bash shell, sia nel tuo normale SO, sia che il tuo SO (Windows) non abbia bash, potresti dover installare Cygwin.

È sorprendentemente facile scrivere una serie di comandi e inserirli nell'applicazione telnet. Tutto ciò che devi fare è qualcosa del genere:

(echo commandname;echo anothercommand) | telnet 192.168.1.1

L'unico problema è il fastidioso login che devi superare … non viene visualizzato subito. Quindi, se inserisci un "echo admin" e poi "echo password", avverrà troppo rapidamente e non verrà inviato al server. La soluzione? Usa il comando di sonno!

Aggiungendo un paio di comandi sleep 3, per attendere tre secondi, risolve il problema. Per prima cosa echeggeremo il nome utente e la password, quindi echeeremo il comando di riavvio e ogni volta aspetteremo tra tre secondi. Il comando finale riavvierà immediatamente il server:

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

Puoi metterlo in uno script di shell ed eseguirlo quando vuoi. Oppure puoi aggiungerlo al tuo cron in questo modo (su OS X o Linux):

crontab -e

Aggiungi questa linea da qualche parte:

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

Questo riavvierà il router alle 7:01 AM ogni mattina.

Riavvio del router in modalità Windows

Se stai usando Windows, è molto più complicato programmarlo automaticamente, ma possiamo sicuramente copiarlo abbastanza facilmente. Per prima cosa devi andare nel Pannello di controllo, andare al pannello "Attiva o disattiva le funzionalità di Windows" (cercalo solo), quindi abilitare il client Telnet.

Ora è possibile incollare quanto segue in Blocco note, ma modificare l'IP del router se necessario, e modificare invece la linea di parole chiave in modo che sia la propria password effettiva. Potrebbe essere necessario modificare lo script per diversi comandi.
Ora è possibile incollare quanto segue in Blocco note, ma modificare l'IP del router se necessario, e modificare invece la linea di parole chiave in modo che sia la propria password effettiva. Potrebbe essere necessario modificare lo script per diversi comandi.
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

Salvalo come estensione.vbs, quindi puoi fare doppio clic su di esso ogni volta che desideri riavviare il router.

Image
Image

Pianificazione in Windows con un'attività pianificata

Aprire l'Utilità di pianificazione e creare una nuova attività di base, assegnandogli un nome e un programma - ogni giorno a un certo orario funzionerebbe. Quindi utilizza l'opzione Avvia un programma e cerca il file di script che hai creato.

Questo è praticamente tutto quello che devi fare.
Questo è praticamente tutto quello che devi fare.

Nota:le istruzioni in questo articolo sono specifiche per Verizon FIOS ma è possibile farlo con qualsiasi router. Fateci sapere nei commenti se si lavora con un altro router e aggiorneremo l'articolo per rispecchiarlo.

Consigliato: