UniFi Controller mit Geräten in verschiedenen Netzwerken

Mit WLAN AccessPoints „der Enterprise Klasse zum Privatkunden Preis“ hat Ubiquiti Networks sich einen Namen gemacht. Mittlerweile gibt es aber auch sehr gute Switches und Netzwerkkameras der Firma.
Diese haben jedoch alles gemeinsam: Sie werden von einer zentralen Software, dem UniFi Controller verwaltet. Standarmässig finden die Geräte den Controller jedoch nur, wenn sie im selben Netzwerk sind. So müsste man für jedes Netzwerk (z.B. remote Standort) einen separaten Controller installieren. Doch es gibt Abhilfe.

Es gibt mehrere Möglichkeiten um die UniFi APs mit Controller in anderen Netzwerken zu verbinden:

Inhalt

Verbindungsmöglichkeiten

DNS Name

Kommt ein neuer UniFi AP ins Netz bezieht dieser erst per DHCP eine IP-Adresse und versucht sich dann auf die Adresse: http://unifi:8080/inform zu verbinden.
Eine sehr einfache Möglichkeit ist es nun im DNS-Server einen Eintrag für unifi zu machen und diesen auf die IP-Adresse des Controllers zeigen zu lassen. – Dabei muss im DHCP auch der Standardsuchpfad der Domäne gesetzt werden.

DHCP Option 43

In der dhcpd.conf kann man mittels der „Option 43“ die Adresse des UniFi Controllers angeben. Wenn der AP sich per DHCP die IP holt und diese Option findet, verbindet er sich mit dem entsprechenden Controller:

dhcpd.conf

# ...
option space ubnt;
option ubnt.unifi-address code 1 = ip-address;

class "ubnt" {
        match if substring (option vendor-class-identifier, 0, 4) = "ubnt";
        option vendor-class-identifier "ubnt";
        vendor-option-space ubnt;
}

subnet 10.10.10.0 netmask 255.255.255.0 {
        range 10.10.10.100 10.10.10.160;
        option ubnt.unifi-address 201.10.7.31;  ### UniFi Controller IP ###
        option routers 10.10.10.2;
        option broadcast-address 10.10.10.255;
        option domain-name-servers 168.95.1.1, 8.8.8.8;
        # ...
}

SSH

Sobald der AP per DHCP eine IP bezogen hat, kann man sich darauf per SSH anmelden und manuell die URL des Controllers setzen.
Zuvor muss jedoch der AP in den Werkszustand zurückgesetzt werden (reset):

Standard Benutzername und Passwort ist: ubnt

syswrapper.sh restore-default
set-inform http://ip-des-controllers:8080/inform

Firewall Regeln

Wenn man den Unifi Controller und die Unifi Geräte in verschiedene Netzwerken/VLANs betreibt müssen noch diverse Firewall Regeln für die Kommunikation gemacht werden. Nicht alle sind in von Unifi dokumentiert.

UniFi Network

ProtocolPortSourceDestinationUsage
UDP3478Unifi_devicesUnifi_controllerSTUN
UDP3478Unifi_controllerUnifi_devicesSTUN
TCP8080Unifi_devicesUnifi_controllerDevice and application communication
TCP443Admin_WorksationsUnifi_controllerApplication GUI/API as seen in a web browser
TCP443Unifi_controller*Software Updates
UDP1900Unifi_devicesUnifi_controllerUsed to „Make application discoverable on L2 network“ in the UniFi Network settings.
TCP6789*Unifi_controllerUniFi mobile speed test
TCP8443Admin_WorksationsUnifi_controllerBei der Software Controller Appliaktion das Web-GUI; in der UniFi Console redirect auf Port 443
TCP8080Unifi_devicesUnifi_controllerDevice and application communication
TCP8880*Unifi_controllerHTTP portal redirection. (only needed if using Guest hotspot).
TCP8843*Unifi_controllerHTTPS portal redirection. (only needed if using Guest hotspot).
UDP10001*Unifi_controllerDevice discovery
Ports die für UniFi Network nötig sind

UniFi Video (Protect)

ProtocolPortSourceDestinationUsage
6666*Unifi_controllerInbound Camera Streams
7004*Unifi_CamUVC-Micro Talkback
7442*Unifi_controllerCamera Management
TCP7080*Unifi_controllerIm Software Video Controller: HTTP Web UI & API
In der UniFI Konsole: Redirect auf Port 80
TCP7443*Unifi_controllerIm Software Video Controller: HTTPS Web UI & API
In der UniFI Konsole: Redirect auf Port 443
7441*Unifi_controllerRTSPS via the controller
7444*Unifi_controllerCamera firmware updates from controller
7445*Unifi_controllerVideo over HTTP
7446*Unifi_controllerVideo over HTTPS
7447*Unifi_controllerRTSP via the controller
7550*Unifi_controllerStreaming to UFP
UDP10001*Unifi_controllerNVR Discovery
Ports die für UniFi Video (Protect) nötig sind

Troubleshooting

Klappt etwas nicht, kann man sich immer auf der Konsole des Geräts anmelden und info eintippen. Man bekommt dann die Status Information des Geräts:

BZ.v3.9.19# info

Model:       UAP-AC-LR
Version:     3.9.19.8123
MAC Address: 00:00:00:00:00:00
IP Address:  192.168.1.5
Hostname:    UBNT
Uptime:      1732 seconds

