Archiv ‘IT’

Donnerstag, 22. März 2018

Ubiquiti Edgerouter und DynDNS hinter einem doppelten NAT

Kürzlich musste ich einen Ubiquiti Edgerouter ER-X temporär hinter einem doppelten NAT betreiben (dass das nicht optimal sein kann, weiss ja wohl jeder).

Obwohl DynDNS auf dem Edgerouter konfiguriert war, um den statischen Hostnamen mit der jeweils aktuellen dynamischen IP anzupassen, funktionierte dies in einer solchen Konfiguration nicht mehr: Der Router meldete seine private IP-Adresse (192.168.0.X) am WAN-Port an DynDNS, was natürlich nicht funktionieren kann.

Damit der Edgerouter in solchen Situationen zuverlässig die öffentliche IP-Adresse des Anschlusses verwendet, muss über das GUI unter Config Tree > service > dns > dynamic > interface > eth0 des Routers das Attribut web mit dem Wert dyndns ergänzt werden:

Damit ist sichergestellt, dass der Router nicht die IP seines eth0-Interfaces zurückmeldet, sondern über den Web-Service von DynDNS seine öffentliche IP anfragt.

Wer das CLI bevorzugt:

$ configure
# set service dns dynamic interface eth0 web dyndns
# commit
# save

Quelle: Dynamic DNS behind double NAT?

Tags: , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 22. März 2018

Wo unterhält Fiber7 in Bern POPs?

Auch hier ist Init7 sehr transparent:

Unsere Fiber7 PoPs

In Bern sind dies aktuell (März 2017):

  • 640BOL – Bollwerk
  • 640BRE – Breitenrain
  • 640BUE – Bümpliz
  • 640BUZ – Burgernziel
  • 640BEM – Mattenhof
  • 640KOE – Köniz
  • 640LAG – Länggasse
  • 640WAB – Wabern
  • 640WEH – Weissenbühl

Der POP 640NIE (Niederwangen) ist noch ausgegraut.

Tags: , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 22. März 2018

Egal was, kauft einfach keine Tintenpisser

(fürs Briefe drucken)

Tags: , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 7. März 2018

Folien meines Lightning Talks zum Thema „RPi Dashboard“ (Backup)

Da letzte Woche die Web-Site der bernischen Lightning Talks offline gegangen ist, habe ich mich entschieden, den Foliensatz meines Vortrages vom 17. März 2014 auf meinem Blog zu Archivzwecken aufzuschalten:

2014-03-14-dashboard-lightning-talk.pdf

Tags: , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 25. Februar 2018

Mit cacti die von fr24 entdeckten Flugzeuge und Nachrichten aufzeichnen

Der einfachste Weg, um dies zu bewerkstelligen ist die Verwendung der folgenden URL, die Statistiken im JSON-Format ausgibt:

http://%IP%/dump1090/data/aircraft.json

Mehr dazu: Mit einem Raspberry Pi, DVB-T-Stick und Flightradar 24 einen Hobby-ADS-B Empfänger aufbauen

Ich habe ein kleines Python-Script geschrieben, welches diese Informationen ausliest und so aufbereitet, dass es von cacti importiert werden kann:

fr24-cacti-stats

Nachdem man die Data Input, Data Source und Graph Templates erstellt hat, grüssen einen folgende Graphen:

Alternative

Da ich die dump1090-URL anfänglich nicht kannte, behalf ich mir als Alternative der Log-Datei unter /var/log/fr24feed/fr24feed.log.

Ich erstellte im Web-Root von lighthttpd einen Symlink auf die Log-Datei …

$ ln -s /var/log/fr24feed/fr24feed.log /var/www/fr24feed.log

… lud diese mittels wget auf den cacti-Server herunter, filterte dort mittels eines Scripts die jüngste Log-Meldung vom folgenden Format heraus und isolierte die Zahl vor „AC“:

2018-02-23 21:12:06 | [feed][i]removed 1 of 8 AC

