Ein Referat von Stefan Block
DNS steht für Domain Name System. DNS ist ein weltweitverteiltes Netzwerkverzeichnis. Seine grundlegende Aufgabe besteht darin, Domänennamen in IP Adressen aufzulösen.
Dieses Referat beschreibt die Grundlagen und die Technik der Namensauflösung mit Hilfe von DNS.
Inhalt:
Inhalt:
Einleitung
Struktur des DNS
Domain
Domain Name
Root Server
Namensserver + Abfrage
DNS Resolver
Namensauflösung
Ressource Records
DNS-Nachrichten
Abblidungs Verzeichniss
Glossar
Quellen:
Einleitung
In einem Computernetzwerk werden IP Adressen vergeben um Netzwerkkomponenten eindeutig identifizieren zu können. Da IP Adressen aber numerischer Natur sind, fällt es schwer sich diese zu merken, bzw. welche Komponente sich hinter einer IP Adresse verbirgt. Es ist deshalb von Vorteil natürliche Namen zu vergeben, da diese Namen leichter zu Merken und somit benutzerfreundlicher als IP Adressen sind. IP Adressen werden aber zur Kommunikation in einem IP- Netzwerk zwingend benötigt. Deshalb braucht man ein Werkzeug, das IP Adressen in sogenannte Domänennamen auflöst. Das Werkzeug welches diesen Dienst erfüllt ist DNS. DNS ist in den RCF Bestimmungen RFC 1034 und RFC 1035 beschrieben.
DNS wird im Internet und in privaten Windows IP Netzwerken eingesetzt.
Namensauflösung gibt es nicht nur in TCP/IP- Netzwerken, sondern auch in NetBIOS- oder IPX/SPX-Netzen.
Neben DNS existieren noch eine Menge anderer Möglichkeiten um Ressourcen im Netzwerk ausfindig zu machen.
Doch DNS kann noch einiges mehr.
Mit Hilfe des DNS lassen sich auch die Dienste identifizieren, die mit einer Domain verknüpft sind. So liefert es z. B. Informationen darüber, welcher Rechner für eine bestimmte Domain der Mail-Server ist, welche Nameserver für eine Domain zuständig sind und vieles mehr.
Struktur des DNS
Das DNS ist ein hierarchisches System. Es kennt keine Zentrale Datenbank. Die Informationen werden auf mehrere Tausend Server verteilt.
Abbildung 1: Struktur des DNS.
Die DNS Datenbank ist in mehrere Zonen aufgeteilt, die wiederum über eine baumförmige Struktur verknüpft sind. Die das Root Verzeichnis ist sozusagen die Wurzel von DNS.
Die Root Domain wird durch einen . dargestellt.
Unter ihr befinden sich die Top Level Domains (TLD). Die Top Level Domains werden in zwei Kategorien eingeteilt:
Generic Domains
Country Domains
Die 7 generischen Top Level Domains
Domain Beschreibung
.com Kommerzielle Unternehmen,z.B. /www.microsoft.com
.edu Bildungseinrichtungen wie z.B. Universitäten
.gov Staatliche Einrichtungen wie z.B. whitehouse.gov/
.mil Militärische Einrichtungen
.org Einrichtungen, die nicht kommerzielle Ziele verfolgen
.net Netzwerkeinrichtungen
.int Internationale Organisationen
Abbildung 2: Tabelle der Toplevel Domains
Die vollständige Bezeichnung für Country Domains ist country code Top Level Domains (kurz ccTLDs). ccTLDs
sind z.B. .de für Deutschland, .uk für United Kingdom, ua. . Es gibt mehr als 240 ccTLDs.
Schon gewusst?
Die .de Domain ist die größte ccTLD und neben .com die zweitgrößte Domain weltweit, gemessen an der Anzahl der unter ihr eingetragenen Domains.
Abbildung 3: Struktur DNS (Quelle: denic)
Domain
Öfters wurde bereits der Begriff Domain verwendet. Dieser Abschnitt erklärt, was eine Internet Domäne ist.
Eine Domain ist ein logischer Verbund von Rechnern. Sie kann in weitere Subdomains aufteilen.
Das DNS beruht auf den Internet-Domänen. Eine Domäne ist die Verwaltungseinheit im Internet. Sie stellt eine Möglichkeit dar, Rechner in Gruppen zusammenzufassen um eine hierarische Struktur zu erzeugen.
Domain Name
Ein Domain Name bezeichnet man korrekt als Absolute Domain Name oder besser als Fully Qualified Domain Name (FQND).
Ein Domain Name besteht aus mindestens drei Teilen, in denen sich die hierarische Struktur wiederfindet.
Diese drei Teile sind die
Top Level Domäne
Second Level Domäne
Subdomänen
Die einzelnen Hierarchieebenen werden durch einen Punkt getrennt. Die Root Domain wird als einziger Punkt als abschließende Stelle geschrieben. Jedoch wird dieser Meist weggelassen.
Beispiel:
Google.de.
Abbildung 4: Domain Name
Für die Verteilung der Domain Namen sind benannte Firmen und Institutionen verantwortlich. Geographische Sub-Domains wie *.de werden meist von den Ländern selbst vergeben (z.B. ist in Deutschland für .de Domains denic verantwortlich).
Nicht generische Top Level Domains sind fest in amerikanischen Händen und nicht alle stehen jedem zur Verfügung, so kann z.B. keine deutsche Universität eine .edu Domain anmelden.
Root Server
Root Server stellen die oberste Ebene in der DNS Struktur dar. Weltweit gibt es 13 Root Server. 10 von ihnen stehen in den USA, 1 in Japan 1 in Schweden und einer in England.
Die Primary Name Server der Top Level Domains müssen alle IP- Adressen aller Root-Server gespeichert haben.
Namensserver + Abfrage
Wie beschrieben Stellen die Top Level Domains den Teil der zweiten Hierarchieebenen da. Auf dieser Ebene wird DNS durch so genannte Namensserver realisiert. Namensserver können natürlich auch in der dritten Ebene des DNS sein. Namensserver sind in einer großen Anzahl im Internet verteilt. Namensserver enthalten die Mapping- Informationen der Domains, für die Sie, den Namensservice übernehmen, d.h. der Namensserver ist sozusagen ein Haupt Ast und kennt alle Äste eine Stufe unter sich, sowie die Stationen über sich.
Ein Grundgedanke des DNS ist dabei die Verteilung der Verantwortlichkeiten. Die Informationen sollten nicht alle an zentraler Stelle hinterlegt, sondern möglich dezentral gespeichert und verwaltet werden. Jeder Nameserver ist daher nur für einen Teil des Netzes, eine so genannte Zone, zuständig. Auf diesen Namenservern sind die Namen und die IP- Adressen aller Internet-Rechner (Hosts) sowie Informationen zu den dahinterstehenden Diensten der unteren Äste verzeichnet. Hier werden zu den Domain Namen die IP Adressen zugeordnet. Die Zuordnung funktioniert ähnlich wie bei den Host Dateien. Dies wird später noch genauer im Kapitel Namensauflösung beschrieben.
Wichtig ist, dass zu jeder Domain mindestens zwei Namensserver zugeordnet werden müssen.
Einer von ihnen wird als Primary-, der andere als Secondary Namenserver bezeichnet. Beide Server müssen unabhängig von einander sein, da der Secundary Name Server als Backup Server dient. Er bezieht seine Informationen vom Primary Server und übernimmt bei einem Ausfall der Primary Server dessen Aufgabe.
Beschäftigen wir uns jetzt mit der Frage, wie eine Namensserver Abfrage ablaufen kann.
Nehmen wir an, wir surfen im Internet und geben einen Domainnamen im Browser an. Unser Rechner kennt leider die IP Adresse des Domain Namens. Also muss er den Namensserver fragen. Das ist in der Regel ein Server unseres Internetproviders z.B. T-Online. Unser Rechner, genauer unser Resolver schickt nun eine Nachricht an den Namensserver und hofft auf eine Antwort. Kennt der Namensserver die IP Adresse, schickt er Sie unserem Rechner zu. Was passiert jetzt aber, wenn der Namensserver die IP Adresse nicht kennt? Er muss die Anfrage eine Hierarchieebene höher schicken. Der Server über ihm kennt dann die Domain oder schickt die Anfrage wieder eine Stufe höher, evt. Bis zu einem der 13 Root Server. Kennt ein Namensserver die Domain, leitet er die Anfrage wieder eine Hierarchieebene tiefer, bis schließlich die IP Adresse gefunden wurde. Danach nimmt die Anfrage den gleichen Weg in umgekehrter Richtung bis zu unserem Rechner zurück. Jeder Namensserver setzt einen Cache ein, um die Netzwerkbelastung so minimal wie möglich zu halten. Allerdings dürfen die Daten im Cache nicht zu alt werden, da sonst die Gefahr besteht, dass eine nicht mehr exsistierende Adresse übermittelt wird.
DNS Resolver
Wenn ein Netzwerkclient auf einen Internet Host zugreifen möchte, aber nur dessen Domain Namen kennt, muss er zunächst einen Namensserver kontaktieren. Um den Namensserver Kontaktieren zu können, benötigt der Netzwerkclient dem Resolver. Er besteht aus einer Reihe von Software Routinen, die zu jedem Programm verknüpft werden das Adressen wissen will und weis, wie man Anfragen formuliert.
Er übernimmt im Wesentlichen die folgenden drei Aufgaben:
Abbildung 5: DNS Resolver
Zuerst erzeugt er eine Abfrage und schickt sie an den Namensserver. Der Namensserver ist in der Regel der Server des Internetproviders, der die Internetverbindung bereitstellt. War die Anfrage erfolgreich, d.h. konnte die Adresse aufgelöst werden, interpretiert er die Antwort und leitet dann die Informationen an das Programm weiter, das die Informationen angefordert hat, z.B. ein Browser.
Bei Windows und Unix Systemen existieren zwei Funktionen zum Aufruf des Resolvers:
gethostbyaddr (ermittelt einen Domian Namen, wenn die Ip Adresse bekannt ist)
gehthostbyname (ermittelt die IP Adresse, wenn der DNS Name bekannt ist)
Namensauflösung
Allgemein wird die Zuordnung von Netzwerkadressen (IP Adresse) zu lesbaren Namen (DNS Name) als Namensauflösung bezeichnet.
IP- Adressen dienen nicht nur um Komponenten im Netzwerk eindeutig zu identifizieren, sondern man benötigt Sie um eine Komponente wie z.B. einen Rechner im Internet anzusprechen.
Der DNS-Name ist eine eindeutige Bezeichnung für den Rechner, bzw. eine Netzwerkkomponente. Er hat eine maximale Länge von 255 Zeichen und kann sich aus Buchstaben, Zahlen, den Unterstrich sowie den Punkt zusammensetzten.
Wie bereits festgestellt lassen sich IP Adressen schlecht merken. Es ist einfacher, einen DNS-Namen wie z.B. www.google.de in einen Browser, wie z.B. den Internet Explorer, einzutippen als 216.239.59.99. Um den Namen auflösen zu können, muss er in irgendeiner Form der IP Adresse zugeordnet sein.
Am einfachsten kann man einen solchen Namen einer IP- Adresse zuordnen, in dem man beide in einer Datei einträgt. Wird dann eine IP- Adresse zu einem Namen gesucht, sieht man einfach in dieser Datei nach.
Eine solche Datei trägt in allen Windows NT und 2000 Systemen die Bezeichnung Hosts, und befindet sich im Verzeichnis
%systemroot%\system32\drivers\etc.
Beispiel einer Hosts Datei
Abbildung 6: Hosts Datei.
Um die Datei zu öffnen, klicken Sie auf Start -> Ausführen und geben dort den oben genannten Pfad ein und bestätigen mit OK, es öffnet sich ein Fenster mit dem Verzeichnis in der sich die Datei befindet. Die Datei kann mit einem Editor wie Notepad geöffnet werden.
Im roten Kreis sieht man die Zuordnung von IP Adresse zu DNS Name.
Die Hosts liegt im Netzwerk zentral auf einem Server und wird dort gewartet, d.h. es werden nur dort neue Einträge vorgenommen. Die Clients laden dann diese Datei möglichst oft. So sind sie dann auf dem neuesten Stand.
Ein solches System funktioniert zwar, ist aber nur in Netzwerken mit bis zu wenigen tausend Rechnern zu empfehlen, das es darüber hinaus nicht wirklich praktikabel ist. Folgenden Nachteile belasten ein solches System:
Beim übertragen der Hosts Datei wird das Netzwerk unnötig belastet und der Vorgang ist zusätzlich noch umständlich.
In größeren Netzwerken wird der Server stark durch diesen Vorgang belastet.
Es existiert keine Sicherung der Datei (es steht kein Redundantes System zur Verfügung), was bei einem Ausfall des Servers einen Funktionsverlust des gesamten Netzwerkes zur Folge hat.
Deshalb hat man ein System entwickelt, dass diese Nachteile beseitigen soll. Dieses System ist das Domain Name System.
Wird bei DNS zum Beispiel FQND in einen Browser wie den Internet Explorer eingegeben, wird die IP Adresse des entsprechenden Servers durch eine DNS Abfrage ermittelt.
Ein gutes Beispiel hierfür ist z.B. eine Internetadresse wie www.google.de die dann in die IP Adresse 216.239.59.99 aufgelöst wird.
Wie wir bereits gehört haben, sendet der Rechner zuerst eine Anfrage an den Namensserver. Dabei muss man die beiden grundsätzlichen Abfrage Typen ?rekursive Namensauflösung? und ?iterative Namensauflösung? unterscheiden. Generell legt der Client den Abfragetyp fest und übermittelt den Hostnamen.
Bei der rekursiven Namensauflösung ist der Server für die komplette Namensauflösung verantwortlich. So muss der Resolver nur die Abfrage erstellen und die Antwort entgegennehmen und an die Applikation weiterleiten, die die Information angefordert hat. Der Server muss der Reihe nach bei allen anderen Servern selbst nachfragen, bis er die IP Adresse gefunden hat.
Abbildung 7: rekursive Namensauflösung
(auf Bild klicken, um zu einer animierten Graphik zu gelangen)
Bei der iterativen Namensauflösung sendet der Namensserver lediglich die Adresse des nächsten Servers. Der Resolver muss selbst weitere Anfragen schicken, bis er die IP Adresse gefunden hat.
Ressource Records
Informationen zu Hosts werden im DNS in sogenannten Resource Records gespeichert. Abgekürzt heißen diese RRs. Es gibt ca. 20 verschiedene Typen dieser Einträge.
Die 5 wichtigsten Typen:
Typ Bedeutung Beschreibung
A Definiert eine IP Adresse
CNAME Canonical Name Hier wird der Domain Name gespeichert
HINFO Host Informationen Zwei Strings für CPU und Betriebsystem
NS Namensserver Definiert den Namensserver für eine Domain
PTR Pointer Wird verwendet um den Domain Name einer bekannten Ip Adresse zu suchen.
Resource Record einer DNS Antwort
Domain Name
Type Class
Time To Live
Resource Data Length
Resource Data
Abbildung 8: Resource Record
Die folgende Tabelle enthält die Beschreibung der einzelnen Felder
Feld Name Beschreibung
Domain Name Ihr steht der Domain Name der aufgelöst werden soll
Type Information um welchen Typ RR es sich handelt.
Class Informationen welcher Klasse dieser Record angehört (z.B. 1 für Internet Daten)
Time To Live Enthält die Information, wie lange ein Eintrag gespeichert wird (Einheit = Sekunden)
Resource Data Length Informationen über die Länge des Feldes ?Resource Data?
Resource Data Enthält die eigentliche Information (die IP Adresse)
DNS-Nachrichten
Mit den DNS Nachrichten werden Daten zwischen Namensserver und Resolver ausgetauscht. Sie haben ein einheitliches Format. Sie setzen sich aus Header (Länge 12Byte) und den Resourse Records zusammen.
DNS Nachricht
Abbildung 9: DNS Nachricht
(zum vergrößern auf das Bild klicken)
Bedeutung der Felder im Detail
Feld Größe (in Bit) Beschreibung
Identification 16 Wert zur Identifikation des Resolvers, vom Client erzeugt
QR 1 Ist die Nachricht eine Anfrage Wert = 0, bei Antwort Wert =1
Opcode 4 Standardwert = 0 für rekursive Anfrage; weitere Möglichkeiten: 1 für eine iterative Anfrage, 2 für eine Server-Status Anfrage.
AA 1 Authoritive Answer: Der Nameserver ist autoritativ für die aufzulösende Domain
TC 1 Truncated: Bei UDP bedeutet dies, dass die Antwort größer als 512 Bytes ist und auch nur diese übermittelt werden
RD 1 Recursion Desired: Wenn der Client das Bit auf 1 setzt, ist dies eine rekursive Anfrage
RA 1 Recursion Available: Wenn der Nameserver rekursive Anfragen unterstützt, wird das Bit auf 1 gesetzt.
(zero) 3 Muss immer Null sein.
Rcode 4 Rückgabe-Code: 000 = keine Fehler, 111 = Domainname existiert nicht. (Nur autoritative Namenserver können Fehlercodes zurückliefern)
Number of Questions 16 Anzahl der DNS-Anfragen im Question-Feld
Number of Answer RRs 16 Anzahl der Resource Records im Answer-Feld
Number of Authority RRs 16 Anzahl der Recource Records im Authority-Feld
Number of Additional RRs 16 Anzahl der Resource Records im Additional-Feld
Questions 200 Enthält die DNS-Anfrage
Quelle: tecchannel
Abblidungs Verzeichniss
Abbildung 1: Struktur des DNS. 3
Abbildung 2: Tabelle der Toplevel Domains 3
Abbildung 3: Struktur DNS (Quelle: denic) 3
Abbildung 4: Domain Name 4
Abbildung 5: DNS Resolver 5
Abbildung 6: Hosts Datei. 6
Abbildung 7: rekursive Namensauflösung 7
Abbildung 8: Resource Record 8
Glossar
(Quelle des Glossar: www.nickles.de)
TCP/IP
Transfer Control Protocol / Internet Protocol - ein Satz an Protokollen die für die Kommunikation zwischen Rechnern im Internet verwendet werden. Das Internet Protokoll (IP) ist der Kern der TCP/IP Suite. Das Internetprotokoll ist dafür verantwortlich, die Ursprungs- und Zieladresse in das Datenpaket einzutragen und dieses Paket dann an seinen Bestimmungsort zu schicken. Im Prinzip funktioniert das so: Ursprungs- und Zieladresse werden am Kopf des Datenpakets -packet header- "angeklebt" , so dass die Pakete wissen, wohin die Reise geht. Der Teil des Packets der diese Informationen enthält wird deshalb auch -packet header- genannt. Das Paket wird dann im Netzwerk herumgeroutet und andere Rechner untersuchen den Paketkopf, um herauszufinden, ob das Paket vielleicht für sie bestimmt ist. In Verbindung mit dem TCP-Protokoll ist IP der Kern des Netzwerkprotokolls TCP/IP
DOMAIN
Eine Domain ist ein im Internet verwendeter Begriff und hat nichts mit der Domäne von Microsoft zu tun. Die Domain beschreibt einen sogenannten Domain Namensraum. Eine Domain ist ein logischer Verbund von Rechnern und kann sich auch in sogenannte Subdomains aufteilen. Für die Auflösung von Domainnamen werden DNS-Server benutzt. Ein Beispiel für einen Domainnamen wäre z.Bsp. www.microsoft.com. Wobei der . für die ROOT des DNS-Servers, .com für die kommerzielle Top-Level Domain, .microsoft für die Firma und www für den Rechner steht. Domainnamen werden von rechts nach links aufgelöst.
Domäne
Eine Domäne ist ein logischer Verbund von MS-Windows NT und 2000-Rechnern, bei der die Benutzerverwaltung und die Rechteverwaltung von einem Server (PDC=Primary Domain Controller) erledigt wird. Die Workstations schließen sich dieser Domäne an und bekommen durch diese Ihre Rechte (Rechtevergabe auf Benutzerebene). Win9x Rechner sind keine vollwertigen Mitglieder einer Domäne, dies bedingt duch ihre andere Rechtevergabe auf Freigabeebene und Fehlen einer eigenen Benutzerdatenbank
DNS
Domain Name System - Dabei handelt es sich um ein Protokoll, das Internet-weit Host- und Domaenen-Namen zur Verfügung stellt. DNS wird zum Beispiel verwendet, wenn die IP Adresse eines Host-Namens (z.b. google.de) ermittelt werden muß.
FQDN
Fully Qualified Domain Name ? ist ein vollständiger (Internet) Domänen-Name
Das Ganze Referat gibts auf Anfrage an stefan.block@freenet.de als .Doc inclusive Bilder
Natürlich umsonst
Quellen:
www.tecchannel.de
www.nickles.de
www.denic.de
Buch: Active Directory Services
DNS steht für Domain Name System. DNS ist ein weltweitverteiltes Netzwerkverzeichnis. Seine grundlegende Aufgabe besteht darin, Domänennamen in IP Adressen aufzulösen.
Dieses Referat beschreibt die Grundlagen und die Technik der Namensauflösung mit Hilfe von DNS.
Inhalt:
Inhalt:
Einleitung
Struktur des DNS
Domain
Domain Name
Root Server
Namensserver + Abfrage
DNS Resolver
Namensauflösung
Ressource Records
DNS-Nachrichten
Abblidungs Verzeichniss
Glossar
Quellen:
Einleitung
In einem Computernetzwerk werden IP Adressen vergeben um Netzwerkkomponenten eindeutig identifizieren zu können. Da IP Adressen aber numerischer Natur sind, fällt es schwer sich diese zu merken, bzw. welche Komponente sich hinter einer IP Adresse verbirgt. Es ist deshalb von Vorteil natürliche Namen zu vergeben, da diese Namen leichter zu Merken und somit benutzerfreundlicher als IP Adressen sind. IP Adressen werden aber zur Kommunikation in einem IP- Netzwerk zwingend benötigt. Deshalb braucht man ein Werkzeug, das IP Adressen in sogenannte Domänennamen auflöst. Das Werkzeug welches diesen Dienst erfüllt ist DNS. DNS ist in den RCF Bestimmungen RFC 1034 und RFC 1035 beschrieben.
DNS wird im Internet und in privaten Windows IP Netzwerken eingesetzt.
Namensauflösung gibt es nicht nur in TCP/IP- Netzwerken, sondern auch in NetBIOS- oder IPX/SPX-Netzen.
Neben DNS existieren noch eine Menge anderer Möglichkeiten um Ressourcen im Netzwerk ausfindig zu machen.
Doch DNS kann noch einiges mehr.
Mit Hilfe des DNS lassen sich auch die Dienste identifizieren, die mit einer Domain verknüpft sind. So liefert es z. B. Informationen darüber, welcher Rechner für eine bestimmte Domain der Mail-Server ist, welche Nameserver für eine Domain zuständig sind und vieles mehr.
Struktur des DNS
Das DNS ist ein hierarchisches System. Es kennt keine Zentrale Datenbank. Die Informationen werden auf mehrere Tausend Server verteilt.
Abbildung 1: Struktur des DNS.
Die DNS Datenbank ist in mehrere Zonen aufgeteilt, die wiederum über eine baumförmige Struktur verknüpft sind. Die das Root Verzeichnis ist sozusagen die Wurzel von DNS.
Die Root Domain wird durch einen . dargestellt.
Unter ihr befinden sich die Top Level Domains (TLD). Die Top Level Domains werden in zwei Kategorien eingeteilt:
Generic Domains
Country Domains
Die 7 generischen Top Level Domains
Domain Beschreibung
.com Kommerzielle Unternehmen,z.B. /www.microsoft.com
.edu Bildungseinrichtungen wie z.B. Universitäten
.gov Staatliche Einrichtungen wie z.B. whitehouse.gov/
.mil Militärische Einrichtungen
.org Einrichtungen, die nicht kommerzielle Ziele verfolgen
.net Netzwerkeinrichtungen
.int Internationale Organisationen
Abbildung 2: Tabelle der Toplevel Domains
Die vollständige Bezeichnung für Country Domains ist country code Top Level Domains (kurz ccTLDs). ccTLDs
sind z.B. .de für Deutschland, .uk für United Kingdom, ua. . Es gibt mehr als 240 ccTLDs.
Schon gewusst?
Die .de Domain ist die größte ccTLD und neben .com die zweitgrößte Domain weltweit, gemessen an der Anzahl der unter ihr eingetragenen Domains.
Abbildung 3: Struktur DNS (Quelle: denic)
Domain
Öfters wurde bereits der Begriff Domain verwendet. Dieser Abschnitt erklärt, was eine Internet Domäne ist.
Eine Domain ist ein logischer Verbund von Rechnern. Sie kann in weitere Subdomains aufteilen.
Das DNS beruht auf den Internet-Domänen. Eine Domäne ist die Verwaltungseinheit im Internet. Sie stellt eine Möglichkeit dar, Rechner in Gruppen zusammenzufassen um eine hierarische Struktur zu erzeugen.
Domain Name
Ein Domain Name bezeichnet man korrekt als Absolute Domain Name oder besser als Fully Qualified Domain Name (FQND).
Ein Domain Name besteht aus mindestens drei Teilen, in denen sich die hierarische Struktur wiederfindet.
Diese drei Teile sind die
Top Level Domäne
Second Level Domäne
Subdomänen
Die einzelnen Hierarchieebenen werden durch einen Punkt getrennt. Die Root Domain wird als einziger Punkt als abschließende Stelle geschrieben. Jedoch wird dieser Meist weggelassen.
Beispiel:
Google.de.
Abbildung 4: Domain Name
Für die Verteilung der Domain Namen sind benannte Firmen und Institutionen verantwortlich. Geographische Sub-Domains wie *.de werden meist von den Ländern selbst vergeben (z.B. ist in Deutschland für .de Domains denic verantwortlich).
Nicht generische Top Level Domains sind fest in amerikanischen Händen und nicht alle stehen jedem zur Verfügung, so kann z.B. keine deutsche Universität eine .edu Domain anmelden.
Root Server
Root Server stellen die oberste Ebene in der DNS Struktur dar. Weltweit gibt es 13 Root Server. 10 von ihnen stehen in den USA, 1 in Japan 1 in Schweden und einer in England.
Die Primary Name Server der Top Level Domains müssen alle IP- Adressen aller Root-Server gespeichert haben.
Namensserver + Abfrage
Wie beschrieben Stellen die Top Level Domains den Teil der zweiten Hierarchieebenen da. Auf dieser Ebene wird DNS durch so genannte Namensserver realisiert. Namensserver können natürlich auch in der dritten Ebene des DNS sein. Namensserver sind in einer großen Anzahl im Internet verteilt. Namensserver enthalten die Mapping- Informationen der Domains, für die Sie, den Namensservice übernehmen, d.h. der Namensserver ist sozusagen ein Haupt Ast und kennt alle Äste eine Stufe unter sich, sowie die Stationen über sich.
Ein Grundgedanke des DNS ist dabei die Verteilung der Verantwortlichkeiten. Die Informationen sollten nicht alle an zentraler Stelle hinterlegt, sondern möglich dezentral gespeichert und verwaltet werden. Jeder Nameserver ist daher nur für einen Teil des Netzes, eine so genannte Zone, zuständig. Auf diesen Namenservern sind die Namen und die IP- Adressen aller Internet-Rechner (Hosts) sowie Informationen zu den dahinterstehenden Diensten der unteren Äste verzeichnet. Hier werden zu den Domain Namen die IP Adressen zugeordnet. Die Zuordnung funktioniert ähnlich wie bei den Host Dateien. Dies wird später noch genauer im Kapitel Namensauflösung beschrieben.
Wichtig ist, dass zu jeder Domain mindestens zwei Namensserver zugeordnet werden müssen.
Einer von ihnen wird als Primary-, der andere als Secondary Namenserver bezeichnet. Beide Server müssen unabhängig von einander sein, da der Secundary Name Server als Backup Server dient. Er bezieht seine Informationen vom Primary Server und übernimmt bei einem Ausfall der Primary Server dessen Aufgabe.
Beschäftigen wir uns jetzt mit der Frage, wie eine Namensserver Abfrage ablaufen kann.
Nehmen wir an, wir surfen im Internet und geben einen Domainnamen im Browser an. Unser Rechner kennt leider die IP Adresse des Domain Namens. Also muss er den Namensserver fragen. Das ist in der Regel ein Server unseres Internetproviders z.B. T-Online. Unser Rechner, genauer unser Resolver schickt nun eine Nachricht an den Namensserver und hofft auf eine Antwort. Kennt der Namensserver die IP Adresse, schickt er Sie unserem Rechner zu. Was passiert jetzt aber, wenn der Namensserver die IP Adresse nicht kennt? Er muss die Anfrage eine Hierarchieebene höher schicken. Der Server über ihm kennt dann die Domain oder schickt die Anfrage wieder eine Stufe höher, evt. Bis zu einem der 13 Root Server. Kennt ein Namensserver die Domain, leitet er die Anfrage wieder eine Hierarchieebene tiefer, bis schließlich die IP Adresse gefunden wurde. Danach nimmt die Anfrage den gleichen Weg in umgekehrter Richtung bis zu unserem Rechner zurück. Jeder Namensserver setzt einen Cache ein, um die Netzwerkbelastung so minimal wie möglich zu halten. Allerdings dürfen die Daten im Cache nicht zu alt werden, da sonst die Gefahr besteht, dass eine nicht mehr exsistierende Adresse übermittelt wird.
DNS Resolver
Wenn ein Netzwerkclient auf einen Internet Host zugreifen möchte, aber nur dessen Domain Namen kennt, muss er zunächst einen Namensserver kontaktieren. Um den Namensserver Kontaktieren zu können, benötigt der Netzwerkclient dem Resolver. Er besteht aus einer Reihe von Software Routinen, die zu jedem Programm verknüpft werden das Adressen wissen will und weis, wie man Anfragen formuliert.
Er übernimmt im Wesentlichen die folgenden drei Aufgaben:
Abbildung 5: DNS Resolver
Zuerst erzeugt er eine Abfrage und schickt sie an den Namensserver. Der Namensserver ist in der Regel der Server des Internetproviders, der die Internetverbindung bereitstellt. War die Anfrage erfolgreich, d.h. konnte die Adresse aufgelöst werden, interpretiert er die Antwort und leitet dann die Informationen an das Programm weiter, das die Informationen angefordert hat, z.B. ein Browser.
Bei Windows und Unix Systemen existieren zwei Funktionen zum Aufruf des Resolvers:
gethostbyaddr (ermittelt einen Domian Namen, wenn die Ip Adresse bekannt ist)
gehthostbyname (ermittelt die IP Adresse, wenn der DNS Name bekannt ist)
Namensauflösung
Allgemein wird die Zuordnung von Netzwerkadressen (IP Adresse) zu lesbaren Namen (DNS Name) als Namensauflösung bezeichnet.
IP- Adressen dienen nicht nur um Komponenten im Netzwerk eindeutig zu identifizieren, sondern man benötigt Sie um eine Komponente wie z.B. einen Rechner im Internet anzusprechen.
Der DNS-Name ist eine eindeutige Bezeichnung für den Rechner, bzw. eine Netzwerkkomponente. Er hat eine maximale Länge von 255 Zeichen und kann sich aus Buchstaben, Zahlen, den Unterstrich sowie den Punkt zusammensetzten.
Wie bereits festgestellt lassen sich IP Adressen schlecht merken. Es ist einfacher, einen DNS-Namen wie z.B. www.google.de in einen Browser, wie z.B. den Internet Explorer, einzutippen als 216.239.59.99. Um den Namen auflösen zu können, muss er in irgendeiner Form der IP Adresse zugeordnet sein.
Am einfachsten kann man einen solchen Namen einer IP- Adresse zuordnen, in dem man beide in einer Datei einträgt. Wird dann eine IP- Adresse zu einem Namen gesucht, sieht man einfach in dieser Datei nach.
Eine solche Datei trägt in allen Windows NT und 2000 Systemen die Bezeichnung Hosts, und befindet sich im Verzeichnis
%systemroot%\system32\drivers\etc.
Beispiel einer Hosts Datei
Abbildung 6: Hosts Datei.
Um die Datei zu öffnen, klicken Sie auf Start -> Ausführen und geben dort den oben genannten Pfad ein und bestätigen mit OK, es öffnet sich ein Fenster mit dem Verzeichnis in der sich die Datei befindet. Die Datei kann mit einem Editor wie Notepad geöffnet werden.
Im roten Kreis sieht man die Zuordnung von IP Adresse zu DNS Name.
Die Hosts liegt im Netzwerk zentral auf einem Server und wird dort gewartet, d.h. es werden nur dort neue Einträge vorgenommen. Die Clients laden dann diese Datei möglichst oft. So sind sie dann auf dem neuesten Stand.
Ein solches System funktioniert zwar, ist aber nur in Netzwerken mit bis zu wenigen tausend Rechnern zu empfehlen, das es darüber hinaus nicht wirklich praktikabel ist. Folgenden Nachteile belasten ein solches System:
Beim übertragen der Hosts Datei wird das Netzwerk unnötig belastet und der Vorgang ist zusätzlich noch umständlich.
In größeren Netzwerken wird der Server stark durch diesen Vorgang belastet.
Es existiert keine Sicherung der Datei (es steht kein Redundantes System zur Verfügung), was bei einem Ausfall des Servers einen Funktionsverlust des gesamten Netzwerkes zur Folge hat.
Deshalb hat man ein System entwickelt, dass diese Nachteile beseitigen soll. Dieses System ist das Domain Name System.
Wird bei DNS zum Beispiel FQND in einen Browser wie den Internet Explorer eingegeben, wird die IP Adresse des entsprechenden Servers durch eine DNS Abfrage ermittelt.
Ein gutes Beispiel hierfür ist z.B. eine Internetadresse wie www.google.de die dann in die IP Adresse 216.239.59.99 aufgelöst wird.
Wie wir bereits gehört haben, sendet der Rechner zuerst eine Anfrage an den Namensserver. Dabei muss man die beiden grundsätzlichen Abfrage Typen ?rekursive Namensauflösung? und ?iterative Namensauflösung? unterscheiden. Generell legt der Client den Abfragetyp fest und übermittelt den Hostnamen.
Bei der rekursiven Namensauflösung ist der Server für die komplette Namensauflösung verantwortlich. So muss der Resolver nur die Abfrage erstellen und die Antwort entgegennehmen und an die Applikation weiterleiten, die die Information angefordert hat. Der Server muss der Reihe nach bei allen anderen Servern selbst nachfragen, bis er die IP Adresse gefunden hat.
Abbildung 7: rekursive Namensauflösung
(auf Bild klicken, um zu einer animierten Graphik zu gelangen)
Bei der iterativen Namensauflösung sendet der Namensserver lediglich die Adresse des nächsten Servers. Der Resolver muss selbst weitere Anfragen schicken, bis er die IP Adresse gefunden hat.
Ressource Records
Informationen zu Hosts werden im DNS in sogenannten Resource Records gespeichert. Abgekürzt heißen diese RRs. Es gibt ca. 20 verschiedene Typen dieser Einträge.
Die 5 wichtigsten Typen:
Typ Bedeutung Beschreibung
A Definiert eine IP Adresse
CNAME Canonical Name Hier wird der Domain Name gespeichert
HINFO Host Informationen Zwei Strings für CPU und Betriebsystem
NS Namensserver Definiert den Namensserver für eine Domain
PTR Pointer Wird verwendet um den Domain Name einer bekannten Ip Adresse zu suchen.
Resource Record einer DNS Antwort
Domain Name
Type Class
Time To Live
Resource Data Length
Resource Data
Abbildung 8: Resource Record
Die folgende Tabelle enthält die Beschreibung der einzelnen Felder
Feld Name Beschreibung
Domain Name Ihr steht der Domain Name der aufgelöst werden soll
Type Information um welchen Typ RR es sich handelt.
Class Informationen welcher Klasse dieser Record angehört (z.B. 1 für Internet Daten)
Time To Live Enthält die Information, wie lange ein Eintrag gespeichert wird (Einheit = Sekunden)
Resource Data Length Informationen über die Länge des Feldes ?Resource Data?
Resource Data Enthält die eigentliche Information (die IP Adresse)
DNS-Nachrichten
Mit den DNS Nachrichten werden Daten zwischen Namensserver und Resolver ausgetauscht. Sie haben ein einheitliches Format. Sie setzen sich aus Header (Länge 12Byte) und den Resourse Records zusammen.
DNS Nachricht
Abbildung 9: DNS Nachricht
(zum vergrößern auf das Bild klicken)
Bedeutung der Felder im Detail
Feld Größe (in Bit) Beschreibung
Identification 16 Wert zur Identifikation des Resolvers, vom Client erzeugt
QR 1 Ist die Nachricht eine Anfrage Wert = 0, bei Antwort Wert =1
Opcode 4 Standardwert = 0 für rekursive Anfrage; weitere Möglichkeiten: 1 für eine iterative Anfrage, 2 für eine Server-Status Anfrage.
AA 1 Authoritive Answer: Der Nameserver ist autoritativ für die aufzulösende Domain
TC 1 Truncated: Bei UDP bedeutet dies, dass die Antwort größer als 512 Bytes ist und auch nur diese übermittelt werden
RD 1 Recursion Desired: Wenn der Client das Bit auf 1 setzt, ist dies eine rekursive Anfrage
RA 1 Recursion Available: Wenn der Nameserver rekursive Anfragen unterstützt, wird das Bit auf 1 gesetzt.
(zero) 3 Muss immer Null sein.
Rcode 4 Rückgabe-Code: 000 = keine Fehler, 111 = Domainname existiert nicht. (Nur autoritative Namenserver können Fehlercodes zurückliefern)
Number of Questions 16 Anzahl der DNS-Anfragen im Question-Feld
Number of Answer RRs 16 Anzahl der Resource Records im Answer-Feld
Number of Authority RRs 16 Anzahl der Recource Records im Authority-Feld
Number of Additional RRs 16 Anzahl der Resource Records im Additional-Feld
Questions 200 Enthält die DNS-Anfrage
Quelle: tecchannel
Abblidungs Verzeichniss
Abbildung 1: Struktur des DNS. 3
Abbildung 2: Tabelle der Toplevel Domains 3
Abbildung 3: Struktur DNS (Quelle: denic) 3
Abbildung 4: Domain Name 4
Abbildung 5: DNS Resolver 5
Abbildung 6: Hosts Datei. 6
Abbildung 7: rekursive Namensauflösung 7
Abbildung 8: Resource Record 8
Glossar
(Quelle des Glossar: www.nickles.de)
TCP/IP
Transfer Control Protocol / Internet Protocol - ein Satz an Protokollen die für die Kommunikation zwischen Rechnern im Internet verwendet werden. Das Internet Protokoll (IP) ist der Kern der TCP/IP Suite. Das Internetprotokoll ist dafür verantwortlich, die Ursprungs- und Zieladresse in das Datenpaket einzutragen und dieses Paket dann an seinen Bestimmungsort zu schicken. Im Prinzip funktioniert das so: Ursprungs- und Zieladresse werden am Kopf des Datenpakets -packet header- "angeklebt" , so dass die Pakete wissen, wohin die Reise geht. Der Teil des Packets der diese Informationen enthält wird deshalb auch -packet header- genannt. Das Paket wird dann im Netzwerk herumgeroutet und andere Rechner untersuchen den Paketkopf, um herauszufinden, ob das Paket vielleicht für sie bestimmt ist. In Verbindung mit dem TCP-Protokoll ist IP der Kern des Netzwerkprotokolls TCP/IP
DOMAIN
Eine Domain ist ein im Internet verwendeter Begriff und hat nichts mit der Domäne von Microsoft zu tun. Die Domain beschreibt einen sogenannten Domain Namensraum. Eine Domain ist ein logischer Verbund von Rechnern und kann sich auch in sogenannte Subdomains aufteilen. Für die Auflösung von Domainnamen werden DNS-Server benutzt. Ein Beispiel für einen Domainnamen wäre z.Bsp. www.microsoft.com. Wobei der . für die ROOT des DNS-Servers, .com für die kommerzielle Top-Level Domain, .microsoft für die Firma und www für den Rechner steht. Domainnamen werden von rechts nach links aufgelöst.
Domäne
Eine Domäne ist ein logischer Verbund von MS-Windows NT und 2000-Rechnern, bei der die Benutzerverwaltung und die Rechteverwaltung von einem Server (PDC=Primary Domain Controller) erledigt wird. Die Workstations schließen sich dieser Domäne an und bekommen durch diese Ihre Rechte (Rechtevergabe auf Benutzerebene). Win9x Rechner sind keine vollwertigen Mitglieder einer Domäne, dies bedingt duch ihre andere Rechtevergabe auf Freigabeebene und Fehlen einer eigenen Benutzerdatenbank
DNS
Domain Name System - Dabei handelt es sich um ein Protokoll, das Internet-weit Host- und Domaenen-Namen zur Verfügung stellt. DNS wird zum Beispiel verwendet, wenn die IP Adresse eines Host-Namens (z.b. google.de) ermittelt werden muß.
FQDN
Fully Qualified Domain Name ? ist ein vollständiger (Internet) Domänen-Name
Das Ganze Referat gibts auf Anfrage an stefan.block@freenet.de als .Doc inclusive Bilder
Natürlich umsonst
Quellen:
www.tecchannel.de
www.nickles.de
www.denic.de
Buch: Active Directory Services