Ubiquiti Unifi Stock APs via Meshviewer anzeigen

Hallo zusammen,

ich möchte euch mein Projekt zum dem Thema „Unifi APs mit Stock Firmware in die Meshviewer Map anzeige“ vorstellen. Ich bin vor einem Monat auf einem Treffen meiner Freifunk Community „Freifunk Nordheide“ gewesen und habe dort von dem Problem gehört, dass man aktuell die Unifi APs mit der Stock / Original Firmware von Unifi nicht in einer Meshviewer Map einbinden kann.

Das Problem

Die Frage wurde auch aus unserer Community hier bereits einmal gestellt.

https://forum.freifunk.net/t/ubnt-unifi-mit-stock-via-meshviewer-darstellen/20780

Die Umstände

Ich habe selbst ein etwas größeres Unifi Netzwerk und war von der Idee ganz fasziniert gewesen. Den ich wollte einerseits auch einen Freifunk Zugang bereitstellen, aber nicht auf den Funktionsumfang der Stock Firmware verzichten. Also habe ich mir die aktuellen Lösungen zu dem Thema einmal angesehen und bereits gute Ansätze gefunden. Doch Sie waren leider entweder schon veraltet oder zu statisch gehalten. Da ich auch noch Neuling in dem Thema Freifunk und Meshviewer war, hat mich meine Community hier sehr gut unterstützt. Kurze Hand habe ich ein eigenes Tool mit PHP geschrieben und auf meinem Git System veröffentlicht.

Download

https://git.isp-serverfarm.de/freifunk-nordheide/unifi-meshviewer-generator

Ich habe das Projekt unter der MIT Lizenz veröffentlicht und damit auch anderen eine Lösung für das Problem zu bieten.

Was kann mein System aktuell?

Das Tool kann auf jedem beliebigen Webspace verwendet werden. Der Unifi Controller muss von dem Tool aus erreichbar sein. Idealerweise erstellt man einen Statistik User im Controller der nur Daten abfragen darf, aber keine Änderungen vornehmen kann.

Ein Cronjob ruft alle paar Minuten die URL des Webservice auf und generiert aus den Daten des Unifi Controller eine aktuelle JSON Meshviewer Datei. Diese Datei kann sich dann der Community Admin z.B. per WGET auf den Community Server mit der Meshviewer MAP kopieren. Es hat sich gezeigt, dass dies für die Erreichbarkeit ein stabiler Ansatz ist. Da die Map bei Störungen der zusätzlichen Meshviewer JSON Files überhaupt nicht mehr funktioniert.

  • Auslastung der APs wird ermittelt
  • Load und Memory werden von den APs ermittelt
  • Anzahl der Clients im 2,4 / 5,0 GHz Bereich wird ermittelt.
  • AP Koordinaten aus dem Unifi Controller
  • Uptime der APs
  • Online Status der APs
  • Uplink Route zu den Super Nodes dargestellt
  • Definition eines Public Namen für jeden AP unabhängig vom internen DNS Namen im Controller
  • Aktuelle Firmware und das Modell des AccessPoint
  • Die Communtiy benötigt keinen Zugang zu deinem Unifi Controller, die Daten werden über deinen Webspace generiert, die Aufbereitung der Daten erfolgt damit ebenfalls in deiner Umgebung.

Mein Einsatz-Szenario

Bei mir läuft aktuell ein Unifi ER-X als Offloader und stellt damit die Verbindung zu meinem Freifunk Netzwerk und meinem Unifi LAN her. Meine APs senden nun die Freifunk SSID „nordheide.freifunk.net“ welche mittels VLAN an meinem Offloader angebunden ist. Damit aber auch noch eine Ad-Hoc Verbindung zu anderen Freifunk Endpoints möglich ist, läuft auch noch ein Netgear Router mit Gluon Firmware im Netzwerk, welcher ebenfalls seinen Uplink von dem Offloader zur Verfügung gestellt bekommt. Somit ist die Idee von Freifunk komplett umgesetzt und meine APs senden alle ein starkes Signal.

Eure Unterstützung

Ich möchte noch einige Optimierungen vornehmen, vielleicht habt auch ihr noch ein paar Ideen oder Verbesserungen? In diesem Thread freue ich mich über neue Idee, Features oder auch Probleme mit euch diskutieren zu können. Danke für euren Feedback.

Was soll noch kommen ?

Ich möchte noch einiges an meinem Tool verbessern und erweitern. Dies könnt ihr ebenfalls auf meinem Git System einsehen.

https://git.isp-serverfarm.de/freifunk-nordheide/unifi-meshviewer-generator/issues

Feedback aus dem Thread werde ich dort mit aufnehmen und auch gerne umsetzen, wenn es meine Freizeit auch zulässt und ein gewisser Nutzen hinter der Idee steckt.

Und nun, viel Spaß mit meinem Tool, dem „Unifi Meshviewer Generator“…

Lieben Gruß aus der Community „Freifunk Nordheide“.

Björn

7 „Gefällt mir“

Cool!

Hast du Mal einen Link zu deiner Wolke im MV?

Hier ist meine Meshviewer JSON:

http://freifunk-unifi.isp-serverfarm.com/data/meshviewer.json

Die Einbindung in die Map unserer Community Map haben wir temporär deaktiviert, wir müssen noch den Download per wget einrichten.

Gruß

Björn

Wenn du dafür sorgst, dass deine json immer online ist, kannst du diese direkt via URL in den MV einbinden und man kann sich das wget’en sparen.

das hat aber schon dazu geführt das die karte nicht leif weil die json daten fehlten …

Hallo @Strausmann,

Danke für deine tolle Arbeit!

Wir nutzen aktuell noch Hopglass.
Ich habe mal deinen Unifi Meshviewer Generator geforkt und so angepasst, dass er auch eine für Hopglass nutzbare nodes.json und graph.json ausgeben kann.

Das ganze findet man unter: GitHub - Quedel/unifi-meshviewer-generator: Freifunk Unifi Controller Meshviewer Generator

Mir ist auch aufgefallen, dass der Generator nicht unter PHP5 läuft.
Die von dir genutzte Typ-Deklaration z.B. „string“ der Argumente von Funktionen gibt es erst seit PHP7:
https://www.php.net/manual/en/functions.arguments.php#functions.arguments.type-declaration

Grüße aus dem Harz

Helmut

2 „Gefällt mir“

Neue URL für die Meshviewer.json Ausgabe.

https://meshviewer.strausmann.com/data/meshviewer.json

Und neue URL von dem Freifunk Nordheide Map Server:

Map Server von freifunk-nordheide.de

Moin,

hmm, wie habt Ihr die Ortsgrenzen inkl. Overlays und Popups erzeugt? Als gebürtiger Sietländer irritiert mich allerdings, daß die Cuxhavener Karte überwiegend Knoten nördlich der Elbe zeigt — aber das ist ein anderes Thema :wink: