Router neustarten vom PC mit Python - Script
Um seinen Router neu zu starten kann man einfach den Stecker ziehen und wieder einstecken, der Router wird nach erneuter Stromzufuhr seinen Dienst aufnehmen, die konfigurierten Netzwerkeinstellungen wieder herstellen und sich mit den hinterlegten Anmeldedaten mit dem ISP der Wahl verbinden.Dies ist sicher eine sehr sichere, sowie einfache Methode, welche jedoch einen Nachteil hat, diese Methode funktioniert nur in direktem Kontak mit dem Router.
Möchte man sich den Weg zum Router ersparen, da man faul ist und/oder seinen Router des öfteren neustarten muss, so kann man die routereigene Software nutzen, welche meist über das HTTP-Protokoll und der IP des Routers zu erreichen ist.
Diese Methode erspart den Weg zum Router, erfordert jedoch die Eingabe der Zugangsdaten und mehrere Folgelicks.
Um mir eine dritte, weitaus komfortablere Lösung zu schaffen, habe ich mir für python das mechanize module installiert und die Steuerung meines Routers "Speedport W701V" von der Telekom über HTML mal genauer angeschaut. Nun habe ich ein Skript, restartthebox genannt, zum automatischen Neustart des Routers geschrieben, welches sich nach Ausfürung automatisch beim Router anmeldet und auf der richtigen Seite den Befehl zum Reboot ausführt.
import mechanize
def restartthebox():
br = mechanize.Browser()
br.open('http://192.168.1.1/cgi-bin/webcm?getpage=../html/hcti_startseite.htm')
br.select_form("PWD")
br["login:command/password"] = '0000'
br.submit()
br.open('http://192.168.1.1/cgi-bin/webcm?getpage=../html/hcti_hilfsmittel_reboot.htm')
br.select_form("setRebForm")
br.submit()
restartthebox()
Die IP-Adresse und das Passwort sind eventuell anzupassen, und sicherlich bei vielen anderen Routern grundverschieden, aber man kann sich hier evtuelle Tips fürs eigene Skript abschauen. Ob man solche Skripte überhaupt benutzen darf mit den erworben Routern, oder gewählten ISP ist sicher eine Rechsfrage welche ich nicht klären kann/will. Dieses Skript dient nur zum Aufzeigen der Möglickeiten und die Verantwortung für die Verwendung liegt bei jedem selbst.