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
Protocol | Port | Source | Destination | Usage |
UDP | 3478 | Unifi_devices | Unifi_controller | STUN |
UDP | 3478 | Unifi_controller | Unifi_devices | STUN |
TCP | 8080 | Unifi_devices | Unifi_controller | Device and application communication |
TCP | 443 | Admin_Worksations | Unifi_controller | Application GUI/API as seen in a web browser |
TCP | 443 | Unifi_controller | * | Software Updates |
UDP | 1900 | Unifi_devices | Unifi_controller | Used to „Make application discoverable on L2 network“ in the UniFi Network settings. |
TCP | 6789 | * | Unifi_controller | UniFi mobile speed test |
TCP | 8443 | Admin_Worksations | Unifi_controller | Bei der Software Controller Appliaktion das Web-GUI; in der UniFi Console redirect auf Port 443 |
TCP | 8080 | Unifi_devices | Unifi_controller | Device and application communication |
TCP | 8880 | * | Unifi_controller | HTTP portal redirection. (only needed if using Guest hotspot). |
TCP | 8843 | * | Unifi_controller | HTTPS portal redirection. (only needed if using Guest hotspot). |
UDP | 10001 | * | Unifi_controller | Device discovery |
UniFi Video (Protect)
Protocol | Port | Source | Destination | Usage |
6666 | * | Unifi_controller | Inbound Camera Streams | |
7004 | * | Unifi_Cam | UVC-Micro Talkback | |
7442 | * | Unifi_controller | Camera Management | |
TCP | 7080 | * | Unifi_controller | Im Software Video Controller: HTTP Web UI & API In der UniFI Konsole: Redirect auf Port 80 |
TCP | 7443 | * | Unifi_controller | Im Software Video Controller: HTTPS Web UI & API In der UniFI Konsole: Redirect auf Port 443 |
7441 | * | Unifi_controller | RTSPS via the controller | |
7444 | * | Unifi_controller | Camera firmware updates from controller | |
7445 | * | Unifi_controller | Video over HTTP | |
7446 | * | Unifi_controller | Video over HTTPS | |
7447 | * | Unifi_controller | RTSP via the controller | |
7550 | * | Unifi_controller | Streaming to UFP | |
UDP | 10001 | * | Unifi_controller | NVR Discovery |
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)
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.