Da die Log-Datei seit heute morgen nicht mehr geschrieben wird (Grund: unklar), bin ich nun auf die Echtzeitlösung mit dump1090 ausgewichen. Erste Erkenntnis: dump1090 meldet mehr Flugzeuge als die Log-Datei; Grund unklar.

Tags: , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 25. Februar 2018

Einen Raspberry Pi mit autonomer Stromversorgung betreiben

(Kontext: Mit einem Raspberry Pi, DVB-T-Stick und Flightradar 24 einen Hobby-ADS-B Empfänger aufbauen)

Wie im oben verlinkten Blog-Post beschrieben muss sich die Antenne im Freien befinden, um den bestmöglichen Empfang der ADS-B-Signale zu realisieren.

Bevor ich entdeckte, dass das DVB-T-Antennenkabel problemlos durch einen Fensterrahmen geführt werden kann und das Schliessen des Fensters überlebt, machte ich mir Gedanken, wie man Antenne UND den Raspberry Pi zusammen auf dem Balkon der Mietwohnung installieren könnte.

Das grösste Problem war hierbei die Stromversorgung, da sich auf unserem Balkon kein Stromanschluss befindet.

Stromverbrauch

Gemäss der Web-Seite Solar Power for Raspberry Pi verbraucht mein Raspberry Pi 1, Model B, mindestens 480mA, was einem Tagesverbrauch von 57.6Wh entspricht.

Ein anderer Artikel Power Consumption berechnet mindestens 220mA, wenn man den HDMI-Port deaktiviert und die LEDs ausschaltet (wie man das macht, ist in diesem Artikel beschrieben: Raspberry Pi Zero – Conserve power and reduce draw to 80mA).

Der DVB-T-USB-Dongle verbraucht gemäss (geleaktem?) Data Sheet des Chip-Herstellers maximal 178mA.

Der bei einem Outdoor-Betrieb zwingend nötige WLAN-USB-Dongle sollte dann auch noch dazugerechnet werden. In meinem Fall hatte ich geplant, einen ZyXEL NWD2205-Stick zu verwenden. Gemäss Datenblatt saugt das Ding 315mA beim Senden und 250mA beim Empfangen.

Zusammengerechnet hätte dies also in einem Verbrauch von 480 + 178 + 315 = 973 mA oder 0.973A entsprochen — multipliziert mit 5V also genau 4.865 Watt.

Da ich den Raspberry Pi mittlerweile mittels Power-over-Ethernet PoE mit Strom versorge (hierzu verwende ich einen Uctronics U5159 Umwandler, der aus dem Ethernet-Kabel den Strom extrahiert, transformiert und dann mit 5V und bis zu 2.4A auf einen Micro-USB-Port ausgibt — bspw. erhältlich auf Amazon.com für $10), kann ich über den Unifi Controller sehen, wie viel Leistung das Ding zieht: 5.31 Watt. Es kann aber gut sein, dass diese Messung durch den UniFi-Switch sowie auch den Uctronics stark verfälscht wird.

USB-Powerbanks?

Von dieser Lösung nahm ich rasch Abstand, da gewisse Dinger mit 10000, 15000 oder gar 20000 mAh zwar ordentlichen Stromspeicher besitzen, aber trotzdem nicht geeignet sind:

  • Wie lädt man die Dinger auf — musste man mindestens zwei Powerbanks anschaffen sie täglich rotieren? Das kam für mich nicht in Frage.
  • Sind sie für den Aussenbetrieb geeignet, d.h. verkraften sie Temperaturen wie jetzt gerade bis zu minus 5 Grad in der Nacht?

Solar!

Nach einigen Überlegungen kam ich dann auf die naheliegende Lösung: Solarstrom!

Zwar gibt es bei Amazon haufenweise Powerbanks mit integriertem Solarpanel (sogar eine mit 20000mAh, derzeit aber vergriffen) (Digitec hat auch einige, bspw. Sandberg Outdoor Solar (16000mAh, Solarbetrieb) sowie DÖRR Solar Powerbank SC-10000 black (10000mAh, Solarbetrieb)), doch nach einiger Lektüre im Netz kam ich zum Schluss, dass die Dinger nicht für einen 24/7-Betrieb eines RPi taugen (sie laden die Batterie nicht schnell genug auf, damit der RPi die Nacht überlebt).

