HansDetflefAndi schrieb:
Offenbar habe ich ein falsches Verständnis vom DNS. Vereinfacht erklärt habe ich es mir wie ein Sieb vorgestellt. Grober Filter im Browser, mittlerer des System und ein Feinsieb am Router. Schichten.
Es geht in die Richtung, ja. DNS ist ein hierarchisches System und eine Domain ist ebenso aufgebaut. Wenn bei .de von einer
TopLevelDomain (TLD) die Rede ist, kann man sich das wortwörtlich so vorstellen, sie steht ganz oben. computerbase wiederum ist eine
SecondLevelDomain und www eine
SubDomain. Der für die TLD .de zuständige Nameserver kennt alle Nameserver, die für dessen SLD zuständig sind, und eben diese Nameserver kennen die jeweiligen Subdomains. Theoretisch müsste man stets den .de Nameserver fragen wer computerbase.de verwaltet und diesen Nameserver anschließend nach der IP zu
www.computerbase.de fragen.
Die Abfrage von DNS erfolgt aber etwas anders, weil vor der oben erwähnten Hierarchie eine weitere Ebene vorgelagert wird, der DNS im Router, beim Provider bzw. public DNS wie zB 8.8.8.8 (google). Ein PC bekommt via DHCP vom Internetrouter einen DNS zugewiesen, in der Regel die IP des Routers selbst. Der PC fragt also stets den Router nach DNS. Der Router wiederum bekommt seinen DNS vom Provider zugewiesen, den Provider-DNS. Nachdem der PC den Router nach DNS gefragt hat, fragt dieser also beim Provider nach DNS. Erst ab dem Provider geht es anschließend in Richtung der oben erwähnten TLD/SLD Hierarchie.
Ein DNS-Query zu "
www.computerbase.de" liefe also in der Theorie so ab:
PC --> Router --> Provider --> de-NS --> computerbase.de-NS => IP @
www.computerbase.de
An dieser Stelle kommt aber noch die Time-To-Live (kurz: TTL) einer Domain ins Spiel. Die TTL ist die individuelle Lebensdauer, die ein DNS-Eintrag gültig ist. Jeder DNS speichert seine Ergebnisse zwischen, im DNS-Cache. Hat er zu einem DNS-Query bereits einen gültigen Eintrag in seinem Cache, antwortet er direkt und ohne Weiterleitung nach oben. So minimiert man die Last auf den TLD-Nameservern, weil sie eben nicht mehr bei jedem einzelnen Aufruf von
www.computerbase.de behelligt werden, sondern nur dann, wenn die TTL von
www.computerbase.de abgelaufen ist. Als Kunde eines großen Providers wäre also mutmaßlich beim Provider-DNS schon Schluss, wenn man
www.computerbase.de ansurft, weil irgendein anderer Kunde desselben Providers gerade in diesem Moment ebenfalls auf
www.computerbase.de unterwegs ist und der Provider-DNS schon die IP im Cache hat.
HansDetflefAndi schrieb:
Wenn etwa in Windows ein alternativer DNS-Server hinterlegt ist, ignoriert das System den Router-seitig definierten DNS-Anbieter und verwendet den systemeigenen. Windows misst seiner Konfiguration eine höhere Priorität bei.
Ich weiß worauf du hinauswillst, kann von so einer Konfiguration aber nur abraten. Der Prozess der Namensauflösung in einem Betriebssystem ist nochmal ne Ecke komplizierter. DNS ist ein zeitkritisches System, es ist also auf minimale Timeouts ausgelegt. Hat ein Betriebssystem mehrere DNS zur Verfügung, wird es nur in einem sehr kleinen Zeitfenster den primären DNS - sei es durch Primär/Sekundär Einstellung oder alternative Konfiguration - befragen. Dauert es auch nur einen Tick zu lange bis eine Antwort kommt, wird
parallel der sekundäre DNS befragt und die erste Antwort gewinnt - egal von wem sie dann kommt.
Möchte man im Netzwerk insgesamt nicht mehr den Provider-DNS nutzen, weil dieser ja im Router eingestellt ist, ändert man den Upstream-DNS des Routers und trägt dort eben statt des Provider-DNS (kommt automatisch) den DNS von cloudflare, google, Quad9 - oder was auch immer man verwenden möchte - ein. So bleiben alle Clients auf Standardeinstellung und fragen den Router und dieser fragt dann zB Quad9. Gerätespezifische Einstellungen sind somit überflüssig.
Vermeiden sollte man es auch, cloudflare und Co im DHCP-Server als DNS zu hinterlegen, weil damit Probleme mit lokalen Namen wie "MeinNAS" vorprogrammiert sind - denn Quad9 interessiert sich nicht für den Namen deines NAS....
Lokale DNS-Server wie zB pihole stellt man ebenfalls als Upstream-DNS im Router ein und so werden alle Geräte gleichermaßen durch pihole, o.ä. gefiltert.
Aber: Eine Anwendung auf einem Gerät kann jederzeit auch
direkte DNS-Queries stellen. Das wird beispielsweise genutzt, wenn der Browser auf "Safe Browsing" oder dergleichen eingestellt ist. Dann fragt er nicht mehr den im System eingestellten DNS, sondern einen externen DNS und dies zudem über https verschlüsselt via DoH (DNS-over-Https). Das geschieht ohne Zutun des Betriebssystems und des Routers, hebelt also etwaige Filter-DNS ebenfalls aus.
HansDetflefAndi schrieb:
Lasse mich ja gern von Bing GPT beraten zu Themen die mir fremd sind.
KIs sind eine tolle Sache, aber nicht selten haben sie auch einfach nur gefährliches Halbwissen. Eine KI vereinfacht ausgedrückt anhand von Häufigkeit in ihren Quellen welche Antwort die richtige ist. Füttert man eine KI mit allen Webseiten dieser Erde, würde sie mit einer gewissen Wahrscheinlichkeit auch behaupten, dass der Mensch niemals auf dem Mond war, Elvis noch lebt und Bill Gates kleine Kinder isst - warum? Weil so und so viele Quellen im www das behaupten. KIs klingen häufig schlau, sind es aber nicht unbedingt - so wie bestimmte Benutzer hier im Forum auch, meine Person eingeschlossen. Obige Erklärungen können beliebig fehlerhaft sein und irgendjemand wird vermutlich auch in wenigen Minuten seinen Finger drauflegen
So, ich habe fertig. Sorry für den langen Beitrag, aber DNS ist nun mal "vielschichtig", wenn mir das Wortspiel erlaubt ist.