Zugriff auf Home Assistant hinter CGNAT also über IPV6 nicht möglich?

Moin zusammen, vielleicht bekomm ich hier ja mal einen Tipp. Seit nunmehr über 6 Wochen versuche ich unregelmäßig eine Verbindung von meinem Smartphone (home assistant companion app) zu meiner home assistant VM in proxmox herzustellen und scheitere immer wieder kläglich.

Ich bin Deutsche Glasfaser Kunde und nutze meine alte fritzbox 7490 hinter dem ollen ONT.

Habe zwischenzeitlich mal nen unifi cloud gateway ultra versucht aber das war mehr Krampf also ging das Gerät zurück. Naja nun sitze ich hier mit der fritzbox und bekomm das trotzdem nicht hin.

Von Netzwerktechnik hab ich nur ganz rudimentär Ahnung, also IPV4 verstehe ich noch so halb bei IPV6 schalte ich aber ab.

Soweit ich verstehe kann man die ipv6 Adresse welche zum Beispiel eine 2a00 Adresse von der fritzbox mittels SLAAC kam, im Internet erreichen.

Also dachte ich mir, nimm das ipv64 addon in home assistant und lass deine home assistant IP übermitteln an die DynDNS Adresse hier. Das klappt auch super.

Dann dachte ich mir man könnte doch mal den CDN Service probieren damit ich keinen nginx brauche, aber ich bekomm keine Verbindung hin und weiß nicht mehr weiter.

CDN ist an DynDNS gekoppelt, websocket aktiv, proxy eingeschaltet, portmapper aktiv mit Umleitung auf Port 8123.

In der fritzbox portfreigabe des Gerätes home assistant (die angezeigte IP ist komischerweise in der fritzbox eine andere weil das Teil irgendeine interface id nimmt die ich zwar ändern kann aber davon ausgehe dass der Kasten doch weiß welches Gerät gemeint ist) ist auf Port 8123 eingestellt und dennoch klappt es nicht.

Gebe ich im heimischen Netzwerk die ipv6 Adresse der home assistant VM mit dem Port 8123 ein, so lande ich beim anmelde screen.

Auf dem Handy geht jedoch nix aus dem Mobilfunk.

Wo setze ich da an? Bin echt ratlos mittlerweile.

Gruß Dennis

Ich sehe bei deiner Config gleich mehrere grundsätzliche Fehlerquellen, die die Ursache deiner Probleme sein könnten.

  • SLAAC ist nicht das Mittel der Wahl um einem Server, der via IPv6 von Außen erreichbar sein soll, eine IPv6-Adresse zu geben. Das Mittel der Wahl wäre DHCPv6.
  • der CDN Service. Du sagst aber nicht weiter welchen du genau nutzt. CDN macht nur Sinn in Kombination mit dem CDN Portmapper oder CDN Reverse-Proxy. Allein nutzt der nichts. Der CDN Reverse-Proxy scheidet für deine Config aber aus, denn der hilft nur bei Ports 80/443. Bliebe der Portmapper.
  • die home assistant companion app nutze ich nicht. Daher stellt sich die Frage ob diese home assistant companion app mit anderen Ports umgehen kann als Port 8123. Das müsste die App aber können, wenn du den Portmapper nutzt. Wie der Name sagt mappt der Portmapper Ports. Aus 8123 wird dann eben z.B. 48123. Das müsste man der App dann aber auch mitteilen (können). Ansonsten versucht die es ja weiterhin auf 8123. was natürlich dann nicht geht.
  • Das Smartphone selbst kann auch falsch konfiguriert sein. Ist es so konfiguriert, dass es eine IPv6-Adresse vom Mobilfunkprovider bekommt? Wenn nicht ändere das in den APN-Settings.

Du merkst also selbst, dass eine konkrete Hilfe unmöglich ist, denn du lieferst viel zu wenig brauchbare Infos. Und sollte die home assistant companion app keine Möglichkeit bieten den Port von 8123 auf einen anderen Port zu switchen, dann ist der ganze Ansatz CDN sowieso für’s Klo gewesen und du hast 6 Wochen damit vergeudet.

Von Anfang an zielführender wäre dann der Ansatz Wireguard gewesen. Auch die 7490er-Fritte kann mit dem aktuellen Fritten-OS (7.60) Wireguard und Wireguard-Clients gibt es sowohl für Android, wie auch das OS von dem Farmer aus Cupertino, der seine Äpfel vor dem Verkauf bereits alle einmal anbeißt.

Damit hättest du dann zwar nur bei bestehender Wireguard-Verbindung Zugriff per App auf dein home assistant, aber da müsstest du dir dann keine Gedanken machen über Ports in der home assistant companion app und auch deutlich weniger über die Sicherheit dessen, was du da konfiguriert hast, denn so wäre der home assistant Server dann ja gar nicht direkt aus dem Internet für potentielle Bösewichte erreichbar. Ein Gesichtspunkt der für Leute mit deinen Kenntnissen von Bedeutung sein sollte.

