21Jul

Wie man den Router automatisch auf die Geeky Art neu startet

Verizon FIOS ist großartig - die Geschwindigkeiten sind unglaublich, und der Preis ist. .. gut, ein bisschen teuer. Das eigentliche Problem ist, dass der schreckliche Router, den sie dir geben, ständig neu gestartet werden muss, was ein königlicher Schmerz ist, wenn man bedenkt, dass es im Keller ist. Außerdem möchte ich nicht von der Couch aufstehen.

Also überlegte ich, wie ich dieses Problem mit Technologie lösen könnte. Das machen Geeks, oder?

Ja, ich weiß, ich könnte wahrscheinlich Verizon anrufen und den Router upgraden, ich bin mir sicher, dass sie jetzt ein besseres Modell haben. Und sicher, Sie können die Firmware aktualisieren, aber das funktioniert nicht für meinen alten Router, da es kein Update gibt. Zeit für eine einfachere Lösung, die idealerweise einen Cron-Job beinhaltet. Cron Jobs sind immer eine gute Entscheidung.

Nach drei Minuten Recherche und Brainstorming stellte sich eine Lösung vor: Sie können Telnet auf dem Router aktivieren, ein Skript einrichten, das automatisch eine Reihe von Befehlen über die Telnet-Schnittstelle ausführt, und dann dieses Skript mit einem Cron-Job planen, um auf einem auszuführenregelmäßig. Für mich bedeutete das jeden Morgen um 7 Uhr morgens, eine Stunde vor dem Aufstehen und dann wieder um 17:30 Uhr, da ich zu diesem Zeitpunkt immer außer Haus bin. Problem gelöst, und ich kann Vim verwenden, was mich auch glücklich macht.

Und natürlich können Sie ein Skript erstellen, das bei Bedarf ausgeführt wird, um den Router sofort neu zu starten, wann immer Sie möchten.

Hinweis: können Sie wahrscheinlich dasselbe mit einem Router tun, der nicht Verizon ist. Sie müssen Ihre Router-Administrationsoberfläche überprüfen und sehen, wie die Optionen dort funktionieren.

Verbinden mit Ihrem Router über Telnet

Als erstes sollten Sie herausfinden, wie Sie Telnet auf dem Router aktivieren können. Für den Verizon-Router erforderte das, in Erweitert zu gehen - & gt;Lokale Administration und stellen Sie sicher, dass "Primary Telnet Port verwenden" aktiviert ist. Vergewissern Sie sich, dass Sie auf Übernehmen klicken.

An dieser Stelle können Sie telnet einfach vom Terminal oder der Eingabeaufforderung aus verwenden, um eine Verbindung zum Router herzustellen. Wenn Sie Windows verwenden, müssen Sie wahrscheinlich Telnet aktivieren. Um eine Verbindung herzustellen, geben Sie einfach die IP-Adresse für die IP-Adresse Ihres eigenen Routers ein( obwohl die meisten den Bereich 192 verwenden).

telnet 192.168.1.1

Sobald Sie dort sind, können Sie normalerweise den Hilfe-Befehl eingebenSehen Sie, was die Optionen sind. Für Verizon FIOS war die Option, nach der ich suchte, im Unterabschnitt system und trug den passenden Titel "reboot". Sie müssen tatsächlich "system reboot" eingeben und nicht nur "rebooten".

Sobald Sie den Befehl an der Eingabeaufforderung eingegeben haben, wird die Verbindung getrennt und der Router wird neu gestartet. Einfach, ja. Aber wer möchte jedes Mal dieses Tippen machen?

Scripting von Telnet über das Terminal( OS X oder Linux oder Cygwin unter Windows)

Wir gehen davon aus, dass Sie Zugriff auf die Bash-Shell haben, ob dies in Ihrem normalen Betriebssystem ist oder ob Ihr Betriebssystem( Windows) bash hatMöglicherweise müssen Sie Cygwin installieren.

