WikiDer > Domainnamensystem

Domain Name System

Es Domain-Name-System (DNS) ist das System und Netzwerkprotokoll das auf der Internet verwendet, um Namen von Computern auf numerische Adressen zu übertragen (IP-Adressen) und umgekehrt. Obwohl dies "Übersetzen" genannt wird, ist es nichts anderes als das Nachschlagen von Namen in Tabellen, denen Zahlen zugeordnet sind.

DNS ist ein Client-Server-System: ein Anforderer (Klient) verwendet das DNS-Protokoll, um mit einem Provider zu kommunizieren (DNSServer) einen Namen oder eine Adresse anfordern, an die der Server eine Antwort zurücksendet. Das Nachschlagen einer Nummer anhand eines Namens wird zu vorwärts schauen erwähnt; einen Namen anhand einer Zahl nachschlagen Rückwärtssuche.

Die Benennung ist hierarchisch: Namen enthalten Punkte und Organisationseinheiten entsprechen Teilen des Namens. Eine solche Einheit wird als 'Domäne' und ein Name als 'Domänenname' bezeichnet. Die niederländische Wikipedia findet sich beispielsweise unter dem Domänennamen de.wikipedia.org, die (zum Zeitpunkt des Schreibens) der IP-Adresse entspricht 91.198.174.192. Dieser Name ist Teil der Domain wikipedia.org, deren Domainnamen von der Wikipedia-Organisation kontrolliert werden.

DNS wird auch in der SMTPProtokoll an die Mailserver für eine Domäne die Computer, die die Email erhalten und an die entsprechende Organisation adressiert.

Außerdem gibt es ein Protokoll, das Absenderrichtlinien-Framework (SPF), die verwendet werden kann, um einen E-Mail-Versandcomputer über DNS zu suchen oder der laut seiner Organisation dazu berechtigt ist. Dies ist eines der Werkzeuge, die zur Bekämpfung der globalen Spam.

Geschichte

Jeder mit dem Internet verbundene Computer muss über eine IP-Adresse verfügen, um aus der Ferne erreichbar zu sein; so ein Computer wird ein Gastgeber benannt, weil es als Host für den Remote-Benutzer fungiert. Da sich solche Nummern für die Leute schwer zu merken sind, wurde außerdem jedem Computer ein Name zugewiesen, und es wurde in die Software zur Herstellung von Internetverbindungen eingebaut, dass solche Namen durch Nachschlagen ihrer Nummer in einer Tabelle verwendet werden konnten.

Diese Tabelle war ursprünglich eine Datei, /etc/hosts (manchmal hosts.txt genannt), die auf jedem am Internetverkehr beteiligten Computer vorhanden sein musste.

Wie die Anzahl und Größe der teilnehmenden Vernetzung Mit zunehmendem Wachstum wurde es unmöglich, diese Datei auf jedem teilnehmenden Computer auf dem neuesten Stand zu halten, deshalb wurde das DNS-Protokoll so konzipiert, dass diese Informationen über das Internet selbst angefordert werden konnten. Daher kann eine Organisation die Zuweisung von Nummern zu Namen jederzeit anpassen, ohne dass explizite Maßnahmen erforderlich sind, um diese Änderung bei anderen umzusetzen.

Alle Software, die Internetverbindungen verwendet, unterstützt DNS, aber immer noch die Gastgeber-file Manchmal wird diese letzte Datei immer noch verwendet, um zum Beispiel lokalen Computern einen einfachen Namen zu geben oder das DNS-System für einen bestimmten Host vorübergehend zu ignorieren - manchmal nützlich, wenn Sie einen neuen testen Webseite wer hat jetzt einen anderen URL Eine zweite Anwendung soll eine Liste von als unerwünscht eingestuften Domänennamen enthalten, die in der Hosts-Datei einen Verweis auf eine andere Adresse als einen DNS-Server aufweisen, beispielsweise auf 127.0.0.1. Auch Anti-Missbrauchs-Produkte wie Spybot Search & Destroy machen sich dies zunutze.

Grundtechnik

DNS in praktischen Implementierungen besteht aus drei Teilen:

  • Das Stub-Resolver
  • Das Caching/rekursiver Resolver (ebenfalls Rekursor erwähnt)
  • Das autoritativer Nameserver

Das Nachschlagen von Daten mithilfe von DNS ist im Allgemeinen a Nachschlagen erwähnt. Software, wie z Webbrowser, wer nachschauen möchte, frage den Stub-Resolver. Dies ist eine relativ einfache Software, die je nach Konfiguration die Frage an a . stellen kann Rekursor oder kann zuerst in einer Datei nachschauen (wie z Unix-Derivate bekannt /etc/hosts).

Das Stub-Resolver stellt ein DNS-Paket zusammen und sendet es an die Rekursor. Oft die Internet-Provider einen Rekursor und wird verwendet, aber auch Netzwerke richten regelmäßig einen internen Rekursor ein. Der Rekursor ist fortgeschrittener als der Stub-Resolver und beginnt zunächst mit der Abfrage des Fragen zu einer DNS-Root-Server. Dieser kann dann auf andere Server verweisen, von wo aus er auf andere Server umgeleitet werden kann usw., bis schließlich ein Server erreicht wird, der Antworten weiß oder weiß, dass die Suche nicht möglich ist. Letzteres kann der Fall sein, wenn der Name nicht existiert oder die Server nicht antworten. Der Prozess des Durchlaufens verschiedener autoritativer Server wird als Rekursion bezeichnet.

Die Domänensuche beginnt auf der obersten Ebene (Wurzel benannt) und dann wird die Suche immer spezifischer. Bei der Suche nach einer Domain wird sofort nach dem DNS-Rootserver gefragt, z.B. de.wikipedia.org. Es gibt keinen Zwischenschritt, wo nur zu org ich fragte. Immerhin ist es theoretisch möglich, dass der Rootserver selbst schon die Antwort darauf hat has de.wikipedia.org kennt. Root-Server kennen beispielsweise die Antwort auf a.root-servers.net. In der Regel verweist der DNS-Rootserver jedoch auf die Nameserver für org. Dies wäre im Fall von de.wikipedia.org dann beziehen Sie sich auf die Nameserver für wikipedia.org wer weiß dann die antwort.

Vereinfachte Darstellung der Rekursion beim Auflösen de.wikipedia.org

Diese Server, denen der Recursor Fragen stellen kann, sind die autoritative Nameserver. Diese sind auch relativ dumm und geben einfache Antworten. Diese Antworten sind oft in Dateien oder in a Datenbank Gerettet. Ein autoritativer Nameserver kann eine Antwort liefern, die entweder ein Verweis auf einen anderen Server oder eine direkte Antwort auf die Frage sein kann.

Sowohl der Rekursor als auch der autoritative Nameserver werden oft als DNS-Server bezeichnet. Es ist möglich, diese beiden Funktionen in einem Programm zu kombinieren. Dies geschieht zum Beispiel in BINDEN, einem der bekanntesten und am weitesten verbreiteten DNS-Server, Es gibt auch Programme, die nur eine der beiden Funktionen ausführen. NSD ist ein Beispiel für einen rein autoritativen Nameserver. Bei Programmen, die beide Funktionen kombinieren, ist es oft möglich, eine davon zu deaktivieren oder nur für das interne Netzwerk zu öffnen.

Caching

Um zu verhindern, dass Rekursoren sehr regelmäßig redundante Abfragen durchführen (DNS-Daten ändern sich relativ wenig), sollte ein Rekursor Zwischenspeichern Dies bedeutet, dass eine einmal empfangene Antwort für einige Zeit gespeichert wird. Der Administrator kann diese Zeit pro Datensatz anpassen und ist Zeit zu leben (TTL). In der Regel liegt diese zwischen wenigen Minuten und einigen Tagen.

Redundanz

In der Regel gibt es mehrere autoritative Server für dieselben Daten. Dies dient dazu, die möglichen Folgen eines Serverausfalls zu begrenzen.

Grundsätzlich sollte ein Rekursor alle anderen ausprobieren, wenn er feststellt, dass ein autoritativer Server nicht funktioniert. Irgendwann wird einer gefunden, der funktioniert, oder der Rekursor kommt zu dem Schluss, dass es nicht möglich ist, den Namen zu übersetzen.

DNSSEC

Das DNS-Protokoll ist anfällig für Missbrauch. Unter anderem durch sogenannte „DNS-Cache-Verschmutzung“-Angriffe (wie den „Kaminsky-Angriff“) wurde das DNS ausgetrickst. Infolgedessen können ahnungslose Benutzer beispielsweise auf eine gefälschte, betrügerische Website geleitet werden. Als Reaktion auf diese Bedrohung wurde eine Erweiterung des DNS-Protokolls entwickelt: die „Domain Name System Security Extensions“, kurz DNSSEC. Mit diesem Internetstandard können DNS-Antworten kryptographisch gesichert werden, sodass sie nicht mehr gefälscht werden können. Dies geschieht auf Basis sogenannter digitaler Signaturen, die mit einem privaten Schlüssel erzeugt werden und mit einem öffentlichen Schlüssel validiert werden können. Für DNS-Antworten wird die Integrität und Authentizität garantiert (auch wenn dies eine negative oder leere Antwort ist). Es ist jedoch ein Irrglaube anzunehmen, dass DNSSEC auch den DNS-Datenverkehr vor dem Abhören schützt.

Ressourcendatensätze

Daten im DNS werden in a . gespeichert Ressourceneintrag. Ein Resource Record enthält einen Typ, eine TTL, einen Namen und Daten. Bei den Daten kann es sich beispielsweise um eine IP-Adresse oder einen anderen Namen handeln. Dies hängt vom Typ des Ressourceneintrags ab.

Gängige Typen sind:

  • Geschlechtskrankheiten Start-Of-Authority, mit Einstellungen für die (Sub-)Domain, wie TTL (Time-To-Live), Seriennummer, Primärserver, Verantwortlicher
  • ein zur Bestimmung der IPv4-Adresse mit Namen
  • AAAA zur Bestimmung der IPv6-Adresse mit Namen
  • CNAME Kanonischer Name zum Konfigurieren des Alias ​​eines A- oder AAAA-Eintrags
  • PTR zur Bestimmung eines Namens für eine IPv4- oder IPv6-Adresse (siehe weiter unter Reverse-Lookups)
  • MX zur Bestimmung der Mailserver für eine Domain, bei der jedem Mailserver eine eigene Priorität zugewiesen wird
  • NS zur Angabe, welche Nameserver die autoritativen Nameserver sind (wird auch verwendet, um auf andere Nameserver zu verweisen)
  • TXT wird zunächst für jeden vom Benutzer gewünschten Kommentar verwendet. Jetzt teilweise im Einsatz durch die SPF Anti-Spam-Initiative.
  • SRV ein relativ neuer Datensatz zur Bezeichnung von Dienstleistungen.
  • DKIM ein relativ neuer Datensatz, der zur Überprüfung der E-Mail-Authentizität verwendet wird. Große Parteien wie Gmail wenden diese jetzt 'DomainKeys Identifizierte E-Mail (DKIM)' Verwendung.

Reverse-Lookups

Um herauszufinden, welcher Name zu einer IP-Adresse gehört, können Reverse- oder „Reverse“-Lookups verwendet werden.Um den Namen einer IPv4- oder IPv6-Adresse zu ermitteln, ist DNS auf den ersten Blick komplex aufgebaut. Um einen Namen für eine IPv4-Adresse zu ermitteln, muss der richtige Name abgefragt werden, der unter in-addr.arpa.

Beispiel: 1.2.3.4 wird übersetzt in 4.3.2.1.in-adr.arpa. Und 52.61.63.53 wird übersetzt in 53.63.61.52.in-addr.arpa.Für diesen Namen (dieser Name unterscheidet sich aus DNS-Sicht nicht wesentlich von einem Namen wie wikipedia.org) wird der PTR-Datensatz angefordert. Daraus ergibt sich dann der mit der IP-Adresse verbundene Name.

Für IPv6 ist dies ähnlich, aber viel länger und die Datensätze sind in ip6.arpa. Zum Beispiel die Umkehrung von 2001:200:0:8000::42 kann durch Abfrage des PTR-Datensatzes nach 2.4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.0.0.0.0.0.0.2.0.1.0.0.2.ip6.arpa.

Nameserver-Tools

Um einen Nameserver effektiv zu verwalten, müssen mehrere Diagnose Werkzeuge verfügbar. Die sogenannte BINDENWerkzeuge sind die bekanntesten. Dazu gehört zum Beispiel nslookup, Gastgeber und graben.

Siehe auch

Externe Links

Einzel-DNSRFCs (es gibt viele andere mit Optimierungen und Ergänzungen):

  • RFC1034: Domainnamen - Konzepte und Einrichtungen
  • RFC1035: Domainnamen - Implementierung und Spezifikation
  • RFC1912: Häufige DNS-Betriebs- und Konfigurationsfehler
  • RFC2182: Auswahl und Betrieb von sekundären DNS-Servern
  • RFC4033: Einführung und Anforderungen zur DNS-Sicherheit
  • RFC4044: Ressourceneinträge für die DNS-Sicherheitserweiterungen

Andere Links:

Siehe die Kategorie Domainnamensystem von Wikimedia Commons für Mediendateien zu diesem Thema.