Anleitungen wie man Wireguard auf Fritten einrichtet gibt es im Netz viele. Klappt das dann zuverlässig per IPv6, kann man danach dann per CDN Portmapper auch dafür sorgen dass es per IPv4 auch noch klappt. In den Apps für Wireguard kann man nämlich ganz sicher und einfach beliebige Ports angeben, anders als bei vielen anderen Apps.

Danke für deine Infos. Wie gesagt bin ich absoluter Laie im Bereich Netzwerktechnik und habe mich hier und da versucht einzulesen und dann umzusetzen.

Zur genaueren Einordnung, die home assistant companion app ist eine App fürs Handy (ich nutze Android) mit der ich mein smarthome steuern und überwachen kann, die app benötigt zumindest unregelmäßig Kontakt zur home assistant VM damit ein Standort gemeldet werden kann, genauso lasse ich mich benachrichtigen wenn etwas zuhause passiert (ein Beispiel die Post war da).

All diese Funktionen habe ich bei meinem alten Internetanschluss (1und1 mit öffentlicher ipv4 Adresse) mit nginx in einem LXC container in proxmox realisiert.

Bei ipv6 habe ich angenommen das könnte man sich sparen weil jede Adresse direkt angesprochen werden kann. Also muss ich gucken wo ich in der fritzbox DHCPv6 einstellen kann?

Warum geht SLAAC nicht in Verbindung mit der DynDNS Aktualisierung?

Das Smartphone bekommt von der Telekom eine ipv6 Adresse, eingestellt ist APN Internet.v6.telekom.

In home assistant kann man sicher den Port ändern, aber was nutzt es? Wenn ich nicht mal mit dem Port freigegeben über die aktuelle ipv6 Adresse von außen darauf zugreifen kann?

Was für Infos brauchst du damit wir mein Problem lösen können? Wireguard ist für mich keine Lösung da ich kein Interesse daran habe manuell ständig einen Tunnel öffnen zu müssen, außerdem frisst das auf dem Smartphone mehr Akku (und meine Frau braucht genauso auch Kontakt mit Ihrem Handy zum home assistant aus den selben Gründen), also wireguard scheidet aus.

IPV6 soll doch “einfacher sein da ohne NAT “warum ist das so ein Drama einfach eine Verbindung nur über ipv6 herzustellen? Und CDN war für mich nur eine Idee weil damit auch aus WLANS (im Supermarkt etc.) die Verbindung gehalten werden kann wo nur ipv4 existiert.

Naja und portmapper habe ich, vermutlich aus Unwissenheit einfach ausprobiert, oder aus Verzweiflung.

Also was kann ich tun, wo setze ich an? Brauche ich noch Equipment oder muss ich noch etwas kaufen damit ich das hinbekommen kann? Über jegliche Hilfe würde ich mich freuen.

Nö, das geht vom Prinzip her alles auch mit einer 7490er Fritte.

Und genau das ist es woran es scheitert.

Google doch einfach mal selbst SLAAC vs. DHCPv6 !!! Kurzes Zitat für hier:
SLAAC basiert auf Router Advertisement (RA) Nachrichten, die von Routern gesendet werden, und ermöglicht es Geräten, ihre IPv6-Adresse selbstständig zu generieren. DHCPv6 hingegen ist ein Protokoll, das einen Server benötigt, um Adressen und andere Konfigurationsparameter wie DNS-Server zuzuweisen

Du merkst selbst, dass selbstständig generieren etwas ist, mit dem deine Fritte dann nichts zu tun hat und von dem sie dann denknotwendig auch nichts wissen muss. Jetzt kommt aber die Port-Freigabe (8123) ins Spiel. Und dafür muss die Fritte eben doch die IPv6-Adresse des Gerätes kennen, für das diese gelten soll. Denk mal drüber nach! Aber mit der DynDNS Aktualisierung selbst hat das nichts zu tun.

Deine Fritte hat einen eingebauten DHCPv6-Server. Wird in den IPv6-Netzwerkeinstellungen aktiviert unter DHCPv6-Server im Heimnetz über die Auswahl von

  • DNS-Server, Präfix (IA_PD) und IPv6-Adresse (IA_NA) zuweisen

Ob und wie es in deinem LXC container in proxmox realisiert wird statt SLAAC den DHCPv6-Client zu nutzen, vermag ich nicht zu sagen. Keine Ahnung welches OS du darin nutzt und ob das z.B. wie bei Debian /etc/network/interfaces nutzt oder wie bei Ubuntu Netplan oder gar den Network Manager. Ich nutze KVM/QEMU zur Virtualisierung. Also musst du selbst recherchieren.

Dem ist auch so. Allerdings setzt es korrekte Konfiguration voraus und ein Port wie 8123 muss natürlich dennoch korrekt übergeben werden.

Das sollte bei korrekter Konfiguration und Syntax gehen, wenn auch der Port mit übermittelt wird. Bei Verwendung von IPv6-Adressen im Browser ist (wegen der : in der IPv6-Adresse) zwingend auch auf eine korrekte Syntax zu achten.

Hast du das geprüft oder ist das nur eine Annahme von dir? Ich werd das nicht für dich prüfen und wenn es nicht geht kannste dir alles mit CDN-Portmapper sparen und wirst ohne VPN nicht per IPv4 ins LAN kommen.