Status:      Connected (http://unifi:8080/inform)

Ebenfalls liefert die Datei: /var/log/messages hilfreiche Informationen.

[stextbox id=“warning“ caption=“Achtung, kein NAT!“]Man muss bei diesen sogenannten L3 (OSI Layer 3) Provisionierungs-Methoden darauf achten, dass man kein NAT (Network Address Translation) im Netzwerk einsetzt, d.h. der UniFi Controller muss die „echte“ IP des Geräts (z.V: AccessPoint) sehen und nicht die des routers!
Denn wenn sich ein Gerät mit dem Controller verbindet, speichert dieser die IP vom Verbindenden Gerät und kann somit nicht nicht mehr drauf Zugreifen.

Ein Beispiel:
Der Router/Firewall hat die IP: 192.168.1.1
Der Controller hat die IP: 192.168.1.5
Der AccessPoint hat die IP: 192.168.2.10

Bei NAT sieht nun der Controller den AccessPoint als von der IP: 192.168.1.1 kommend.
Somit denkt dieser, das sei nun die IP vom AccessPoint und versucht darauf zuzugreifen, was natürlich nicht klappt.

Ohne NAT sieht der Controller den AccessPoint als von der (korrekten) IP: 192.168.2.10 kommend und ein Zugriff ist möglich.

Man kann das einfach testen, indem man sich auf die SSH Konsole des Geräts (hier der AccessPoint) einloggt und sich dann mit ssh auf den Controller verbindet.
Auf diesem gibt man nun last -i ein:

root     pts/0        192.168.2.10        Fri Apr  6 12:23   still logged in   # <- RICHTIGE IP
root     pts/0        192.168.1.1        Fri Apr  6 12:21 - 12:22  (00:00)    # <- FALSCHE IP

Gibt man in der SSH Konsole des Geräts dann info ein erscheint Folgende Fehlermeldung:

Status:      Unable to resolve (http://unifi:8080/inform)

oder in /var/log/messages:

UBNT user.err syslog: ace_reporter.reporter_fail(): Unable to resolve (http://unifi:8080/inform)
UBNT user.err syslog: ace_reporter.reporter_fail(): initial contact failed #1, url=http://unifi:8080/inform, rc=1
UBNT user.info syslog: ace_reporter.reporter_next_inform_method(): next inform url[0]=http://unifi:8080/inform
UBNT user.info syslog: ace_reporter.reporter_next_inform_method(): authkey=xxxxxxxxxxxxxxxxxx

[/stextbox]

Unable to resolve (http://unifi:8080/inform)

Bekommt man bei der Eingabe von info die Meldung „Unable to resolve (http://unifi:8080/inform)“ und/oder sieht in /var/log/messages etwa solche Meldungen:

ace_reporter.reporter_next_inform_method(): next inform family: 10
user.err : mcad[14392]: ace_reporter.reporter_fail(): Unable to resolve (http://unifi:8080/inform)
user.err : mcad[14392]: ace_reporter.reporter_fail(): initial contact failed #4, url=http://unifi:8080/inform, rc=1

Hat man mit

# curl -I 'http://unifi:8080/inform'
HTTP/1.1 400
Transfer-Encoding: chunked
Date: Tue, 07 Sep 2021 23:10:04 GMT
Connection: close

sichergestellt dass der Hostname „unifi“ aufgelöst werden kann, hilft es, wenn man kurzzeitig die Controller IP (hier: 192.168.1.5) setzt und danach wieder zurück wechselt:

# info

Model:       UAP-AC-Lite
Version:     4.3.21.11325
MAC Address: 00:00:00:00:00:00
IP Address:  192.168.1.10
Hostname:    UAP-AC-LR
Uptime:      22666421 seconds

Status:      Unable to resolve (http://unifi:8080/inform)



# set-inform http://192.168.1.5:8080/inform

Adoption request sent to 'http://192.168.1.5:8080/inform'.  Use the controller to complete the adopt process.

# info

Model:       UAP-AC-Lite
Version:     4.3.21.11325
MAC Address: 00:00:00:00:00:00
IP Address:  192.168.1.10
Hostname:    UAP-AC-LR
Uptime:      22666452 seconds

Status:      Connected (http://192.168.1.5:8080/inform)



# set-inform http://unifi:8080/inform

Adoption request sent to 'http://unifi:8080/inform'.  Use the controller to complete the adopt process.

# info

Model:       UAP-AC-LR
Version:     5.43.43.12741
MAC Address: 00:00:00:00:00:00
IP Address:  192.168.1.10
Hostname:    UAP-AC-LR
Uptime:      892 seconds

Status:      Connected (http://unifi:8080/inform)

Quellen

Published by

Steven Varco

Steven ist ein Redhat RHCE- und Kubernetes CKA Zertifizierter Linux-Crack und ist seit über 20 Jahren sowohl beruflich wie auch privat auf Linux spezialisiert. In seinem Keller steht ein Server Rack mit diversen ESX und Linux Servern.

2 thoughts on “UniFi Controller mit Geräten in verschiedenen Netzwerken”

  1. Hallo,
    ich möchte gerne ein Management vlan bei der UDM PRO einrichten. Sobald das Managment Vlan 50 z.B eingerichtet ist, weise ich dem entsprechenden Switch unter Dienste, das Management Vlan zu. Danach geht er auf provisonieren und bleibt dann bei „Einbindung fehlgeschlagen“ stehen.
    Meine Lösung: wenn ich unter Rule lokal, vom Management LAN eine Rule auf die IP des Controllers zeigen lasse gehts.

Schreibe einen Kommentar zu andymueller@dlg.ch Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert