DNS-Rebind-Schutz Ausnahme funktioniert für IPv6 aber nicht für IPv4

Novgorod

New member
Ich habe eine Fritzbox 4050 als Router und dahinter einen Reverse-Proxy mit diversen Diensten, die ich über eine öffentliche Domain (mydomain.de) mit Subdomains erreichen will - einige aus dem Internet und LAN, einige nur aus dem LAN. Eingehende Verbindungen aus dem Internet gehen nur über IPv6, für die entsprechenden Subdomains (z.B. photos.mydomain.de) habe ich also AAAA Einträge gemacht beim Domain-Hoster, die auf die öffentliche IPv6 vom Reverse-Proxy verweisen. Andere Subdomains sollen nur intern erreichbar sein (z.b. nas.mydomain.de), für diese habe ich A Einträge mit der privante IPv4-Adresse des Reverse-Proxy gemacht (192.168.10.2).

Die DNS-Auflösung über einen externen Dienst wie 1.1.1.1 funktioniert problemlos, also "nslookup nas.mydomain.de 1.1.1.1" liefert die private IPv4-Adresse und die (öffentlichen) IPv6-Subdomains gehen auch. Bei der DNS-Auflösung über die Fritzbox im LAN macht allerdings der Rebind-Schutz Probleme. Bei den Ausnahmen für den Rebind-Schutz habe ich "mydomain.de" eingetragen und damit werden die IPv6-Subdomains korrekt aufgelöst (ohne die Ausnahme gibts keine Antwort), aber für die IPv4-Subdomains bekomme ich "*** No internal type for both IPv4 and IPv6 Addresses (A+AAAA) records available for nas.mydomain.de". Die Haupt-Domain bei der Rebind-Schutz Ausnahme sollte als Wildcard für alle Subdomains fungieren, aber selbst wenn ich die Subdomains explizit eintrage, bekomme ich das gleiche Verhalten (und man muss offenbar den DHCP-Server neustarten, damit die Ausnahmen sofort übernommen werden). Und wenn ich für eine Subdomain IPv4 und IPv6-Einträge mache (A+AAAA), wird nur der IPv6-Eintrag aufgelöst.

Ist es "by design", dass der Rebind-Schutz nur für IPv6 deaktiviert werden kann? Kann ich mir schwer vorstellen... Gibt es eine Möglichkeit, den Rebind-Schutz für private IPv4-Adressen zu deaktivieren? Ich würde ungern nur deswegen einen separaten DNS-Server im LAN aufsetzen müssen. Vielleicht geht das auch über "myfritz" als Weiterleitung, aber das ist dann ein weiterer externer Dienst.
 
Hallo.

Ich würde mal vermuten das die private IPv4 hier stört bin mir hier aber nicht ganz sicher.

Warum gehts du nicht über den internen DNS der FritzBox selbst wenn die nur intern verwendet werden. Unter Heimnetz -> Netzwerk und dem Proxy sollte bei Heimnetz eine Zeile stehen wo steht „Im Heimnetz erreichbar unter:“ mit z.B „http://meinproxy“ oder „http://meinproxy.fritz.box“.
 
@Novgorod Es ist nicht nur „schlechte Praxis“, sondern durch RFC 1918 und die IETF best practice-Empfehlungen untersagt, private IPv4-Adressen in öffentlichen DNS-Zonen als A-Record zu veröffentlichen.

Wenn sich DNS-Server "Internet-konform" verhalten, dann leiten sie einen A-Record mit einer privaten IPv4 gar nicht erst weiter, selbst wenn er angelegt sein sollte. Das trifft übrigens auch auf jeden eventuellen, rekursiven Resolver in der Kette zwischen Dir und dem authoritativen DNS-Server zu, der "sauber" arbeitet.

Also selbst wenn Cloudflare (1.1.1.1) es bei direkter Anfrage noch ausliefert, wäre es denkbar, dass entweder schon der DNS-Server Deines Providers den A-Record "verwirft", eben weil er eine private IPv4 enthält. Oder aber spätestens die FritzBox selbst, könnte ich mir vorstellen.

Es ist also eher kein Problem des Fritz "DNS-Rebind Schutzes" meiner Ansicht nach.

Dein PC wird ja standardmäßig nicht 1.1.1.1 als DNS-Server hinterlegt haben.
 