Ein Solarpanel muss her. Da dieses aber nur am Tag bei Sonnenschein Strom liefert, muss man auch hier mit Batterien arbeiten. Nicht aber mit Powerbanks (Li-Ion) sondern besser mit Blei-Batterien, wie man sie von USVs kennt.

Nicht zu vergessen ist auch, dass Solarpanels 12V ausgeben, was für USB-Geräte nicht brauchbar ist (der USB-Standard sieht eine Spannung von 5V vor). Somit muss man noch einen Transformator dazwischenschalten, der 12V auf 5V heruntertransformiert.

Auf der Suche nach Lösungen fand ich zwei Arten von Produkten: Einerseits Sets, die primär für RPis gedacht sind, sowie Allzweck-Anlagen, mit welchen man Gartenhäuschen, Wohnwagen etc. mit Solarstromversorgung ausrüsten kann.

Die von mir entdeckten RPi-spezifischen Lösungen sind nachfolgend aufgelistet:

Für andere IoT-Geräte konzipierte respektive generische Lösungen:

Hätte ich nicht realisiert, dass das Antennenkabel durch den Fensterrahmen geführt werden kann, hätte ich mir wohl schlussendlich folgendes Produkt geleistet:

Solar-Set Poly Esotec 120005 20 Wp inkl. Akku, inkl. Anschlusskabel, inkl. Laderegler 179.95 CHF bei Conrad.ch (dasselbe Produkt für 168 CHF ohne Versand bei Westfalia.ch)

Die Batterie besitzt einen Speicher von 8 Ah (d.h. 8000 mAh), das Solarpanel generiert 20 Watt Spitzenleistung. Die kleinere Version der Anlage mit „nur“ 4000 mAh kostet 99.95 CHF.

Anschliessend hätte ich wohl auch noch den Laderegler mit einem Produkt ersetzt, das zwei USB-Anschlüsse direkt eingebaut hat (damit verzichtet man auf zusätzlichen Kabelsalat):

ALLPOWERS 20A Solarladeregler 12V / 24V Intelligenz USB Teil Solar Panel Regler mit USB Port Display

Was ich bis jetzt nicht klären konnte: Liefert der USB-Anschluss wirklich nur 500mA (gemäss Handbuch), oder geben die Laderegler trotzdem auch gegen die 1A Strom aus (wie die kleinere Lösung, gemäss dessen Handbuch)?

Links

Bei der Recherche zur Lösung notierte ich mir unzählige Links notiert. Hier die wichtigsten:

Tags: , , , , ,
Labels: IT

2 Kommentare | neuen Kommentar verfassen

Sonntag, 25. Februar 2018

Mit einem Raspberry Pi, DVB-T-Stick und Flightradar 24 einen Hobby-ADS-B Empfänger aufbauen

Vor einigen Tagen wurde mein DVB-T-Empfänger und die ADS-B Antenne von jetvision.de geliefert.

Damit konnte ich einen alten, nicht mehr genutzten Raspberry Pi 1, Model B, zu einem Hobby-Empfänger für Flugzeugsignale (sog. ADS-B) umbauen.

Flightradar24 bietet dafür ein Raspberry Pi-Image an, mit welchem man den Radar in ein paar Minuten online hat — im Gegenzug erhält man als Dank kostenlos ein Business-Abonnement der Web-Site im Wert von mehreren hundert Dollar im Jahr.

Der Name meiner Antenne lautet T-LSZB123 (die Statistiken kann man sich nur ansehen, wenn man auf Flightradar24 registriert ist).

Aufstellen der Antenne

Flightradar24 hat eine Anleitung ins Internet gestellt, die den Hobby-Empfängern bildlich aufzeigt, wie man die Antenne installiert, um einen maximalen Empfang hinzukriegen.

Am Besten wäre die Installation auf dem Hausdach — als Mieter bleibt einem das selbstverständlich verwehrt. Auch muss man sich dann bezüglich Blitzeinschlag Gedanken machen und das Antennensignal mit einem Kabel irgendwo in die Wohnung verlegen.

In meinem Fall muss für die Platzierung der Antenne (leider) die äussere Fensterbank hinhalten — aber allemal besser, als den Empfänger mitsamt Antenne in der Wohnung zu platzieren. Die Alternative wäre gewesen, das gesamte Setup auf dem Balkon zu betreiben, was aber eine solar- und batteriebasierte Stromversorgung verlangt hätte. Das hätte aber grosse Kosten und noch einiges an Bastelaufwand verursacht.

Zum Glück realisierte ich bald einmal, dass man das Antennenkabel durch den Fensterrahmen legen und das Fenster schliessen kann, ohne das Kabel zu beschädigen (hoffe ich jedenfalls):

Reichweite der Antenne

Beim Betrieb des o.g. Sets aus DVB-T-Dongle mitsamt mickriger Antenne in der Wohnung (am grossen Fenster zum Balkon) konnte die Software Signale von Flugzeugen in der Distanz von 20 Nautischen Meilen empfangen.

Nachdem ich den Empfänger probehalber auf dem Balkontisch platziert hatte, stieg die Reichweite auf 40 Nautische Meilen an.

Nach der Festinstallation auf dem äusseren Fensterbank und 48 Stunden Dauerbetrieb konnte ich die Reichweite in einigen wenigen Fällen auf 56 Nautische Meilen erhöhen (103.71 Kilometer).

Bessere Antennen

Bei jetvision.de könnte man sich leistungsfähigere Antennen kaufen. Mein Favorit wäre die „A3 ADS-B“ Antenna (1090 MHz) für 77.95 EUR. Doch momentan zögere ich mich mit der Aufrüstung noch, da ich diese Antenne weiterhin auf dem äusseren Fensterbank montieren müsste.

Auf Amazon und AliExpress finden sich auch 1090 MHz-Antennen, teils deutlich günstiger, aber über deren Qualität kann ich nichts aussagen.

Web-Interfaces

Sobald der Raspberry Pi aufgesetzt und der Radar bei Flightradar24 registriert ist, kann man auf das lokale Web-Interface der Lösung zugreifen. Es ist unter folgender URL erreichbar:

http://%IP%:8754

Folgende zwei Unterseiten sind nützlich:

  • http://%IP%:8754/settings.html Hier kann man Einstellungen vornehmen. Bei mir scheinen diese aber nicht übernommen worden zu sein (ist evtl. ein Neustart des Servers nötig? Ein Neustart der Software über das Web-Interface hat keinen Effekt gezeigt)
  • http://%IP%:8754/tracked.html Die Liste der aktuell empfangenen Signale von Flugzeugen

Weiter gibt es noch ein, zwei technische Interfaces, die Messdaten in strukturierter Form ausgeben:

  • http://%IP%/dump1090/data/aircraft.json
  • http://%IP%/dump1090/data/stats.json
  • http://%IP%/dump1090/data/receiver.json

Via: Raspberry Pi: Dump1090 erzeugt auch JSON-Dateien die extern verwendet werden können

Diese JSON-Daten eignen sich vorzüglich, um mit Cacti schöne Graphen zu erstellen.

Die Aufschlüsselung der JSON-Werte finden sich in folgendem Artikel: JSON output formats

Sonstige Interfaces

Mit netstat findet man schnell heraus, auf welchen Port fr24 Netzwerkdienste anbietet (ssh, snmpd, dhclient und avahi-daemon sind Systemdienste, die mit fr24 nichts zu tun haben):

# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      417/lighttpd        
tcp        0      0 0.0.0.0:30002           0.0.0.0:*               LISTEN      326/fr24feed        
tcp        0      0 0.0.0.0:8754            0.0.0.0:*               LISTEN      326/fr24feed        
tcp        0      0 0.0.0.0:30003           0.0.0.0:*               LISTEN      326/fr24feed        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      366/sshd            
udp        0      0 0.0.0.0:161             0.0.0.0:*                           352/snmpd           
udp        0      0 0.0.0.0:51123           0.0.0.0:*                           326/fr24feed        
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           262/avahi-daemon: r 
udp        0      0 0.0.0.0:36590           0.0.0.0:*                           262/avahi-daemon: r 
udp        0      0 0.0.0.0:68              0.0.0.0:*                           561/dhclient        
udp        0      0 0.0.0.0:59213           0.0.0.0:*                           326/fr24feed

