AVM FRITZ!Box automatisch neu starten (lassen) – Andy's Blog (2024)

Eine FRITZ!Box kann eine feine Sache sein, aber so manchmal gibt’s auch kleine Makel, wie z.B. diesen: Bei einem Kunden streikt schon fast regelmässig das WLAN.

Oft geht die Performance zurück und manchmal bleiben Geräte als Verbunden “hängen”, obwohl diese nicht mal mehr ansatzweise in der Nähe sind (Live beobachtet z.B. mit meinem Notebook als auch mit diversen Smartphones und Tablets). Helfen tut in aller Regel ein Neustart.

Nun ist es lästig alle paar Tage sich mit dem Webinterface verbinden zu dürfen, um einen Neustart auszulösen. Unterm Tag ist das zwecks “arbeiten können” sowieso eher ungut. Abhilfe schafft das Auslösen des Neustarts z.B. von einem sowieso immer laufenden System aus wieetwa Server, NAS oder ähnliches.

Im Netz kursieren hierzu viele Beispiele. Wichtig ist, dass das verwendete Skript mit aktuellen Firmware-Versionen funktioniert. Ältere Skripte die auf die WEBCM-Schnittstelle setzen, können nicht mehr angewendet werden. Eine weitere Möglichkeit wäre telnet zu verwenden, sofern man es vorher aktiviert, allerdings wird dies seit Version 6.25 nicht mehr unterstützt. Ohne größere Umwege geht es über das Router-Verwaltungsprotokoll TR-064.

Ein sehr schönes und leicht zu verstehendes Skript für Linux liefert Nico Hartung:

loggn.de – FRITZ!Box oder Repeater automatisch neustarten lassen – Linux Bash-Skript

GitHub – cron_fritzbox-reboot – FRITZ!Box Neustart Skript – jede Nacht, einmal die Woche, wie ihr wollt

Bei meinen Tests klappte das Auslösen eines Neustarts aber nur mit einem Benutzer, der FRITZ!Box-Einstellungen ändern darf. Nur mit dem Weboberflächen-Kennwort allein kommt folgende Fehlermeldung:

<?xml version="1.0"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><s:Fault><faultcode>s:Client</faultcode><faultstring>UPnPError</faultstring><detail><UPnPError xmlns="urn:dslforum-org:control-1-0"><errorCode>606</errorCode><errorDescription>Action Not Authorized</errorDescription></UPnPError></detail></s:Fault></s:Body></s:Envelope>

Dieses Verhalten ist bekannt:

Authentifizierung nicht möglich

Dokumentation der FRITZUSER Variable verbessern

D.h. in neueren Firmware-Versionen kann man den Fritz!Box-Benutzernamen, der automatisch angelegt wird und für den das voreingestellte oder selbst konfigurierte Kennwort gilt, auslesen:

Alternativ einen neuen FRITZ!Box-Benutzer anlegen, bei diesem den Haken setzen bei

  • FRITZ!Box Einstellungen
    Benutzer mit dieser Berechtigung können alle Einstellungen der FRITZ!Box sehen und bearbeiten.

Diese Zugangsdaten dann in das Skript bei den entsprechenden Variablen eintragen.

Das Skript lässt sich nahezu unverändert unter FreeBSD bzw. pfSense verwenden. Man muss lediglich die erste Zeile von

#!/bin/bash

zu

#!/bin/sh

ändern und vor “curl…” (Zeile 36) noch den Pfad “/usr/local/bin/” einfügen, andernfalls funktioniert es mittels cron/crontab unter FreeBSD nicht:

/usr/local/bin/curl -k -m 5 --anyauth...

Den richtigen Pfad zu curl kann man mittels

which curl

ermitteln.

serverfault – Curl don’t work on cron execution [duplicate]

LinuxQuestions.org – Curl utility doesnt work on freebsd crontab

Apropos pfSense: Beim besagten Kunden läuft eine pfSense, die dort lediglich als OpenVPN-Server dient. Das Skript kann man einfach via (Win)SCP im Pfad

/usr/local/etc/

ablegen und mittels ssh noch ausführbar machen:

chmod 0755 /usr/local/etc/fritzbox-reboot.sh

ssh muss für beides (natürlich) vorher in pfSense aktiviert sein. Mit der Cron-Erweiterung kann der Zeitpunkt für den automatischen Neustart via Web-Interface bequem geplant werden. Ein Beispiel für täglich 04:30 Uhr:

