Zum Hauptinhalt springen
  1. Blog/

UniFi Cloud Gateway hinter der Fritzbox: Kein doppeltes NAT, sauberes Routing

Michael Bäcker (aka BakermanLP)
Autor
Michael Bäcker (aka BakermanLP)
Ich bin Baujahr 1972, lebe in Schwabach und spiele für mein Leben gerne mit Computern und Freunden.

Die Fritzbox raus und einen Modem-Router hinstellen wäre die naheliegende Lösung, wenn das UniFi Cloud Gateway den Hausrouter-Job übernehmen soll. Bei mir bleibt sie trotzdem drin, aus zwei Gründen: Ein reines Modem kostet extra Geld, während die Fritzbox eh schon da ist. Und wer noch Festnetztelefonie, schnurlose Telefone oder gar ein Faxgerät an der Fritzbox hängen hat, braucht sie ohnehin weiter als Telefonanlage. Also bleibt sie stehen, wird aber zur reinen Vorstufe degradiert - der Rest des Setups sorgt dafür, dass sie dem UniFi Gateway dabei nicht in die Quere kommt.

Tipp

UniFi räumt seine Oberfläche mit jedem größeren Update gerne mal um, dann liegen Einstellungen plötzlich woanders als in dieser Anleitung oder im Video beschrieben. Findet ihr einen Menüpunkt nicht auf Anhieb an der genannten Stelle, tippt den Begriff einfach ins Suchfeld oben in der UniFi-Oberfläche - das ist meistens der schnellere Weg als sich durch alle Untermenüs zu klicken.

Doppeltes NAT: das Problem in Kürze
#

Hängt das UniFi Gateway ohne weitere Konfiguration hinter der Fritzbox, entsteht automatisch doppeltes NAT. Mein Rechner schickt ein Paket mit seiner IP an das Gateway, das Gateway übersetzt die Absender-Adresse auf seine eigene IP und reicht das Paket an die Fritzbox weiter. Die Fritzbox übersetzt beim Verlassen des Hauses noch einmal, diesmal auf die öffentliche IP. Kommt die Antwort zurück, läuft dieselbe Übersetzung zweimal rückwärts. Funktioniert grundsätzlich, sorgt aber bei manchen Diensten - vor allem bei allem, was mit Streams oder eigenem Connection-Tracking arbeitet - für Aussetzer.

Das Ziel heißt deshalb “einfaches NAT”: Nur eine Instanz im Netz übersetzt die Absender-Adresse, alle anderen reichen die Pakete unverändert durch. Praktisch heißt das: Das UniFi Gateway lässt die Absender-IP meines Rechners unangetastet, die Fritzbox sieht die interne Client-IP direkt und weiß über eine passende Route, wie sie die Antwort dorthin zurückschickt. NAT bzw. Masquerading findet dann nur noch an einer Stelle statt - am Übergang der Fritzbox ins öffentliche Internet.

Das Netz-Layout
#

Zwischen Fritzbox und UniFi Gateway kommt ein eigenes, kleines Transfernetz: 192.168.0.0/24. Die Fritzbox bekommt darin die .1, das UniFi Gateway eine feste .254. Dahinter hängen dann die eigentlichen Netze, für die die Fritzbox jeweils eine Route zum Gateway braucht:

Netz Subnetz Gateway (aus Fritzbox-Sicht) VLAN-ID
Transfernetz Fritzbox ↔ UniFi 192.168.0.0/24 - -
Default/Haupt-LAN 192.168.1.0/24 192.168.0.254 1
Arbeitsnetzwerk 192.168.3.0/24 192.168.0.254 3
Gäste-LAN 192.168.100.0/24 192.168.0.254 100

Der Trick dabei: Die VLAN-ID steckt jeweils im vorletzten Oktett der Netzadresse. Muss man nicht so machen, aber es macht die Zuordnung beim Blick auf eine IP-Adresse deutlich einfacher, als sich Netz-zu-VLAN-Tabellen zu merken.

Schritt 1: Fritzbox-Netzwerk umstellen
#

In der Fritzbox stelle ich unter Heimnetz → Netzwerk → Netzwerkeinstellungen → IPv4-Einstellungen das interne Netz auf das Transfernetz um: IP-Adresse 192.168.0.1, Netzmaske 255.255.255.0, DHCP aktiv (damit das UniFi Gateway beim ersten Anstöpseln überhaupt eine Adresse bekommt, bevor es später auf eine feste IP wechselt). Beim lokalen DNS-Server lasse ich vorerst einfach die Fritzbox selbst stehen.

Wichtig: An dieser Stelle warnt die Fritzbox ausführlich, dass sich DHCP-Bereich und interne Adressen ändern und dadurch bestehende Portfreigaben, Kindersicherung oder auch WireGuard-Verbindungen erst mal nicht mehr funktionieren. Das ist an dieser Stelle korrekt und erwartet - die Übernahme trotzdem bestätigen.

Schritt 2: Routen zu den UniFi-Netzen eintragen
#

Damit die Fritzbox weiß, wo die eigentlichen Netze hinter dem UniFi Gateway liegen, kommen unter IPv4-Routen die drei Einträge aus der Tabelle oben dazu - jeweils Netzwerk-Adresse, Subnetzmaske 255.255.255.0 und als Gateway die 192.168.0.254. Ohne diese Routen weiß die Fritzbox schlicht nicht, dass hinter dem Transfernetz noch weitere Netze existieren, und würde Antwortpakete ins Leere schicken.

Schritt 3: NAT im UniFi Gateway abschalten
#