Prozesse

Auf den Raspberry Pi kann man nach der Installation des Flightradar24-Images mit den gewohnten Zugangsdaten per SSH zugreifen.

Auf dem Gerät laufen folgende zwei Prozessbäume, die zum Empfang und für die Verarbeitung der Signale zuständig sind:

  • /usr/bin/fr24feed
  • /usr/bin/dump1090-mutability --raw --mlat --write-json /run/dump1090-mutability/

Als Services werden installiert:

  • dump1090-mutability.service
  • fr24feed.service
  • fr24gui.service

fr24feed startet und stoppt man folgendermassen:

# systemctl start fr24feed
# systemctl stop fr24feed

Log-Dateien

Nach der Installation fand sich bei mir unter /var/log/fr24feed/fr24feed.log eine Log-Datei, die in Echtzeit aktualisiert wurde.

Nach ca. zwei Tagen Betrieb stoppten die Log-Meldungen plötzlich und ich konnte noch nicht herausfinden, wieso die Anwendung nichts mehr in die Datei schreibt.

Die Einstellungen habe ich zwar angepasst (Logfile mode: Keep up to 72h, rotate every 24h und Log file location: /var/log/fr24feed/custom.log), bisher wurden diese aber nicht geschluckt.

Offizielle Statistiken

Loggt man sich auf Flightradar24 ein, kann man sich ausführliche Statistiken zu seinem Empfänger anzeigen lassen (die Zahlen sind aus der Sicht von Flightradar24, d.h. die Informationen, die vom Raspberry Pi an den Dienst gesendet und effektiv dort ankommen):

Die URL lautet www.flightradar24.com/account/data-sharing, wo man dann alle registrierten Empfänger angezeigt bekommt. Klickt man dort auf Show Statistics, erscheinen die ausführlichen Statistiken:

Tags: , , , ,
Labels: IT

4 Kommentare | neuen Kommentar verfassen

Samstag, 10. Februar 2018

PC von einem USB-Stick booten meldet „Missing Operating System“ (oder: Lenovo Thinkpad BIOS Updates ohne Windows)

Kürzlich habe ich dank der Funktion dmidecode nicht nur herausgefunden, wie ich aus der Ferne feststellen kann, um welchen Gerätetyp es sich bei einem Laptop-Server konkret handelt …

...
Handle 0x000E, DMI type 1, 27 bytes
System Information
	Manufacturer: LENOVO
	Product Name: 4236MBG
	Version: ThinkPad T420
	Serial Number: XXXXXXX
	UUID: 045E0181-510B-110B-BEFD-D0C20D7188AE
	Wake-up Type: Power Switch
	SKU Number: Not Specified
	Family: ThinkPad T420
...

… sondern auch, dass die BIOSse meiner Thinkpad-Flotte wohl mal aktualisiert werden sollten:

...
BIOS Information
	Vendor: LENOVO
	Version: 6QET69WW (1.39 )
	Release Date: 04/26/2012
...

Erstaunlicherweise unterhält Lenovo seine Support-Seiten vorzüglich und es fanden sich innert weniger Minuten alle Seiten mit BIOS-Updates für meine Thinkpads X200s, X201, T400 und T420.

Da auf den Dingern kein Windows läuft, kann man das Update über diesen Weg vergessen. Glücklicherweise bietet Lenovo auch noch CD-Images (sog. ISOs) an, mit welchem die ca. 40MB Updatedaten auf CDs gebrannt werden können. Der Laptop kann dann von dieser CD gestartet und die Updates installiert werden, d.h. die Anforderung Windows entfällt so.

