In TCP/IP-Netzwerken wird über die 32-Bit Nummer nnn.nnn.nnn.nnn adressiert. Diese Nummern kann man sich nicht merken. Daher werden normale Namen wie U104 oder sun vergeben. Hostname-Auflösung ermittelt die IP-Adresse zu einem Namen. Dazu werden die Bibliotheksroutinen gethostbyname und gethostbyaddr verwendet. (Resolver-Bibliothek libc)
Bei kleinen Netzwerken wie ETHERNET wird die Hostname-Auflösung über die Datei /etc/hosts durchgeführt. Diese Datei muß bei jeder Änderung auf allen Rechnern aktualisiert werden, was ab einer gewissen Anzahl von Rechnern mühsam wird.
Eine Lösung für dieses Problem ist NIS, das Network Information System von SUN. NIS speichert die hosts-Datei und weitere Dateien in einer zentralen Datenbasis auf einem NIS-Server. NIS-Clients können von dort Informationen beziehen. NIS eignet sich für mittelgroße Netze wie LANs, da alle
Hosts zentral verwaltet werden.
Am Beginn des INTERNETS wurden alle Adressen in einer zentralen Datei HOSTS.TXT gespeichert. Diese Datei wurde vom NIC, dem Network Information Center gewartet. Mit dem Wachstum des Internets gab es administrative Probleme. Auch der Aufwand, um die HOSTS.TXT zu verteilen, überforderte die Server. Daher wurde 1984 das DNS eingeführt.
DNS organisiert Hostnamen in einer Hirarchie von Domänen (engl. domain). Eine Domäne ist eine Sammlung von 'sites', die miteinander verwandt sind. sun.htlwrn.ac.at ist vollqualifizierter Domänennamen (FQDN) der den Rechner sun weltweit eindeutig identifiziert. at steht für Österreich, in den USA entfällt diese Domäne. ac steht für academic, htlwrn für die HTL Wr. Neustadt. Der Vorteil von DNS besteht darin, daß wir innerhalb von htlwrn.ac.at unsere Namen und Unterdomänen lokal, also ohne NIC festlegen können.
DNS, eine verteilte Datenbasis
Wie kann eine Anwendung ohne zenrale Autorität feststellen, welche Namen zu welchen Adressen gehören? Wenn eine Anwendung außerhalb der HTL Wr. Neustadt einen Namen innerhalb unserer Domäne wissen will, so muß diese Anwendung unseren Domain Name Server "sun.htlwrn.ac.at" fragen. Diese Anwendung muß jedoch nicht direkt unseren DNS befragen, sondern befragt den DNS ihrer Domäne, also den lokalen DNS, der die gefragten Daten liefert. Nehmen wir an, der lokale DNS sei "dns.univie.ac.at", so befrägt dieser den DNS von "ac.at", der den DNS von "htlwrn.ac.at" befrägt und so die Daten liefert. Um die Netzlast nicht unnötig zu erhöhen, halten die DNS bekannte Informationen gemäß der "time to live" (TTL) in einem lokalen Cache.
Die DNS Datenbasis
Diese enthält nicht nur Hostadressen sondern auch Regeln zum Austausch von Informationen mit anderen Domain Name Servern, die in der Datei named.hosts abgelegt sind.
Jeder Satz in dieser Datei hat einen gewissen Typ.
Ein "A"-Satz ordnet einem FQDN oder einem lokalen Namen eine IP-Adresse zu.
Ein "CNAME"-Satz ordnet einem "A"-Satz einen weiteren Namen zu.
Der "SOA"-Satz ist der "Start of Authority" definiert allgemeine Informationen wie z.B. die TTL.
Namen die nicht mit einem Punkt enden sind keine FQDN sondern lokal zur Domäne des DNS.
Der spezielle Name "@" ist der Name der Domäne (z.B. htlwrn.ac.at)
Der "NS"-Satz definiert einen bekannten Domain Name Server, anschließend kommt ein "A"-Satz.
Der mx-Satz definiert den Mailserver. /etc/mail/aliases ordnet die mail-Benutzer den UNIX-Benutzern zu, so wird z.B. "r.simon" die Benutzerkennung sj zugeordnet.
Da es machmal notwendig ist, den Domänennamen zu einer IP-Adresse zu suchen, gibt es auch die umgekehrte Namensauflösung (reverse lookup). Auf diese Weise kann ein Netzwerkdienst die Identität eines Netzwerkklienten überprüfen. Diese Angaben stehen in der Datei named.rev.
2.5.1 IP-Masquerade
IPV4-Adressen sind eine knappe und teure Ressource und IPV6 befindet sich noch im Standardisierungsprozess.
IP-Masquerading bietet eine einfachere Möglichkeit um ein Netzwerk ans Internet anzuschließen wie DNS mit Class-C-Subnetzen.
Ein spezieller Rechner (z.B. unter linux) wird als Router eingesetzt und ändert die Adressen in den IP-Paketen, bevor er sie in das nächste Netz weitergibt. Der Empfänger sieht als Absender nur die Adresse des Routers und schickt seine Antwort dorthin zurück. Der Router übersetzt die Adressen wieder und verteilt die Pakete an die eigentlichen Empfänger.
|