Então eu contemplei como eu poderia resolver esse problema usando tecnologia. Isso é o que os geeks fazem, certo?
Sim, eu sei, eu provavelmente poderia ligar para a Verizon e atualizar o roteador, tenho certeza de que eles têm um modelo melhor agora. E com certeza você pode atualizar o firmware, mas isso não funcionará para o meu roteador antigo, já que não há uma atualização. Tempo para uma solução mais fácil que, idealmente, envolve um cron job. Empregos em Cron são sempre uma boa decisão.
Após três minutos de pesquisa e brainstorming, uma solução se apresentou: Você pode ativar o telnet no roteador, configurar um script que execute automaticamente uma série de comandos usando a interface telnet e agendar esse script com um cron job para ser executado regularmente. base. Para mim, isso significava todas as manhãs às 7 da manhã, uma hora antes de eu acordar e novamente às 17h30, já que estou sempre fora de casa naquele momento. Problema resolvido, e posso usar o Vim, o que também me deixa feliz.
E, claro, você pode fazer um script para ser executado sob demanda para reinicializar imediatamente o roteador sempre que quiser.
Nota:provavelmente você pode fazer o mesmo com um roteador que não é a Verizon. Você precisará verificar o painel de administração do seu roteador e ver como as opções funcionam nele.
Conectando ao seu roteador via Telnet
A primeira coisa que você vai querer fazer é descobrir como ativar o telnet no roteador. Para o roteador da Verizon, isso exigia entrar em Advanced -> Local Administration e certificar-se de que "Using Primary Telnet Port" está habilitado. Certifique-se de clicar em Aplicar.
telnet 192.168.1.1
Quando estiver lá, você geralmente pode digitar o comando help para ver quais são as opções. Para a Verizon FIOS, a opção que eu estava procurando estava na subseção do sistema e foi apropriadamente chamada de “reboot”. Você tem que digitar “reinicialização do sistema” e não apenas “reinicializar”.
Scripting Telnet através do Terminal (OS X ou Linux ou Cygwin no Windows)
Vamos supor que você tenha acesso ao bash shell, seja em seu sistema operacional normal ou se seu sistema operacional (Windows) não tiver o bash, talvez seja necessário instalar o Cygwin.
É incrivelmente fácil criar scripts de um conjunto de comandos e enviá-los para o aplicativo telnet. Tudo o que você precisa fazer é algo assim:
(echo commandname;echo anothercommand) | telnet 192.168.1.1
O único problema é o login irritante que você tem que passar … ele não aparece imediatamente. Então, se você enviar um "echo admin" e depois "echo password", isso acontecerá com muita rapidez e não será enviado para o servidor. A solução? Use o comando sleep!
Adicionando um par de sleep 3 comandos, para esperar três segundos, resolve o problema. Primeiro, vamos ecoar o nome de usuário e a senha e, em seguida, repetiremos o comando de reinicialização e, cada vez, esperaremos três segundos entre eles. O comando final irá reiniciar o servidor imediatamente:
(sleep 3;echo admin;sleep 3;echo mypassword;sleep 3;echo system reboot;sleep 3;) | telnet 192.168.1.1
Você pode colocar isso em um shell script e executá-lo sempre que quiser. Ou você pode adicioná-lo ao seu cron assim (no OS X ou Linux):
crontab -e
Adicione esta linha em algum lugar:
1 7 * * * (sleep 3;echo admin;sleep 3;echo mypassword;sleep 3;echo system reboot;sleep 3;) | telnet 192.168.1.1
Isso irá reiniciar o seu roteador às 7h01 da manhã.
Reiniciando o roteador do Windows Way
Se você está executando o Windows, é muito mais complicado agendar isso automaticamente, mas podemos defini-lo com bastante facilidade. Primeiro, você precisará entrar no Painel de Controle, acessar o painel "Ativar ou desativar recursos do Windows" (basta procurá-lo) e, em seguida, ativar o Cliente de Telnet.
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
Salve-o como uma extensão.vbs e, em seguida, clique duas vezes nele sempre que desejar reinicializar o roteador.
Agendamento no Windows com uma tarefa agendada
Abra o Agendador de Tarefas e crie uma nova Tarefa Básica, dando a ela um nome e uma agenda - diariamente em um determinado horário. Em seguida, use a opção Iniciar um programa e navegue até o arquivo de script que você criou.
Nota:As instruções neste artigo são específicas do Verizon FIOS, mas você provavelmente pode fazer isso com qualquer roteador. Entre em contato se quiser que funcione com outro roteador e atualizaremos o artigo para refleti-lo.