Domain-Name-System
Telefonbücher

IP-Adressen sind wie Telefonnummern, man kann sie sich nur schwer merken. Für Telefonnummern gibt es deshalb Verzeichnisse, in welchen man die Nummer einer bestimmten Person nachschauen kann (entweder das gute alte Telefonbuch oder das modernere 👉 tel.search.ch). Man muss nur den Namen der Person und vielleicht noch die Wohnadresse kennen.
Domain Name
Auch für das Internet gibt es solche Verzeichnisse. Wenn man den Namen einer bestimmten Webseite kennt, kann man im Verzeichnis die IP-Adresse des Servers nachschauen, der diese Seite im Internet anbietet.
Solche Namen sind zum Beispiel
Diese Namen werden als Domain-Names bezeichnet. Das Verzeichnis, wo sie drinstehen, heisst Domain-Name-System, kurz DNS.
Kernidee
Namen kann man sich viel besser merken als Zahlen. Deshalb sind Webseiten im Internet mit einem Domain-Namen versehen. Im Verzeichnis der Domain-Namen, dem Domain-Name-System, kann man nachschauen, welches die IP-Adresse des Servers ist, der diese Seite anbietet.
Funktionsweise
Es gibt auf der Welt bald 2 Milliarden1 Webseiten, verteilt auf ca. 200 Millionen Server. Jeder Server beherbergt also durchschnittlich 10 Webseiten. Für jeden dieser Server braucht es eine öffentliche IP-Adresse, damit der Server im Internet erreichbar ist. Wenn man die IP-Adresse des Servers kennt, könnte man theoretisch versuchen im Browser statt des Domain-Namens einer Website direkt die IP-Adresse des Servers einzugeben, also statt 👉 www.instgram.com die IP-Adresse 157.240.17.174.
Im obigen Beispiel wird behauptet, dass Sie die IP-Adresse von Instagram direkt in den Browser eintippen können. In der Praxis funktioniert das heutzutage aber nicht mehr, weil moderne Webseiten https
als Protokoll verwenden. Bei https
wird von Ihrem Browser mittels Zertifikat sichergestellt, dass die Adresse auf den korrekten Domain-Namen lautet. Dadurch wird verhindert, dass Sie auf eine falsche Seite umgeleitet werden, und dann unwissentlich z.B. eine Geldtransaktion vornehmen. Das führt aber dazu, dass das Zertifikat bei IP-Adressen nicht gültig ist.
Eine zu Demonstrationszwecken veröffentlichte Seite ohne https ist 👉 login.gbsl.website. Diese ist auch direkt über den entsprechenden Server 👉 188.34.157.212 zu finden.
Wie schon in der Einleitung erwähnt, wird das niemand tun, weil man sich diese IP-Adresse nicht merken kann und sie mit der Zeit auch ändern könnte (z.B. wenn die Website auf einen anderen Server gezügelt wird). Abgesehen davon würd es auch nicht ausreichen, nur die IP-Adresse anzugeben, weil ja eben mehrere Websites an einer bestimmten Adresse «zuhause» sein können – der Port müsste ebenfalls bekannt sein.
Ein Port spezifiziert, welche Applikation auf einem Server die Anfrage behandeln soll.
Auf dem Server 👉 188.34.157.212 sind mehrere Websites, und mit dem richtigen Port kann ausgewählt werden, welche man möchte:
- Port 80*
- 👉 188.34.157.212:80 → 👉 login.gbsl.website
- Port 8080
- 👉 188.34.157.212:8080 → 👉 hacksql.gbsl.website
Nun wird deutlich, dass es schwierig würde, sich auch noch alle Ports zu merken...
* Port 80 ist der Standard-Port für Websites mit dem http Protokoll und kann deshalb auch weggelassen werden
Die Frage ist nun aber: Wie kann man 2 Milliarden Domain-Namen in einem Verzeichnis verwalten? Würde man dies in Form eines Buches versuchen, so ergäbe das ein Buch mit ca. 4 Millionen Seiten (500 Adresseinträge pro Seite). Hinzu kommt, dass diese Adressen laufend angepasst werden müssten. Neue Adressen kommen hinzu, andere ändern oder verschwinden. Ganz zu schweigen von der schieren Unmöglichkeit, in einem solchen Buch eine gesuchte Adresse zu finden.
In elektronischer Form ist dieses Problem nicht so gross. 2 Milliarden Adressen ergeben eine Datenmenge von ca. 2 Terrabyte, wenn man grosszügig 1 KB (1000 Zeichen) pro Adresse annimmt. Eine Harddisk mit so viel Platz kriegt man für einige zehn Franken. Allerdings bleibt das Problem mit den dauernden Änderungen. Eine zentrale Stelle, welche dieses Verzeichnis führen müsste, wäre wohl schnell überfordert. Zudem bestünde auch ein grosses Risiko, dass ein Ausfall dieser zentralen Stelle das ganze Internet lahmlegen könnte. Schliesslich müsste ein solches Verzeichnis auch auf einem sehr, sehr leistungsfähigen Server betrieben werden, denn bei ca. 5 Milliarden Internetnutzern weltweit, die dauernd irgendwelche IP-Adressen brauchen, ist mit einer enormen Flut von Anfragen zu rechnen.
Aus diesen Gründen haben die Erfinder des Domain-Name-Systems einen anderen Weg eingeschlagen: Das Verzeichnis ist
- erstens hierarchisch gegliedert und
- zweitens auf viele DNS-Server weltweit verteilt, wobei jeder Server nur die Adressen in seiner Zone kennt und für alle anderen Adressen auf weitere DNS-Server verweist.
Untenstehendes Bild zeigt diese Hierarchie. Auf der obersten Ebene befinden sich die sogenannten Top-Level-Domains (TLD), z.B. ch, de, org oder com. Diese sind unter einer namenlosen Root-Domain zusammengefasst (Punkt im obersten Kästchen auf dem Bild). Unterhalb einer TLD können dann beliebig viele Subdomains angehängt werden. Liest man nun von unten beginnend, die Namen der Subdomains auf einem Pfad bis zur Root-Domain, so entsteht ein vollständiger Domain-Name, z.B. en.wikipedia.org.