Zuletzt bearbeitet:
Warum gehts du nicht über den internen DNS der FritzBox selbst wenn die nur intern verwendet werden. Unter Heimnetz -> Netzwerk und dem Proxy sollte bei Heimnetz eine Zeile stehen wo steht „Im Heimnetz erreichbar unter:“ mit z.B „http://meinproxy“ oder „http://meinproxy.fritz.box“.
Das ginge sicherlich auch, ich wollte das bloß einheitlich über die richtige Domain (FQDN) laufen lassen und für "nur-LAN" Dienste nicht unbedingt ein anderes Schema verwenden. Aber es ist vielleicht keine schlechte Idee, für die Subdomains (xxx.mydomain.de) CNAME-Einträge vom Typ xxx.fritz.box zu machen. Hoffentlich wurde das beim Rebind-Schutz "übersehen"... ;)
 
Nur, das Du "leider" keinen CNAME nur für den A-Record anlegen kannst. Der CNAME gilt dann für A+AAAA-Record, womit dann niemand mehr aus dem Internet die IPv6 Deiner Dienste hinter dem Reverse Proxy mehr auflösen kann.
 
Also selbst wenn Cloudflare (1.1.1.1) es bei direkter Anfrage noch ausliefert, wäre es denkbar, dass entweder schon der DNS-Server Deines Providers den A-Record "verwirft", eben weil er eine private IPv4 enthält. Oder aber spätestens die FritzBox selbst, könnte ich mir vorstellen.

Es ist also eher kein Problem des Fritz "DNS-Rebind Schutzes" meiner Ansicht nach.
Das ist gut möglich, kommt wohl auf den DNS-Provider an. Der ISP hier (DG) scheint es zu blocken, übers Handy geht es (Vodafone-Netz), aber schwer zu sagen, ob Android überhaupt den DNS-Server des Provides benutzt, machen die meisten Browser ja auch nicht mehr...

CNAME auf fritz.box geht natürlich auch nicht (nicht mitgedacht), weil das eine bereits existierende öffentliche Domain ist. Ich probier mal, Cloudflare oder Google als DNS in der Fritzbox einzustellen. Ich weiß, dass es nicht "sauber" ist, aber für meinen use-case spielt der potenzielle "attack vector" überhaupt keine Rolle. Außer einen eigenen lokalen DNS-Server einzurichten, sehe ich sonst keine andere Möglichkeit, oder?
 
Außer einen eigenen lokalen DNS-Server einzurichten, sehe ich sonst keine andere Möglichkeit, oder?
Korrekt, das wäre auch die richtige und saubere Lösung. Wenn Du doch schon einen Reverse-Proxy betreibst, dann ist ein kleiner interner DNS-Server doch ein Klacks. Das kann ja sogar der Reverse Proxy noch mitmachen, der wird sich vermutlich eh schon zu Tode langweilen.
 
Wenn Du doch schon einen Reverse-Proxy betreibst, dann ist ein kleiner interner DNS-Server doch ein Klacks.
Keine Frage. Ein Grund warum ich das lieber über die Fritzbox machen wollte ist, dass ich "Infrastruktur" (NAT/Firewall/DHCP/DNS) und "Dienste" (NAS, HomeAssistant usw.) physisch getrennt haben will. Die Dienste (inkl. Reverse Proxy) sind mittlerweile alle in einen Proxmox-Rechner konsolidiert, und das Netzwerk/Internet/DNS sollte unabhängig davon laufen (der Server ist wesentlich öfter außer Betrieb oder am neustarten als die Fritzbox).
 
Und da hast Du nicht eh schon irgendwas in Richtung DNS laufen? Kannste ja auch machen und musst ja trotzdem nicht auf die Fritz!Box verzichten. Musst halt nur eine Abzweigung schaffen (conditional forwarding/bedingte Weiterleitung). Du brauchst einen Resolver (zwecks Anweisungen und Client-Abfragen) und einen Nameserver (wo die gewünschte Zone liegt). Alternativ nimmst Du einen der weit verbreiteten Cache-manipulierenden Resolver. Das Ding kannst Du als DNS für Clients nutzen und zusätzlich auch noch Einträge erstellen, welche dann zwar nicht "ordnungsgemäß" von einem Nameserver abgewickelt werden, aber der Resolver nimmt dann einfach die manipulierten Antworten aus dem Cache.

Eine Option wäre da z.B. unbound. Alternativ nimmst so ein Werbeblock-Ding (Pi-Hole, Adguard, etc.), ich "meine" die können sowas auch. Bzgl. der oben erwähnten Abzweigung - das sollten die auch alle können - kannst Du zusätzlich noch bzgl. der Domain fritz.box auf die IP Deiner Fritz!Box verweisen, damit diese Dinge auch aufgelöst werden können (sofern daran Bedarf besteht).
 

Letzte Anleitungen

Statistik des Forums

Themen
7.573
Beiträge
73.978
Mitglieder
8.142
Neuestes Mitglied
Hifly
Zurück
Oben