Home Assistant extern erreichbar (IPv6, DuckDNS, NGINX, FRITZ!Box,) – keine Verbindung von extern

Hallo zusammen,

das ist mein erster Beitrag hier im Forum – ich freue mich, Teil der Community zu sein und hoffe, dass ich den Beitrag im richtigen Unterforum platziert habe.
Ich habe mir kürzlich Home Assistant sowie einen Raspberry Pi 5 neu eingerichtet und stoße nun bei der externen Erreichbarkeit leider auf ein Problem, bei dem ich nicht mehr weiterkomme.


Setup

  • Home Assistant OS auf Raspberry Pi 5

  • Raspberry Pi per LAN direkt an der FRITZ!Box angeschlossen

  • NGINX Home Assistant SSL Proxy / Reverse Proxy

  • Externer Port: 8443

  • DuckDNS inkl. Let’s Encrypt Zertifikat

  • Vodafone Anschluss mit DS-Lite, jedoch mit öffentlicher IPv6-Adresse


DuckDNS / IPv6-Konfiguration

Zur Klarstellung der IPv6-Einrichtung:

  • Es ist keine feste IPv6-Adresse manuell eingetragen

  • Im DuckDNS-Addon ist im IPv6-Feld folgende URL hinterlegt:

    https://api6.ipify.org/
    
    
  • DuckDNS löst die Domain korrekt auf:

    • Ein externer nslookup <meinedomain>.duckdns.org liefert die IPv6-Adresse meines Raspberry Pi / Home-Assistant-Systems
  • Die bei DuckDNS hinterlegte IPv6-Adresse stimmt nachweislich mit der IPv6-Adresse des Home-Assistant-Hosts überein


Home Assistant / NGINX

  • Reverse-Proxy-Konfiguration gemäß offizieller Home-Assistant-Dokumentation umgesetzt

  • Relevante YAML-Einstellungen gesetzt (use_x_forwarded_for, trusted_proxies, etc.)

  • external_url korrekt gesetzt auf:

    https://<meinedomain>.duckdns.org:8443
    
    
  • Das Let’s Encrypt Zertifikat wird erfolgreich über DuckDNS erstellt und ist gültig


FRITZ!Box-Konfiguration

  • Portfreigabe 8443 → Raspberry Pi

  • Freigaben eingerichtet für:

    • IPv6 (relevant)

    • IPv4 (nur testweise, mir ist bewusst, dass DS-Lite hier in der Regel keine Rolle spielt)

  • DNS-Rebind-Schutz:

    • Die DuckDNS-Domain ist explizit als Ausnahme im DNS-Rebind-Schutz der FRITZ!Box hinterlegt
  • MyFRITZ!:

    • Alle MyFRITZ-Dienste vollständig deaktiviert, um mögliche Konflikte auszuschließen
  • Keine weitere Netzwerkinfrastruktur im Einsatz (kein zusätzlicher Router, kein VLAN, kein weiterer Proxy)


Aktuelles Verhalten

  • Intern (LAN):

    • Aufruf der DuckDNS-URL funktioniert problemlos

    • HTTPS-Verbindung wird sauber aufgebaut

    • Let’s Encrypt Zertifikat ist gültig

  • Extern (Mobilfunk / anderes Netz):

    • Keine Verbindung möglich

    • Timeout / keine Antwort


Offene Fragen

  • Übersehe ich etwas Spezifisches bei IPv6-Freigaben oder der IPv6-Firewall der FRITZ!Box?

  • Gibt es bekannte Besonderheiten bei Vodafone DS-Lite in Verbindung mit eingehendem IPv6-Traffic?

  • Gibt es typische Stolpersteine bei NGINX + DuckDNS + IPv6 + Port ≠ 443?

  • Ist Port 8443 unproblematisch oder sollte besser Port 443 genutzt werden?

  • Gibt es eine Möglichkeit zu prüfen, ob externe IPv6-Anfragen überhaupt am Raspberry Pi ankommen?

Ich wäre für jeden Hinweis oder Denkanstoß sehr dankbar und hoffe, dass mir jemand in die richtige Richtung helfen kann.

Vielen Dank vorab und viele Grüße
Paddey

Mal ne blöde Frage…..wenn man eine Fritzbox hat, warum nicht einfach schnell eine Wireguard eingerichtet? Dauert 1 Minute und funktioniert.

Das ist zurzeit, neben Cloudflare auch meine Fallback-Lösung.
Habe auf dem Handy WG nicht permanent aktiv, da ich nicht alles über über das Heimnetz leiten will.
Ich blicke da auch noch nicht 100%ig durch, was die Konfiguration angeht.
Wenn Cloudflare funzt - alles gut.
Wenn’s mal nicht funzt, was sehr selten ist, kann ich WG auf dem Handy aktivieren und bin “drin”.

Besser Port 443 nehmen und per nginx an HA Port 8123 weiterleiten. Hört Nginx bei dir auch auf ipv6 Adressen? Da ist oft der Fehler

1 „Gefällt mir“

Hallo zusammen,

vielen Dank für eure Kommentare und die Unterstützung.

Das Thema IPv6 könnte tatsächlich die Ursache gewesen sein. Wenn IPv6 nicht explizit in der Konfiguration aktiviert ist, liegt es nahe, dass genau dort das Problem bestand. Ich habe das vermutlich nicht aktiv eingerichtet, was dann auch die Schwierigkeiten erklären würde.

Nach längerer Beschäftigung mit dem Thema habe ich mich letztlich entschieden, den externen Zugriff vollständig über Cloudflare umzusetzen und mir dafür eine Domain über Spaceship zu besorgen. Und siehe da: Nach kurzer Zeit lief alles wie gewünscht. In diesem Zuge konnte ich sämtliche Portfreigaben und das Thema Port Forwarding komplett entfernen.

Aus meiner Sicht kann der Case damit geschlossen werden. Meine Vermutung bleibt, dass IPv6 der eigentliche Knackpunkt war.

Nochmals vielen Dank für eure Hilfe!

Viele Grüße

1 „Gefällt mir“

Ich hatte WireGuard immer so aktiviert, dass es sich on Demand außerhalb meines Netzwerkes aktiviert. Allerdings auch so, dass nur interne IP über die VPN Verbindung laufen und alles andere direkt.

Die Option müsste target IPs oder so heißen. In jedem Fall da, wo jetzt vermutlich 0.0.0.0 eingetragen ist. Der Eintrag sorgt dafür, dass alles über den Tunnel geht.

1 „Gefällt mir“