In der UniFi-Network-Oberfläche unter Settings → Routing → NAT gibt es den Schalter Global NAT Settings. Den schalte ich aus, wieder mit einer Warnung, dass dadurch kurzzeitig Verbindungen abbrechen können. Danach auf Apply - und schon läuft nur noch einfaches NAT.

Ein Stolperstein hier: Sobald ich dem WAN-Interface anschließend eine feste IP-Adresse gebe (Schritt 4), aktiviert UniFi das Masquerading am Interface teilweise automatisch wieder. Es lohnt sich, nach der IP-Umstellung noch mal kurz bei den NAT-Regeln vorbeizuschauen und den Schalter notfalls ein zweites Mal auf Off zu stellen.

Schritt 4: Feste IP fürs UniFi Gateway an der Fritzbox
#

Unter Settings → Internet → Primary WAN stelle ich das WAN-Interface von DHCP auf eine statische IP um: Adresse 192.168.0.254, Gateway 192.168.0.1 (die Fritzbox), dazu zwei DNS-Server nach Wahl - hier reicht praktisch jede Kombination aus einem öffentlichen Resolver und einem zweiten. Unter Networks lege ich die drei Netze aus der Tabelle mit ihren jeweiligen VLAN-IDs an bzw. passe sie an.

Schritt 5 (optional): Exposed Host einrichten
#

Ohne weitere Konfiguration landen alle unangeforderten Pakete aus dem Internet zuerst bei der Fritzbox - und die verwirft sie, sofern keine passende Portfreigabe existiert. Wer zuhause einen Dienst betreibt, der von außen erreichbar sein soll (Webserver, Spieleserver, eigener VPN-Endpunkt), kann der Fritzbox stattdessen sagen: Alles, was nicht schon einer bestehenden Verbindung zugeordnet werden kann, geht komplett an ein bestimmtes Gerät weiter - den Exposed Host.

In der Fritzbox liegt die Einstellung unter Internet → Freigaben → Portfreigaben → Gerät für Freigaben hinzufügen, dort das UniFi Cloud Gateway auswählen und für den kompletten IPv4-Zugriff freigeben. Die eigentliche Steuerung, was mit diesem Datenverkehr passiert, übernimmt danach das UniFi Gateway selbst - über Firewall-Zonen, Portweiterleitungen unter Routing oder VPN-Profile.

Zwei Dinge dabei im Hinterkopf behalten:

  • Sicherheitsverantwortung wandert. Ohne Exposed Host schützt euch die Fritzbox-Firewall vor unaufgefordertem Traffic aus dem Netz. Mit Exposed Host übernimmt diese Aufgabe komplett das UniFi Gateway - eine saubere Konfiguration dort ist Voraussetzung, nicht optional.
  • Von der Fritzbox selbst verwaltete Dienste bleiben außen vor. Wer in der Fritzbox eigene VPN-Profile (WireGuard, MyFRITZ!) konfiguriert hat, wird feststellen, dass die Fritzbox diesen Traffic weiterhin selbst abfängt, bevor er beim Exposed Host ankommt. Hier hilft in der Praxis oft nur, die betroffenen Ports anzupassen oder den entsprechenden Dienst komplett ins UniFi Gateway zu verlagern.

Bonus: wirklich nachprüfen, ob NAT tatsächlich weg ist
#

Der Schalter Global NAT Settings: Off in der UniFi-Oberfläche ist eine Absichtserklärung, kein Beweis. Bei mir hat sich später gezeigt, dass sich das GUI-Feld und der tatsächliche Zustand der iptables-Regeln auf dem Gateway auseinanderentwickeln können, ohne dass man das an der Oberfläche merkt. Wer’s genau wissen will, prüft direkt am Gerät:

  • Live mitschneiden: Per SSH aufs Gateway und tcpdump -i eth4 -nn mitlaufen lassen (eth4 ist bei der UCG Ultra das WAN-Interface, kann je nach Modell abweichen), parallel von einem Client aus ping 1.1.1.1 auslösen. Taucht im Mitschnitt weiterhin die private Client-IP als Absender auf statt der WAN-seitigen Gateway-IP, findet keine Übersetzung mehr statt.
  • Regeln direkt lesen: iptables -t nat -L -n -v auf dem Gateway zeigt in der Kette UBIOS_POSTROUTING_USER_HOOK, ob eine RETURN-Regel mit match-set auf ein Subnetz-Set der eigentlichen MASQUERADE-Regel zuvorkommt. Genau das steckt technisch hinter dem GUI-Schalter.

Für die Exposed-Host-Einstellung gibt’s eine ähnliche Falle: Über die offizielle TR-064-Schnittstelle der Fritzbox lässt sich der Exposed-Host-Status nicht abfragen, nur über die interne (undokumentierte) data.lua-Oberfläche. Wer das automatisiert überwachen will, kommt an der Weboberfläche also nicht vorbei.

Was sich dadurch ändert
#

Nach der Umstellung ist das doppelte NAT weg, und sämtlicher Internet-Traffic landet direkt beim UniFi Gateway - inklusive allem, was sich dort inzwischen an Firewall-Zonen, Portweiterleitungen und VPN-Optionen konfigurieren lässt. Die Fritzbox bleibt trotzdem im Spiel, kümmert sich aber nur noch um das, wofür sie ohnehin schon zuständig war: Telefonie und die physische Anbindung ans Internet. Mit den Firewall-Zonen im UniFi Gateway habe ich mich bisher noch nicht tief genug beschäftigt, um dazu ein eigenes Video zu machen - kommt aber noch, sobald ich da durchgestiegen bin.

Weiterführende Links #