Gerne hätte ich eine Lösung für Windows, da man nicht überall etwas unixoides vorfindet. Bei der Recherche bin ich über ein Powershell-Skript gestolpert:

Administrator.de – Powershell: FritzBox über TR-064 im Netzwerk konfigurieren und auslesen

Leider lies sich dieses nicht erfolgreich ausführen. Sozusagen als Plan B habe ich dann versucht den curl-Befehl vom zuvor genannten Skript unter Windows zum Laufen zu bekommen.

Also erstmal curl für Windows heruntergeladen, entpackt und im bin-Ordner das Skript als Windows-Batch hinterlegt und natürlich OS-bedingt geändert. Dieses sieht aktuell so aus:

@echo offset IP=192.168.178.1set FRITZUSER=<Benutzername>set FRITZPW=<Kennwort>set location=/upnp/control/deviceconfigset uri=urn:dslforum-org:service:DeviceConfig:1set action=Rebootcurl -k -m 5 --anyauth -u %FRITZUSER%:%FRITZPW% http://%IP%:49000%location% -H Content-Type: text/xml; charset="utf-8" -H SoapAction:%uri%#%action% -d ^<?xml version='1.0' encoding='utf-8'?^>^<s:Envelope s:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'^>^<s:Body^>^<u:Reboot xmlns:u='urn:dslforum-org:service:DeviceConfig:1'^>^</u:Reboot^>^</s:Body^>^</s:Envelope^> -s > output.log 2>&1

Leider meldet die FritzBox immer dieses zurück:

<HTML><HEAD><TITLE>500 Internal Server Error (ERR_INVALID_REQ)</TITLE></HEAD><BODY><H1>500 Internal Server Error</H1><BR>ERR_INVALID_REQ<HR><B>Webserver</B> Wed, 20 Feb 2019 13:04:50 GMT</BODY></HTML>

Mit anderen Worten: Es klappt nicht. Auch dann nicht, wenn man alles (ohne Variablen) in eine Zeile packt. Seltsam finde ich, das der Aufruf, wenn man sich diesen mittels echo sowohl unter Linux als auch Windows anzeigen lässt identisch aussieht:

Linux:

curl -k -m 5 --anyauth -u <Benutzername>:<Kennwort> http://192.168.178.1:49000/upnp/control/deviceconfig -H Content-Type: text/xml; charset="utf-8" -H SoapAction:urn:dslforum-org:service:DeviceConfig:1#Reboot -d <?xml version='1.0' encoding='utf-8'?><s:Envelope s:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'><s:Body><u:Reboot xmlns:u='urn:dslforum-org:service:DeviceConfig:1'></u:Reboot></s:Body></s:Envelope> -s

Windows:

curl -k -m 5 --anyauth -u <Benutzername>:<Kennwort> http://192.168.178.1:49000/upnp/control/deviceconfig -H Content-Type: text/xml; charset="utf-8" -H SoapAction:urn:dslforum-org:service:DeviceConfig:1#Reboot -d <?xml version='1.0' encoding='utf-8'?><s:Envelope s:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'><s:Body><u:Reboot xmlns:u='urn:dslforum-org:service:DeviceConfig:1'></u:Reboot></s:Body></s:Envelope> -s

Evtl. hat ja noch jemand einen Tipp 😉

Beitrag um Pfad-Erweiterung im Skript für FreeBSD/pfSense und cron/crontab ergänzt.

Der Denkanstoss von Hawker in Sachen “Neustart via Windows” (siehe Kommentare) hat geholfen. Danke dafür!

Als Einzeiler funktioniert dieses hier:

curl -k -m 5 --anyauth -u <Benutzername>:<Kennwort> http://192.168.178.1:49000/upnp/control/deviceconfig -H "Content-Type: text/xml; charset="utf-8"" -H "SoapAction:urn:dslforum-org:service:DeviceConfig:1#Reboot" -d "<?xml version='1.0' encoding='utf-8'?><s:Envelope s:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'><s:Body><u:Reboot xmlns:u='urn:dslforum-org:service:DeviceConfig:1'></u:Reboot></s:Body></s:Envelope>" -s

Und als Skript dann so:

@echo offset IP=192.168.178.1set FRITZUSER=<Benutzername>set FRITZPW=<Kennwort>set location=/upnp/control/deviceconfigset uri=urn:dslforum-org:service:DeviceConfig:1set action=Rebootcurl -k -m 5 --anyauth -u "%FRITZUSER%:%FRITZPW%" http://%IP%:49000%location% -H "Content-Type: text/xml; charset="utf-8"" -H "SoapAction:%uri%#%action%" -d "<?xml version='1.0' encoding='utf-8'?><s:Envelope s:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'><s:Body><u:Reboot xmlns:u='urn:dslforum-org:service:DeviceConfig:1'></u:Reboot></s:Body></s:Envelope>" -s > output.log 2>&1

Kleinere Ergänzungen.

AVM FRITZ!Box automatisch neu starten (lassen) – Andy's Blog (3)

Andy

Verheiratet, Vater von zwei Kindern, eines an der Hand, eines im Herzen.Schon immer Technik-Freund, seit 2001 in der IT tätig und seit über 10 Jahren begeisterter Blogger. Mit meiner Firma IT-Service Weber kümmern wir uns um alle IT-Belange von gewerblichen Kunden und unterstützen zusätzlich sowohl Partner als auch Kollegen.

Ähnliche Artikel:

  1. Cisco SPA112 automatisch neu starten lassen
  2. 3CX: Die PBX automatisch neustarten lassen
  3. Windows: Remotedesktopdienste via Befehl automatisch neu starten
  4. Ubiquiti Unifi: Access Point neu starten
  5. snom-Telefone per Befehl neu starten
AVM FRITZ!Box automatisch neu starten (lassen) – Andy's Blog (2024)
Top Articles
▷Game Informer war die letzte gute Sache über GameStop ✔️ gamebizz.de【 2024 】
Plane crashes in Brazil's Sao Paulo state, killing all 61 aboard, airline says
7 C's of Communication | The Effective Communication Checklist
Frederick County Craigslist
DEA closing 2 offices in China even as the agency struggles to stem flow of fentanyl chemicals
America Cuevas Desnuda
Obituary (Binghamton Press & Sun-Bulletin): Tully Area Historical Society
35105N Sap 5 50 W Nit
Xrarse
AB Solutions Portal | Login
123 Movies Black Adam
Culos Grandes Ricos
Wnem Radar
Immediate Action Pathfinder
Builders Best Do It Center
Radio Aleluya Dialogo Pastoral
2016 Ford Fusion Belt Diagram
Nutrislice Menus
Harem In Another World F95
Craigslist Southern Oregon Coast
97226 Zip Code
Saritaprivate
Pearson Correlation Coefficient
Regal Amc Near Me
Koninklijk Theater Tuschinski
Skycurve Replacement Mat
3569 Vineyard Ave NE, Grand Rapids, MI 49525 - MLS 24048144 - Coldwell Banker
Urbfsdreamgirl
Delete Verizon Cloud
Lilpeachbutt69 Stephanie Chavez
Christmas Days Away
6465319333
South Florida residents must earn more than $100,000 to avoid being 'rent burdened'
Audi Q3 | 2023 - 2024 | De Waal Autogroep
Kips Sunshine Kwik Lube
T&J Agnes Theaters
Craigslist Greencastle
Rogers Centre is getting a $300M reno. Here's what the Blue Jays ballpark will look like | CBC News
Final Exam Schedule Liberty University
How To Paint Dinos In Ark
Captain Billy's Whiz Bang, Vol 1, No. 11, August, 1920&#10;America's Magazine of Wit, Humor and Filosophy
Craigslist Lakeside Az
Suffix With Pent Crossword Clue
Silive Obituary
Sallisaw Bin Store
Pixel Gun 3D Unblocked Games
Keci News
Bf273-11K-Cl
Rise Meadville Reviews
Southwind Village, Southend Village, Southwood Village, Supervision Of Alcohol Sales In Church And Village Halls
Convert Celsius to Kelvin
How Did Natalie Earnheart Lose Weight
Latest Posts
Article information

Author: Stevie Stamm

Last Updated:

Views: 5942

Rating: 5 / 5 (60 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Stevie Stamm

Birthday: 1996-06-22

Address: Apt. 419 4200 Sipes Estate, East Delmerview, WY 05617

Phone: +342332224300

Job: Future Advertising Analyst

Hobby: Leather crafting, Puzzles, Leather crafting, scrapbook, Urban exploration, Cabaret, Skateboarding

Introduction: My name is Stevie Stamm, I am a colorful, sparkling, splendid, vast, open, hilarious, tender person who loves writing and wants to share my knowledge and understanding with you.