Bisher hatte ich auf die Aktivierung von IPv6 in der Fritzbox verzichtet, durch den Matter Adapter in Iobroker müss ich aber IPv6 aktivieren, verliere dadurch aber den Zugriff auf den Zugriff meiner selbst gehosteten Sub-Domains.
Ist Zustand bisher:
Internetzugang über Telekom Magenta DSL an einer FritzBox 7590 mit abgeschaltetem IPv6, Portweiterleitung von Port 80 und 443 zu meinem (Proxmox LXC Container) Nginix Reserve Proxy Manager, der die Zertifikateverwaltung und die Verteilung (je nach Ankommens der jeweiligen Sub-Domains) auf die jeweiligen Maschinen/Dienste gemanged hat. In der Fritzbox hatte ich als DYN-DNS Dienst MyFritz genutzt, nun auch (zusätzlich) IPv64.net mit einer WildCard Domain *.xxxx.ipv64.net. Die Subdomains sind unter meiner bei Strato angemeldeten Domain eingerichtet und dort habe ich xxxx.myFritz.net. und (teilweise) xxxx.ipv64.net in cname eingetragen. Das ganze funktioniert seit einiger Zeit gut.
Soll Zustand:
Für die Nutzung vom Iobroker Matter Adapter muss ich IPv6 in der Fritzbox aktivieren und in dem LXC Iobroker Container IPv6 SLAAC aktivieren, damit funktioniert Iobroker mit Matter.
Problem:
Nach dem Aktivieren von IPv6 in der Fritzbox verliere ich den Zugriff auf meine Subdomains, weil (wenn ich es richtig verstanden habe) IPv6 Pakete nicht weitergeleitet werden, sondern in der FritzBox „hängen bleiben“.
Ich habe mir oft die Erklärungen von @The_eagle in dem Beitrag:
Nexcloud nicht erreichbar
durchgelesen, beginne nun langsam die funktionsweise von IPv6 in meinen alten Schädel zu realisieren, auch wenn ich in dem Beitrag ehrlicherweise nicht alles verstanden habe.
Wie wäre eine (möglichst einfache) Herangehensweise und welchen Schrauben muss gedreht werden? (Strato, IPv64.net, FritzBox, NGM, Proxmox) Hatte naiv gehofft, dass es eine einfache Lösung gibt, da ich ja eigentlich IPv6 „nur“ intern brauche.
Ja, weil es eben nicht ausreicht in der Fritte unter Internet → Zugangsdaten → IPv6 ein Häkchen vor IPv6-Unterstützung aktiv zu setzen.
Du brauchst dann für IPv6 auch noch Freigaben. Zu finden unter Internet → Freigaben → Portfreigaben. Damit das klappt müssen auch noch die Heimnetz → Netzwerk → Netzwerkeinstellungen angepasst werden. Und zwar dort dann unter weitere Einstellungen → IPv6-Einstellungen. Dort muss ein Häkchen vor DNSv6-Server auch über Router Advertisement bekanntgeben (RFC 5006) und darunter sollte noch DNS-Server, Präfix (IA_PD) und IPv6-Adresse (IA_NA) zuweisen aktiviert werden.
Danach sollten dann Server im LAN via IPv6 ohne NAT erreichbar sein.
Zu dem Zusammenspiel mit dem Proxmox LXC Container kann ich jedoch keine Aussagen machen. Nutze ich nicht.
Nachtrag: natürlich musst du dann auch dafür sorgen, dass die IPv6-Adressen der Server aus dem LAN-Subnet der Fritte via DHCPv6 aufgelöst wird. Da v6 ja kein NAT benötigt. ist die IPv6-Adresse eben nicht die IPv6-Adresse der Fritte (wie bei IPv4) sondern jedes Gerät im LAN hat eine eigene (sofern die Firewall-Regeln das erlauben) öffentlich erreichbare v6-Adresse.
Da liegt bei dir auch noch ein großer Denkfehler vor. Die DYN-DNS Dienst MyFritz nutzt dir bei IPv6 und Servern im LAN der Fritte rein gar nichts. Auch die IPv64.net mit einer WildCard Domain *.xxxx.ipv64.net ist der falsche Ansatz.
Warum? Wie ich bereits ausführte wird bei IPv6 nicht geNATet. Nehmen wir als Beispiel ein Netz mit einer Fritte und drei Server im LAN der Fritte die nun per IPv6 erreichbar werden sollen.
IPv6 der FritzBox: aaaa:bbbb:cccc:dddd:eeee:ffff:1111:2222
IPv6 des ServerA: aaaa:bbbb:ceec:ddcd::1001
IPv6 des ServerB: aaaa:bbbb:ceec:ddcd::1002
IPv6 des ServerC: aaaa:bbbb:ceec:ddcd::1003
Dem geneigten Leser wird auffallen, dass alle vier unterschiedliche IPv6-Adressen haben. Das MyFritz DNS kennt nur die IPv6 der Fritte (aaaa:bbbb:cccc:dddd:eeee:ffff:1111:2222). Anfragen an xxxx.myFritz.net via Port 80, gedacht für ServerA, landen dann aber eben am WAN der Fritte. Da ist Port 80 aber dicht.
Das gleiche gilt für die WildCard-Domain *.xxxx.ipv64.net. Auch da würde der WildCard ja aufgelöst werden zur IPv6-Adresse der Fritte. Richtig wäre es für jeden Server (also ServerA, ServerB und ServerC) bei ipv64.net eine eigene Subdomain (Präfix bei ipv64.net genannt) anzulegen, der auf die jeweiligen IPv6-Adresse der Server verweist. Also ServerA auf aaaa:bbbb:ceec:ddcd::1001, ServerB auf aaaa:bbbb:ceec:ddcd::1002 und ServerC auf aaaa:bbbb:ceec:ddcd::1003. Das Häkchen bei Wildcard muss dann natürlich entfernt werden.
Willst du dich damit nicht befassen, kannst du auch bei IPv6 mit NAT und LinkLocal-Adressen arbeiten, das wäre aber wie von hinten durch die Brust ins Auge zu schießen.
@The_eagle
Erstmal Danke für die Erklärungen, um dies nur einigermaßen verstehen zu können, werde ich eine Weile brauchen. Mit meinen laienhaften Netzwerkkenntnissen, wäre die von Dir vorgeschlagene Vorgehensweise ja noch nicht beendet. Wenn ich es richtig verstehe sind nur 3 Sub Domains (Präfixe) frei bei IPv64.net, jeder Server müsste für IPv6 eingerichtet sein, auch die Zertifikate Verwaltung wäre dann nicht mehr im NginixPM, auch wüsste ich nicht wie ich dann, so wie jetzt im NPM, auf Unterverzeichnisse verlinken könnte. Mich ahnungsbefreit und ohne Seniorengeeignete Step-by-Step Anleitung würde dann wohl eher auf Matter verzichten, als die Funktion meines jetzigen Systems zu gefährden, gerade weil ich einen Zugriff zu mir über IPv6 ja nicht dringend brauche. Da erscheint mir die „durch die Brust ins Auge“ Lösung (für mich) doch attraktiver. Wie müsste ich da vorgehen? Nochmals Danke für die Unterstützung
Es sind drei Domains frei (kostenlos möglich, mehr gegen Bezahlung). Für diese kannst du aber beliebig viele Präfixe erstellen.
Extra für dich:
Domain bei ipv64 z.B. = aaaaaa.ipv64.net (drei sind möglich)
Subdomain/Präfix bei ipv64 z.B. = ServerA.aaaaaa.ipv64.net