Es ist überraschend einfach, einen Befehlssatz zu skripten und ihn in die Telnet-Anwendung zu leiten. Alles, was Sie tun müssen, ist etwa so:

( echo commandname; echo anothercommand) |Telnet 192.168.1.1

Das einzige Problem ist die nagende Anmeldung, die Sie durchkommen müssen. .. es wird nicht sofort angezeigt. Wenn Sie also einen "echo admin" und dann "echo password" eingeben, passiert das zu schnell und wird nicht an den Server gesendet. Die Lösung? Benutze den Schlafbefehl!

Das Hinzufügen von ein paar Schlaf 3 Befehlen, um drei Sekunden zu warten, löst das Problem. Zuerst werden wir den Benutzernamen und das Passwort wiederholen, und dann werden wir den Neustart-Befehl wiederholen, und jedes Mal warten wir drei Sekunden dazwischen. Der letzte Befehl startet den Server sofort neu:

( Schlaf 3; Echo Admin; Schlaf 3; Echo Mypassword; Schlaf 3; Echo System Neustart; Schlaf 3;) |telnet 192.168.1.1

Sie können dies in ein Shell-Skript einfügen und es ausführen, wann immer Sie möchten. Oder Sie können es Ihrem Cron so hinzufügen( unter OS X oder Linux):

crontab -e

Fügen Sie diese Zeile irgendwo hinzu:

1 7 * * *( Schlaf 3; Echo Admin; Schlaf 3; Echo Mypassword; Schlaf 3;echo system reboot; sleep 3;) |telnet 192.168.1.1

Dies startet Ihren Router jeden Morgen um 7:01 Uhr neu.

Neustart des Routers Windows

Wenn Sie Windows verwenden, ist es viel komplizierter, dies automatisch zu planen, aber wir können es auf jeden Fall leicht genug skripten. Zuerst müssen Sie in die Systemsteuerung wechseln, zum Fenster "Windows-Funktionen aktivieren oder deaktivieren" wechseln( suchen Sie einfach danach) und dann den Telnet-Client aktivieren.

Jetzt können Sie Folgendes in Notepad einfügen, aber ändern Sie bei Bedarf die IP-Adresse des Routers, und ändern Sie stattdessen die mypassword-Zeile, um Ihr tatsächliches Kennwort zu sein. Möglicherweise müssen Sie das Skript für verschiedene Befehle bearbeiten.

Option explizit Dim oShell set oShell = Wscript. CreateObject( "WScript. Shell") oShell. Run "telnet" WScript. Sleep 3000 oShell. Sendkeys "Öffnen 192.168.1.1 ~" WScript. Sleep 3000 oShell. Sendkeys "admin ~" WScript. Sleep 3000 oShell. Sendkeys "mypassword ~" WScript. Sleep 3000 oShell. Sendkeys "Systemneustart ~" WScript. Sleep 3000 oShell. Sendkeys "~" Wscript. Quit

Speichern Sie es als. vbs-Erweiterung, und dann können Sie verdoppeln- Klicken Sie darauf, wenn Sie den Router neu starten möchten.

Scheduling in Windows mit einem geplanten Task

Öffnen Sie den Taskplaner, und erstellen Sie einen neuen grundlegenden Task, der ihm einen Namen und einen Zeitplan gibt - täglich zu einer bestimmten Zeit. Verwenden Sie dann die Option Programm starten und navigieren Sie zu der von Ihnen erstellten Skriptdatei.

Das ist alles, was Sie tun müssen.

Hinweis: Die Anweisungen in diesem Artikel beziehen sich auf Verizon FIOS, aber Sie können dies wahrscheinlich mit jedem Router tun. Bitte lassen Sie uns in den Kommentaren wissen, wenn Sie es mit einem anderen Router arbeiten und wir aktualisieren den Artikel, um es zu reflektieren.