NodeRED: Gäste-WLAN der Fritzbox aktivieren

Titelbild: Gast-WLAN per NodeRed/RedMatic steuern

Ich möchte das WLAN meiner Fritzbox 7412 über RedMatic ein- und ausschalten können. Zudem soll mir der Status angezeigt werden, ob es aktiv ist.

Voraussetzungen

  • Es wird ein eingerichtetes NodeRed, in meinem Fall die RedMatic benötigt. Wie du RedMatic installierst, kannst du im Artikel RedMatic auf der RaspberryMatic installieren nachlesen.
  • Um mit der Fritzbox zu kommunizieren, wird das Paket node-red-contrib-fritz benutzt, welches du über „Palette verwalten“ des Hamburger-Menüs in NodeRed installieren kannst.
  • Und natürlich ist eine Fritzbox Voraussetzung 🙂

Umsetzung

Die TR064-Schnittstelle der Fritzbox

Damit der WLAN-Status abgefragt sowie gesetzt werden kann, muss die TR064-Schnittstelle der Fritzbox aktiviert sein.

TR-064 ist ein vom DSL-Forum entwickeltes Protokoll, um DSL-Internetzugangsgeräte aus dem lokalen Netz zu konfigurieren. Es basiert auf dem UPnP-Standard (Universal Plug and Play), der allgemein zur herstellerübergreifenden Ansteuerung von Geräten in IP-basierten Netzwerken dient. Die bei UPnP und somit auch bei TR-064 zum Einsatz kommenden Multicast-Adressen stammen aus einem Adressbereich, der nicht geroutet wird. Ein Zugriff auf die FRITZ!Box mit TR-064 ist daher nur aus dem eigenen lokalen Netzwerk möglich.
Generell wird für die Kommunikation ein Software-Client benötigt, der TR-064 unterstützt. Dieser kann beispielsweise vom Internetanbieter auf einer CD mitgeliefert werden. Über diesen Client können Statusabfragen der FRITZ!Box erfolgen sowie manuell oder über eine Konfigurationsdatei bestimmte Parameter der FRITZ!Box gesetzt werden, beispielsweise die Zugangsdaten für die Internetverbindung.

https://avm.de/service/schnittstellen

Die Schnittstelle kann direkt in der Weboberfläche der Fritzbox aktiviert werden. Die Einstellung befindet sich in den Netzwerkeinstellungen der Heimnetzübersicht:

Das TR064-Protokoll wird in den Netzwerkeinstellungen der Fritzbox aktiviert.
Das TR064-Protokoll wird in den Netzwerkeinstellungen der Fritzbox aktiviert.

Alternativ kann sie über ein angeschlossenes Telefon mit dem Code #96*5* aktiviert werden.

Der Flow in NodeRed

Über den zu installierenden Node node-red-contrib-fritz kann der WLAN-Status abgefragt sowie das WLAN auch an- und auch ausgeschaltet werden. Dazu muss der fritzbox-in-Node vorher mit dem Passwort der Fritzbox konfiguriert werden.

Die Verbindung zur Fritzbox wird in der Konfiguration hinterlegt.
Die Verbindung zur Fritzbox wird in der Konfiguration hinterlegt.
  • Es muss der Host, als die IP-Adresse mit der deine Fritzbox erreicht werden kann, hinterlegt werden.
  • Solltest du nur ein Passwort und keine Nutzer für deine Fritzbox verwenden (Standardeinstellung), dann muss unter „Username“ ein beliebiger Nutzername angegeben werden, bspw. doesnotexist.
  • Und nicht zu vergessen natürlich das Passwort für deine Fritzbox, welches du auch zum Login in die Weboberfläche benutzt.

Im fritzbox-in-Node wählst du den entsprechenden Service aus. Die Liste steht erst zur Verfügung, wenn du sie mit dem Lupensymbol von der Fritzbox holst oder ein wenig wartest. Ebenso verhält es sich mit der Action.

Im Node selbst wird der Service und die Action gesetzt, welche angesprochen werden soll.
Im Node selbst wird der Service und die Action gesetzt, welche angesprochen werden soll.
  • Meist stehen mehrere WLAN-URNs zur Verfügung, je nachdem, wieviele WLAN-Module Deine Fritzbox hat. Ich möchte das Haupt-WLAN-Modul meiner Fritzbox schalten, daher lautet der für mich passende Service urn:dslforum-org:service:WLANConfiguration:1. Für das Gäste-WLAN kann er die Nummer 2 oder noch höher haben – das musst du notfalls ausprobieren.
  • Als Action kommt für das aus- und anschalten des WLAN SetEnable in Betracht.

Mit dem Property NewEnable übermittelst Du den Zielstatus, welcher im Beispiel von einem Switch-Node kommt.
Damit wäre bereits alles vorhanden, um das WLAN an- und auszuschalten.

Damit der Switch-Node auch den Status anzeigt, wenn er außerhalb von NodeRed umgestellt wird, ruft ein Inject-Node diesen periodisch (bspw. aller 15 min) ab. Da das Umstellen des WLAN einige Sekunden Zeit benötigt, wird hierüber in der WebUI auch ein Zwischenstatus dargestellt. Damit ist ein direktes Feedback, dass der WLAN-Button gedrückt wurde, über dessen Farbe möglich.

Der komplette Flow zum Umschalten des Gäste-WLANs.
Der komplette Flow zum Umschalten des Gäste-WLANs.

Weitere Ideen

Vielen Dank an die Kommentatoren! Gern füge ich auch Links zu den Beschreibungen ein, sollte es welche geben.

  • Bei jedem Aktivieren des Gäste-WLAN wird ein neuer Code generiert. Dieser wird auf einem zentralen Display mittels QR-Code und auch im Klartext angezeigt.

Fazit

Das Gäste-WLAN lässt sich über den universellen Fritzbox-Node recht einfach setzen.
Der Node erlaubt noch weitere Dinge wie Anwesenheitserkennung über eingebuchte WLAN-Clients, DSL-Statusabfragen, Setzen der LEDs an der Fritte, …

Update

  • 11.11.2022: „Weitere Ideen“ eingefügt
  • 28.07.2022: Typos korrigiert
Hilf durch deine Bewertung mit, diesen Blog zu verbessern!
Abonnieren
Benachrichtige mich bei
2 Kommentare
Älteste
Neueste Beliebteste
Inline Feedbacks
Alle Kommentare