Das DNS (Domain Name System) ist eines der wichtigsten Dienste im Internet. Seine Hauptaufgabe ist die Beantwortung von Anfragen zur Namensauflösung.
Um auch Computer-Neulingen und Laien eine Möglichkeit zu geben, dieses komplexe Thema zu verstehen, vergleichen wir in nachfolgenden Artikel, das Internet mit einem “Telefonsystem”:
Wenn Sie eine WebSeite auf Ihrem Computer anzeigen lassen wollen, dann muss Ihr Computer mit dem Server “sprechen” auf dem die abgerufene Seite zuhause ist. Dazu braucht ihr Computer die “Telefonnummer” (IP-Adresse) des Servers, da er erst mit ihr diese Adresse anrufen kann. Ähnlich wie bei Telefonnummern, könnte man sich sich vielleicht eine handvoll IP-Adressen merken, aber es wäre sicherlich alles andere als komfortabel und viele Ecken des www blieben unentdeckt.
Um die Nummer eines neuen Gesprächspartners zu erfahren, gibt es die “Telefonauskunft”. Dort rufe ich an, gebe die Adresse meines gewünschten Partners durch, und eine freundliche Damen auf der anderen Seite der Telefonleitung teilt mir nach einem kurzen Blick in Ihr Verzeichnis seine Telefonnummer mit. Ich merke mir diese Nummer dann, oder schreibe sie in mein persönliches Telefonbuch, und brauch fortan die Auskunft nicht mehr bemühen. Es sei denn: Mein Gesprächspartner zieht um oder bekommt aus anderen Gründen eine neue Telefonnummer.
Innerhalb eines Landes funktioniert dieses System sehr gut. Auslandsnummern lassen sich so allerdings nicht ermitteln. Benötige ich einen Gesprächspartner z.B. aus den USA, so habe ich zwei Möglichkeiten:
- ich rufe die Auslandsauskunft an
- ich rufe die Auskunft direkt in dem betreffenden Land an
Im ersten Fall bediene ich mich eines Vermittlers, nämlich der in meinem Land beheimateten Auskunft, die somit auch sicher meine offzielle Landessprache spricht. Die schaut dann in den ihr zugänglichen Auslandsverzeichnissen nach. Idealerweise kann ich das Problem der “Nummernfindung” sogar vollständig delegieren, so dass letztlich die Auslandsauskunft selbst Schritt zwei übernimmt und bei der Landesauskunft meines gewünschten Gesprächspartners nachfragt.
Oder aber – Fall 2 - ich rufe direkt die Auskunft im Zielland an. Die verfügt oft über aktuellere Daten. Ausserdem reduziert sich so das Problem der “stillen Post” – denn je weniger Stellen bei der Suche beteiligt sind, desto sicherer ist es, dass ich tatsächlich die richtige Nummer erhalte. Voraussetzung für diesen Anruf ist aber, dass ich die Sprache des Ziellandes spreche.
Im DNS ist die Fragestellung die gleiche, nur sind die Teilnehmer diesmal Rechner und der Fragende ist mein Computer: Gebe ich z.b. www.cyscon.de in meinen Browser ein, fragt dieser beim Betriebssystem nach, wie denn die tatsächliche Adresse der Seite ist. Da ohne Adresse keine Verbindungsaufnahme möglich ist, unternimmt es jetzt alle möglichen Anstrengungen, um an die gewünschte IP-Adresse zu kommen. Im praktischen Leben mag man das mit dem stereotypen Beispiel “Sekretärin soll für Ihren Chef eine wichtige Telefonnummer finden” vergleichen.
Das Betriebssystem schaut nun zunächst einmal in seinem eigenen “Telefonbuch” nach, in dem alle Adressen stehen, die bisher bekannt und wahrscheinlich noch gültig sind. Findet es dort die Adresse, ist die Suche beendet. Anderenfalls wird der nächstgelegene DNS-Server bemüht.
Kennt der abgefragte DNS-Server selbst den gewünschten Rechner, teilt er das dem Betriebssystem mit und die Suche ist wieder beendet. Kennt er ihn hingegen nicht, gibt es analog zur Telefonauskunft zwei Möglichkeiten: Entweder der DNS-Server nutzt so eine Art “Auslandsauskunft”, also einen DNS-Server, der alle andere Internet-Adressen kennt oder aber zumindest weiß, wie man die raus bekommt. Oder aber, analog zum eigenen Anruf bei der ausländischen Auskunft, bemüht sich dieser selbst darum, die Adresse herauszufinden.
Da das DNS eine hierarchische Struktur, mit 13 sogenannten Root-Servern ist, ist das immer möglich. Diese Root-Server sind in der Lage, die jeweils zuständigen Server für die einzelnen Domains zu finden. Mit einem entsprechend standardisierten Verfahren ist sichergestellt, dass jeder Name innerhalb nur sehr weniger Schritte (meist nicht mehr als vier) gefunden werden kann.
Nachdem er die IP-Adresse gefunden hat, gibt er diese an das Betriebssystem weiter, welches dann umgehend dann den Browser informiert. Erst jetzt kann der Browser die Verbindung zu diesem Server aufnehmen und die gewünschte Seite anzeigen. Ab jetzt wird das DNS wird dabei übrigens überhaupt nicht mehr benutzt. DNS ist nur erforderlich, um überhaupt die IP-Adresse zu finden. Das gilt (mit gewissen Einschränkungen) übrigens auch, wenn der Browser ein paar Minuten später wieder auf die Seite zugreifen soll: Dann benutzt er weiter die ihm bereits bekannte Seite (Browser “vergessen” die Adresse aber meist, wenn das Browserfenster geschlossen wird).
Geben Sie gar die IP-Adresse von Hand ein (weil Sie die aus irgendeinem Grund zufällig wissen), so findet überhaupt keine Anfrage beim DNS statt, und der Browser verbindet Sie direkt mit dem gewünschten Server. Das erfordert allerdings eine bestimmte Konfiguration des Servers und ist heute meist nur auf großen Seiten möglich. Sie können einmal einen Selbstversuch machen: versuchen Sie http://78.35.36.94 – zum Zeitpunkt der Erstellung dieses Blogpostings war das die Adresse eines Servers des Bundesjustizministeriums.