Im Bild sind drei DNS-Server mit ihrer jeweiligen Zone (grau) eingezeichnet. Jeder DNS-Server verwaltet den Teil der Adressinformationen, der zu seiner Zone gehört. Die IP-Adresse zum Domain-Namen en.wikipedia.org, also 91.198.174.192, kennt dabei nur der unterste DNS-Server, denn er ist für die Zone, in welche dieser Domain-Name schliesslich gehört, zuständig.
Wird einer der übergeordneten DNS-Server nach dieser IP-Adresse gefragt, so verweist er als Antwort nur auf den nächsttieferen DNS-Server, mit dem Hinweis, man solle dort weiterfragen. Das geht dann so weiter, bis der Frager beim untersten DNS-Server angelangt ist und die IP-Adresse als Antwort erhält.
Man kann diese Situation mit jemandem vergleichen, der sich in einer fremden Stadt über mehrere Stationen zu seinem Hotel durchfragt.
Um im DNS einen Eintrag nachzuschlagen (also für eine Domain oder Subdomain die entsprechende IP herauszufinden), können Sie in der Kommandozeile folgenden Befehl eingeben:
nslookup gbsl.ch
Die Ausgabe dieses Befehls sieht ungefähr so aus:
Server: 100.100.100.100
Address: 100.100.100.100#53
Non-authoritative answer:
Name: gbsl.ch
Address: 213.144.128.144
Unter Non-authoritative answer
finden wir die Adresse, die wir suchen. Im obigen Beispiel lautet diese also 213.144.128.144
Finden Sie die IP-Adresse für folgende Domains und Subdomains heraus. Falls mehrere IPs angegeben werden, wählen Sie eine davon aus.
Wer verwaltet Domain-Namen?
Die hierarchische Gliederung des Domain-Name-Systems erlaubt es, die Verwaltung zu dezentralisieren. So gibt es für jede Top-Level-Domain eine Organisation, welche die Namen der darunter angesiedelten Subdomains verwaltet. Für die TLD der Schweiz (ch) und Liechtenstein (li) ist die Stiftung 👉 SWITCH zuständig.
Die SWITCH betreibt unter dem Link 👉 https://www.nic.ch/de/ einen Dienst zur Überprüfung, ob eine bestimmte Subdomain noch verfügbar ist. Das Registrieren einer Subdomain delegiert die SWITCH an sogenannte Registrare, also an Unternehmen die Domain-Namen anbieten und verkaufen. Bekannte (und günstige) Registrare sind:
Jährlich muss für eine .ch Domain zwischen 5 und 20 Franken gerechnet werden.
Es gibt Websites, über welche man herausfinden kann, von wem ein bestimmter Domain-Name registriert wurde (Registrar) und wem dieser Name gehört (Registrant). Drei davon sind:
- 👉 https://www.hostpoint.ch/domains/whois.html (TLDs ch, li, …)
- 👉 https://www.whois.com/whois/ (TLDs com, org, edu, website, …)
- 👉 http://whois.nic.swiss/ (TLD swiss)
Finden Sie für die folgenden Domains heraus, bei welchem Registrar sie registriert sind:
gbsl.website
gbsl.ch
silasberger.ch
Halten Sie Ihre Ergebnisse hier fest:
Footnotes
-
Quelle: 👉 internetlivestats ↩