DNS ermöglicht Nutzern, unter Verwendung von Domain-Namen statt IP-Adressen eine Verbindung zu Websites herzustellen. Erfahren Sie, wie DNS funktioniert.
Nach Lektüre dieses Artikels können Sie Folgendes:
Ähnliche Inhalte
Cloudflare erklärt: Was ist DNS-Sicherheit?
DNS-Zone
DNS-Stammserver
Vergleich primäres und sekundäres DNS
Reverse DNS
Abonnieren Sie theNET, Cloudflares monatliche Zusammenfassung der beliebtesten Einblicke in das Internet!
Link zum Artikel kopieren
Das Domain Name System (DNS) ist das Telefonbuch des Internets. Menschen greifen über Domain-Namen wie nytimes.com oder espn.com auf Online-Informationen zu. Webbrowser verwenden IP-Adressen (Internet Protocol) zur Interaktion. Das DNS übersetzt Domain-Namen in IP-Adressen, damit Browser Internetressourcen laden können.
Jedes mit dem Internet verbundene Gerät verfügt über eine eindeutige IP-Adresse, die von anderen Geräten zur Suche nach dem Gerät verwendet wird. DNS-Server ersparen es den Anwendern, sich IP-Adressen wie 192.168.1.1 (in IPv4) oder noch komplexere neuere alphanumerische IP-Adressen wie 2400:cb00:2048:1::c629:d7a2 (in IPv6) merken zu müssen.
Zur DNS-Auflösung muss ein Hostname (z. B. www.example.com) in eine für Computer verständliche IP-Adresse (z. B. 192.168.1.1) umgewandelt werden. Jedes Gerät, das eine Internetverbindung herstellt, erhält eine IP-Adresse. Diese Adresse ist zum Auffinden des betreffenden Geräts im Internet erforderlich – so wie die Postanschrift zum Auffinden eines bestimmten Hauses dient. Wenn ein Anwender eine Webseite laden möchte, muss das, was der Anwender in den Webbrowser eingibt (example.com) in eine maschinenlesbare Adresse übersetzt werden, damit die Webseite example.com gefunden werden kann.
Um die einzelnen Schritte der DNS-Auflösung nachvollziehen zu können, müssen Sie die verschiedenen Hardwarekomponenten kennen, die eine DNS-Abfrage passieren muss. Für den Webbrowser geschieht der DNS-Lookup im Hintergrund. Abgesehen von der ursprünglichen Anfrage ist keine Interaktion vom Computer des Anwenders erforderlich.
Beide Konzepte beziehen sich auf Server (bzw. Gruppen von Servern), die integraler Bestandteil der DNS-Infrastruktur sind, jedoch unterschiedliche Rollen haben und sich an unterschiedlichen Positionen im Verlauf einer DNS-Abfrage befinden. Eine Möglichkeit, diesen Unterschied darzustellen, ist dieser Verlauf: Der rekursive Resolver steht am Anfang der DNS-Abfrage und der autoritative Nameserver am Ende.
Der rekursive Resolver ist der Computer, der auf eine rekursive Anfrage von einem Client antwortet und den DNS-Eintrag sucht. Dazu stellt er eine Reihe von Anfragen, bis er den autoritativen DNS-Nameserver für den angeforderten Eintrag erreicht (oder das Zeitlimit überschritten oder ein Fehler zurückgegeben wird, weil kein Eintrag gefunden wurde). Der rekursive DNS-Resolver muss glücklicherweise nicht immer mehrere Anfragen senden, um die für den Client erforderlichen Einträge zu finden. Caching ist ein Datenspeicherungsprozess, der zur Verringerung der Anzahl notwendiger Anfragen beiträgt, indem er den angeforderten Ressourceneintrag früher im DSN-Lookup bereitstellt.
Einfach ausgedrückt, ist ein autoritativer DNS-Server ein Server, auf dem die DNS-Ressourceneinträge tatsächlich gespeichert und verwaltet werden. Es ist der Server am Ende der Kette eines DNS-Lookups, der mit dem angeforderten Ressourceneintrag antwortet und dem Webbrowser, von dem die Anfrage stammt, schließlich ermöglicht, die benötigte IP-Adresse zu erreichen und auf eine Website oder andere Webressourcen zuzugreifen. Ein autoritativer Nameserver kann Anfragen mit seinen eigenen Daten beantworten, ohne eine andere Quelle abfragen zu müssen, da er für einige DNS-Einträge der Wahrheit letzten Schluss darstellt.
Es ist erwähnenswert, dass in Fällen, in denen eine Abfrage eine Subdomain wie foo.example.com oder blog.cloudflare.com betrifft, ein weiterer Nameserver nach dem autoritativen Nameserver der Sequenz hinzugefügt wird. Auf dem betreffenden Server wird der CNAME-Eintrag der Subdomain gespeichert.
Zwischen dem DNS-Service, den Cloudflare bereitstellt, und vielen anderen DNS-Services besteht ein wesentlicher Unterschied. Viele rekursive DNS-Resolver wie Google DNS, OpenDNS und Provider wie Comcast unterhalten Rechenzentrumsinstallationen mit rekursiven DNS-Resolvern. Diese Resolver ermöglichen durch optimierte Cluster DNS-optimierter Computersysteme schnelle und einfache Abfragen, unterscheiden sich jedoch grundlegend von den von Cloudflare gehosteten Nameservern.
Cloudflare pflegt Nameserver auf Infrastrukturebene, die für die Funktion des Internet unabdingbar sind. Ein wichtiges Beispiel ist das Servernetzwerk f-root, das teilweise von Cloudflare gehostet wird. F-root ist eine der DNS-Nameserver-Infrastrukturkomponenten auf Stammebene, die täglich für Milliarden von Internetanfragen verantwortlich sind. Unser Anycast Network versetzt uns in die einmalige Lage, große Mengen an DNS-Traffic ohne Serviceunterbrechungen verarbeiten zu können.
In den meisten Situationen geht es bei DNS um Übersetzung eines Domainnamens in die zugehörige IP-Adresse. Um diesen Prozess nachvollziehen zu können, ist es hilfreich, dem Pfad eines DNS-Lookups vom Webbrowser bis zum Ende des DNS-Lookup-Prozesses und zurück zum Webbrowser zu folgen. Sehen wir uns die einzelnen Schritte an.
Hinweis: Die Informationen zu einem DNS-Lookup werden häufig lokal im abfragenden Computer oder remote in der DNS-Infrastruktur gecacht. In der Regel umfasst ein DNS-Lookup acht Schritte. Wenn DNS-Informationen gecacht werden, werden einige Schritte im DNS-Lookup-Prozess übersprungen, sodass die Anfrage schneller beantwortet wird. Im nachfolgenden Beispiel sind alle acht Schritte dargestellt, wenn nichts gecacht wird.
Sobald die IP-Adresse für example.com mit den acht Schritten des DNS-Lookups zurückgegeben wurde, kann der Browser die Anfrage für die Webseite erstellen:
Der DNS-Resolver ist die erste Station im DNS-Lookup und für den Umgang mit dem Client, der die ursprüngliche Anfrage gesendet hat, verantwortlich. Der Resolver startet die Folge von Abfragen, die letztlich dazu führt, dass eine URL in die erforderliche IP-Adresse übersetzt wird.
Hinweis: Ein typischer ungecachter DNS-Lookup umfasst sowohl rekursive als auch iterative Abfragen.
Es ist wichtig, zwischen einer rekursiven DNS-Anfrage und einem rekursiven DNS-Resolver zu unterscheiden. Die Abfrage bezieht sich auf die Anfrage, die an einen DNS-Resolver gesendet wurde und die Beantwortung der Abfrage erfordert. Bei einem rekursiven DNS-Resolver handelt es sich um den Computer, der eine rekursive Abfrage akzeptiert und die Antwort bearbeitet, indem er die erforderlichen Anfragen erstellt.
Ein typischer DNS-Lookup beinhaltet drei Typen von Abfragen. Durch den Einsatz einer Kombination dieser Abfragen kann ein optimierter Prozess für die DNS-Auflösung zur Verringerung der benötigten Schritte führen. Im Idealfall sind gecachte Eintragsdaten vorhanden, sodass ein DNS-Nameserver eine nichtrekursive Abfrage zurückgeben kann.
Caching dient dem Zweck, Daten zeitweilig an einer Position zu speichern, um die Performance zu verbessern die Zuverlässigkeit von Datenanfragen zu erhöhen. Beim DNS-Caching werden die Daten näher am anfragenden Client gespeichert, damit die DNS-Abfrage früher beantwortet werden kann und zusätzliche Abfragen in der DNS-Lookup-Kette vermieden werden. Dadurch werden die Ladezeiten verbessert und die Bandbreiten-/CPU-Auslastung reduziert. DNS-Daten können an verschiedenen Stellen gecacht werden, wobei jeweils DNS-Einträge über einen durch TTL (Time-to-live) festgelegten Zeitraum gespeichert werden.
Moderne Webbrowser speichern standardmäßig DNS-Einträge über einen bestimmten Zeitraum. Der Zweck ist hier offensichtlich: Je näher am Webbrowser das DNS-Caching erfolgt, desto weniger Verarbeitungsschritte sind erforderlich, um den Cache zu überprüfen und die richtigen Anfragen an eine IP-Adresse zu stellen. Wenn ein DNS-Eintrag angefordert wird, wird zunächst im Browser-Cache nach dem angeforderten Eintrag gesucht.
In Chrome können Sie den Status des DNS-Caches anzeigen lassen. Rufen Sie dafür chrome://net-internals/#dns auf.
Der DNS-Resolver auf Betriebssystemebene ist die zweite und letzte lokale Station, bevor die DNS-Abfrage Ihren Computer verlässt. Der Prozess im Betriebssystem, der diese Abfrage bearbeitet, wird gemeinhin als „Stub-Resolver“ oder DNS-Client bezeichnet. Wenn ein Stub-Resolver eine Anfrage von einer Anwendung erhält, überprüft er zunächst, ob der betreffende Eintrag in seinem eigenen Cache vorhanden ist. Ist dies nicht der Fall, sendet er eine DNS-Abfrage (mit dem Flag für eine rekursive Abfrage) an einen rekursiven DNS-Resolver außerhalb des lokalen Netzwerks, der sich beim ISP (Internetprovider) befindet.
Wenn der rekursive Resolver beim ISP eine DNS-Abfrage empfängt, prüft auch er (wie in allen vorherigen Schritten), ob die angeforderte Übersetzung von Hostname in IP-Adresse bereits in seiner lokalen Speicherebene gespeichert ist.
Der rekursive Resolver verfügt auch über zusätzliche Funktionen, die vom Typ der Einträge in seinem Cache abhängen:
Erfahren Sie, worin sich Cloudflare-DNS von anderen DNS-Providern unterscheidet.