Erstes Problem: Die Links auf die ISO-Images auf den Seiten mit dem „BIOS Update Utility for Windows“ funktionieren nicht. Hier hilft Google jeweils kurzerhand weiter: „X200s BIOS Update Bootable CD“ findet dann den korrekten Link der Seite.

Nachdem man sich von dort die ISOs heruntergeladen hat und sie bspw. (graphisch) mit Etcher (oder auf dem CLI mit dd) unter macOS auf einen USB-Stick schreiben will, ein weiterer Showstopper: Etcher meldet nach dem Transfer, dass der USB-Stick kein gültiges Dateisystem enthält.

Wie sich mit etwas googeln herausstellt verwendet Lenovo für seine Boot-CDs den El Torito-Standard. Deshalb muss man aus dem .iso mit dem Perl-Script geteltorito.pl das eigentliche Image extrahieren. geteltorito.pl findet sich unter Debian GNU/Linux im Paket genisoimage. Aus der Boot-CD des BIOS-Updates für ein Lenovo Thinkpad X201 extrahiert man das eigentliche ISO-Image folgendermassen:

#!/bin/bash

/Users/mario/Scripts/cd-dvd/geteltorito.pl -o 6quj19us.img 6quj19us.iso

exit 0

Auf der Kommandozeile liest man dann ungefähr Folgendes:

$ extract.sh 
Booting catalog starts at sector: 20 
Manufacturer of CD: NERO BURNING ROM
Image architecture: x86
Boot media type is: harddisk
El Torito image starts at sector 24 and has 65536 sector(s) of 512 Bytes

Image has been written to file "6quj19us.img".

Anschliessend schreibt man das .img folgendermassen auf einen USB-Stick, welcher als /dev/rdisk5 gemountet ist:

#!/bin/bash

dd if=6quj19us.img of=/dev/rdisk5 bs=512k

exit 0

Auf der Kommandozeile liest man dann ungefähr Folgendes:

# write.sh
32+0 records in
32+0 records out
33554432 bytes transferred in 6.970957 secs (4813461 bytes/sec)

Einige der folgenden Links waren für die Auskundschaftung dieser Alternative essentiell, andere (weiter unten) Sackgassen:

Die Grösse des USB-Sticks scheint eine Rolle zu spielen

Während einer Stunde habe ich mir dann die Zähne ausgebissen — sowohl mit Etcher als auch mit dd habe ich diverse Images auf einen uralten SanDisk Cruzer USB-Stick mit 512MB geschrieben. Doch jedes Mal, als ich mein Testgerät, ein Lenovo Thinkpad T400, damit booten wollte, erschien die Fehlermeldung „Missing Operating System“.

Erst als ich den USB-Stick auswechselt und einen LaCie itsaKey mit 4GB verwendete, klappte das booten und updaten der Thinkpads reibungslos.

Derzeit bin ich der Meinung, dass dies irgendwie damit zu tun hat, dass der erste USB-Stick mit 512MB kleiner als eine CD mit 640MB ist und dadurch Probleme mit dem Boot-Programm im MBR entstehen. Oder aber dass vom SanDisk-Stick schlicht und einfach nicht gebootet werden kann, weil die Hardware des USB-Sticks das aus mir unerfindlichen Gründen nicht unterstützt.

Zum Schluss noch ein Screenshot, wie die Partition im Disk Utility.app angezeigt wird — mich erstaunt, dass „Bootable“ als „No“ angegeben wird, wobei ich nicht weiss, ob damit gemeint ist, dass Macs gebootet werden können:

Tags: , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Samstag, 10. Februar 2018

UniFi AC Mesh AP als Bridge nutzen

Die Web-Site und Online-Shops sind in dem Punkt nicht explizit respektive klar, doch ich kann bestätigen, dass man einen UniFi AC Mesh AP einerseits per WLAN mit einem bestehenden UniFi Access Point verbinden und so die Reichweite des originalen Access Points steigern kann, aber andererseits (gleichzeitig) auch ein Netzwerkkabel vom Mesh Access Point zu einem PC ziehen und diesen PC mit einem Netzwerkzugang ausstatten kann.

Aus Sicht des PCs befindet er sich im lokalen Ethernet-Netzwerk; die Pakete werden per WLAN vom Mesh Access Point zum originalen Access Point übertragen und gelangen von dort zu anderen Geräten im Intranet respektive ins Internet.

Ich gehe davon aus, dass man anstelle eines PCs auch einen Switch an den Ethernet-Eingang eines Mesh Access Points hängen und so mehrere Geräte respektive ein ganzes isoliertes LAN mit dem Original-LAN bridgen kann, versucht habe ich das im Gegensatz zum alleinstehenden PC nicht.

Tags: , , ,
Labels: IT

8 Kommentare | neuen Kommentar verfassen

Samstag, 10. Februar 2018

UniFi Controller erkennt einen Repeater als Rogue Access Point

Im letzten Jahr hat ein Bekannter von mir in seinem Haus eine neue Wärmepumpe der Firma Waterkotte installiert, welche Wärme aus einer Quellwasserleitung extrahiert, die das Grundstück durchquert.

Die Wärmepumpe verfügt zeitgemäss auch über einen eingebauten Industrie-Computer (PCEngines APU2C2) mit Netzwerkanschluss, auf welchem ein Web-Server läuft. Darüber lassen sich nicht nur die Vitaldaten des Geräts abfragen, sondern dieses auch steuern.

Wie es aber in älteren Gebäuden so ist, hat im Boilerraum natürlich niemand einen Netzwerkanschluss installiert und auch keine Netzwerkkabel hingezogen. Wie bringt man das Gerät somit ins lokale Netzwerk?

Der lokale Lieferant hatte die Lösung: Der Industrie-PC ist mit einem Ethernet-Kabel an einen D-Link DIR-809 angeschlossen. Der Access Point wiederum ist per WLAN mit dem UniFi Access Point der Wohnung im oberen Stockwerk verbunden. Dies, indem der D-Link Access Point in den Repeater-Modus geschaltet wurde und die WLAN-Zugangsdaten statisch einprogrammiert wurden.

Der Bekannte klagte in der Folge aber über instabile Netzwerkverbindungen — mal war die Wärmepumpe erreichbar, aber oftmals nicht. Nach einigem Debugging dann die Erkenntnis: Der UniFi-Controller im LAN erkennt den Repeater nicht als „normalen“ Client, sondern als Rogue Access Point, d.h. als ein Access Point, der vorgibt, ein anderer Access Point zu sein.

Hat man bei einer ähnlichen Installation dieselbe Vermutung, überprüft man das in der Web-Oberfläche des UniFi-Controllers. Einerseits warnt einem der Controller sowohl in der Oberfläche (Nachrichten-Pop-Up) als auch per E-Mail über Rogue Access Points, die in der Empfangsreichweite von UniFi Access Points mit derselben SSID funken …

… andererseits werden solche Geräte in der Rubrik „Insights“ auch markant mit einem roten Punkt in der Spalte „Rogue“ dargestellt:

Das Problem ist in dem Fall, dass Rogue Access Points vom UniFi Controller automatisch geblockt werden. Dies führte zum Symptom mit den Verbindungsabbrüchen.

Ich habe dann die Funktion benutzt, Rogue Access Points als bekannt zu markieren und den D-Link whitegelistet. Die UniFi-Firmware besitzt diese Funktion offenbar seit Version 5.5.19.

Leider half das aber auch nur temporär; der D-Link Access Point wurde regelmässig wieder als Rogue Access Point klassifiziert und geblockt.

Schlussendlich entschied ich mich dazu, den D-Link Access Point dem Installateur zurückzugeben, (damals) 120 CHF zu investieren und einen UniFi AC Mesh AP im Boilerraum zu installieren.

Am Netzwerkanschluss des Mesh Access Points hängt neben dem PoE-Injektor der Industrie-PC und der Mesh Access Point verbindet sich nun seit Monaten reibungslos mit dem UniFi AP AC Pro.

Keine Unterbrüche, keine Sorgen — mitsamt dem Vorteil, dass im Untergeschoss nun besserer WLAN-Empfang herrscht.

Tags: , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen