Затова размишлявах как мога да разреша този проблем, използвайки технологията. Това е, което правят джуджетата, нали?
Да, аз знам, вероятно бих могъл да се обадя на Verizon и ъпгрейд на рутера, аз съм сигурен, че те имат по-добър модел сега. И със сигурност можете да актуализирате фърмуера, но това няма да работи за стария ми рутер, тъй като няма актуализация. Време е за по-лесно решение, което в идеалния случай включва работа cron. Работите на Cron винаги са добро решение.
След три минути разследване и мозъчна атака се представи едно решение: можете да активирате телнет на рутера, да настроите скрипт, който автоматично изпълнява серия от команди, като използвате интерфейса на телнет и след това насрочете този скрипт с задача cron, за да стартирате редовно основа. За мен това означаваше всяка сутрин в 7 часа, един час преди да се събудя и отново в 17:30, тъй като винаги съм излизал от къщата в този момент. Проблемът е решен и мога да използвам Вим, което също ме прави щастлив.
Разбира се, можете да направите скрипт, който да се изпълнява при поискване, за да рестартирате рутера веднага, когато пожелаете.
Забележка:вероятно можете да направите същото нещо с маршрутизатор, който не е Verizon. Ще трябва да проверите панела за администриране на маршрутизатора и да видите как работят опциите там.
Свързване към маршрутизатора чрез Telnet
Първото нещо, което ще искате да направите, е да разберете как да активирате телнет на рутера. За рутера на Verizon, който изискваше да влезете в Advanced -> Local Administration и да сте сигурни, че "Използването на Primary Telnet Port" е активирано. Уверете се, че сте кликнали върху Приложи.
telnet 192.168.1.1
Веднъж, когато сте там, обикновено можете да въведете командата за помощ, за да видите какви са опциите. За Verizon FIOS, опцията, която търсех, беше в подраздел на системата и беше подходящо озаглавена "рестартиране". Трябва да въведете "рестартиране на системата", а не само "рестартиране".
Скриптиране на Telnet през терминала (OS X или Linux или Cygwin на Windows)
Предполагаме, че имате достъп до башевата обвивка, независимо дали това е в нормалната ви операционна система или ако вашата операционна система (Windows) няма баш, може да се наложи да инсталирате Cygwin.
Изненадващо е лесно да програмирате набор от команди и да ги въведете в приложението telnet. Всичко, което трябва да направите, е нещо като това:
(echo commandname;echo anothercommand) | telnet 192.168.1.1
Единственият проблем е заблуждаващото влизане, което трябва да преминете … не се показва веднага. Така че, ако тръбите в "ехо администратор" и след това "ехо парола", това ще стане твърде бързо и няма да бъде изпратено на сървъра. Решението? Използвайте командата за сън!
Добавянето на няколко команди за сън 3, за да изчакате три секунди, решава проблема. Първо ще отразим потребителското име и паролата, след което ще отразим командата за рестартиране и всеки път ще изчакаме между три секунди. Последната команда незабавно ще рестартира сървъра:
(sleep 3;echo admin;sleep 3;echo mypassword;sleep 3;echo system reboot;sleep 3;) | telnet 192.168.1.1
Можете да поставите това в скрипт на shell и да го изпълнявате винаги, когато пожелаете. Или можете да го добавите към вашия cron като този (на OS X или Linux):
crontab -e
Добавете този ред някъде:
1 7 * * * (sleep 3;echo admin;sleep 3;echo mypassword;sleep 3;echo system reboot;sleep 3;) | telnet 192.168.1.1
Това ще рестартира рутера ви в 7:01 часа всяка сутрин.
Рестартиране на Router на Windows Way
Ако работите с Windows, е много по-сложно да планирате автоматично това, но със сигурност можем да го скрием достатъчно лесно. Първо ще трябва да отидете в контролния панел, да влезете в панела "Включване или изключване на функциите на Windows" (просто го потърсете) и след това да активирате 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
Запишете го като разширение.vbs и след това можете да го щракнете двукратно по всяко време, когато искате да рестартирате маршрутизатора.
Програмиране в Windows с планирана задача
Отворете "Планиращия на задачите" и създайте нова "Основна задача", давайки му име и график - всеки ден в определено време ще работи. След това използвайте опцията Стартиране на програма и прегледайте създадения от вас скриптов файл.
Забележка:инструкциите в тази статия са специфични за Verizon FIOS, но вероятно можете да направите това с всеки рутер. Моля, уведомете ни в коментарите, ако го използвате, за да работи с друг рутер, и ние ще актуализираме статията, за да го отразим.