|
|
Zeile 8: |
Zeile 8: |
| ==== Links ==== | | ==== Links ==== |
| ===== Weblinks ===== | | ===== Weblinks ===== |
|
| |
| = TMP =
| |
| Als '''Namensauflösung''' bezeichnet man Verfahren, die es ermöglichen, Namen von Rechnern beziehungsweise [[Netzwerkdienst|Diensten]] in vom Computer bearbeitbare, meist numerische Adressen zu übersetzen
| |
|
| |
| Für Menschen sind Namen wie beispielsweise „www.wikipedia.org“ einfacher zu merken und zu verwenden als numerische Adressen
| |
| * Für Computer und [[Netzwerkkomponente]]n sind [[Zeichenkette]]n hingegen unhandlich beziehungsweise ineffizient verarbeitbar
| |
| * Die Namensauflösung vermittelt zwischen diesen beiden Anforderungen, indem sie Namen in Adressen und unter Umständen auch zurück übersetzen kann
| |
| * Im Fall von Web-Adressen ([[Uniform Resource Locator|URLs]]) wird die enthaltene [[Domain (Internet)|Domain]] (zum Beispiel „www.wikipedia.org“) mit dem [[Domain Name System]] (kurz DNS) in eine [[IP-Adresse]] (zum Beispiel „91.198.174.232“) konvertiert
| |
|
| |
| == Anwendungsfälle ==
| |
| Namensauflösung wird in vielen Bereichen verwendet
| |
| * Ein sehr bekannter Anwendungsfall ist das Übersetzen von Rechnernamen beziehungsweise Domainnamen in Netzwerkadressen
| |
| * Darüber hinaus sind auch vielen Netzwerkdiensten Namen zugewiesen
| |
| * Das in Webbrowsern wie Firefox zum Abrufen von Webseiten verwendete Protokoll [[Hypertext Transfer Protocol|HTTP]] wird beispielsweise zur eben erwähnten Netzwerkadresse und zum [[Port (Protokoll)|Port]] „80“ vom [[Transmission Control Protocol]] aufgelöst
| |
| * Namen des [[Protokoll (IP)|IP-Protokolls]] haben ihrerseits wieder eine zugehörige Nummer
| |
| * So ist z. B
| |
| * dem Transmission Control Protocol (kurz TCP) im IP-Protokoll die ID „6“ zugewiesen, dem [[User Datagram Protocol]] (kurz UDP) die ID „17“
| |
|
| |
| Bei [[Unix-Dateirechte]]n ist jedem Benutzer (engl. ''user'') und jeder Gruppe (engl. ''group'') eine Identifikationsnummer (ID) zwischen 0 und 65535 zugeordnet – die UID (''user ID'') beziehungsweise GID (''group ID'')
| |
| * Auch hier meldet sich der Benutzer mit seinem Namen an, die Überprüfung von Zugriffsrechten erfolgt jedoch anhand der numerischen UID und der GIDs der Gruppen, zu denen der Benutzer gehört
| |
| * Programme wie „ls“ und „ps“ konvertieren hingegen die numerischen IDs wieder zu Namen, um für den Benutzer eine gut lesbare Ausgabe zu erzeugen. <!-- Wie schaut das unter Windows aus? Wird hier eine UUID verwendet? -->
| |
|
| |
| == Verfahren ==
| |
| Es gibt mehrere Verfahren, die zur Namensauflösung eingesetzt werden können
| |
| * Oft kommen mehrere Verfahren zum Einsatz, die in einer bestimmten Reihenfolge abgefragt werden, bis eines eine gültige Antwort liefern konnte
| |
|
| |
| Die Namensauflösung beispielsweise eines [[Windows]]-Rechners in einem [[Server Message Block|SMB]]-Netzwerk (Hybrid-Knoten) erfolgt in dieser Reihenfolge:
| |
| # DNS-Namenszwischenspeicher ([[DNS-Caching|DNS-Cache]]): Der DNS-Cache auf dem lokalen Computer wird durchsucht
| |
| # Hosts-Datei: Die Hosts-Datei auf dem lokalen Computer wird durchsucht
| |
| # DNS-Abfrage: Es wird eine Anfrage an einen DNS-Server im Netzwerk gesendet
| |
| # [[NetBIOS]]-Namenszwischenspeicher: Der NetBIOS-Namenszwischenspeicher wird auf dem lokalen Computer durchsucht
| |
| # [[Windows Internet Naming Service|WINS]]-Abfrage: Es wird eine Anfrage an einen WINS-Server im Netzwerk gesendet
| |
| # [[Broadcast]]: Es wird ein NetBIOS-Broadcast an das eigene Subnetz gesendet
| |
| # Lmhosts-Datei: Die Lmhosts-Datei auf dem lokalen Computer wird durchsucht
| |
|
| |
| === Lokale Konfigurationsdateien ===
| |
| Die einfachste Möglichkeit der Namensauflösung stellen lokale Dateien dar, die eine entsprechende Zuordnung enthalten
| |
| * In Textdateien werden– wie in einer Tabelle – einem Namen eine oder mehrere Adressen beziehungsweise Nummern zugeordnet
| |
|
| |
| Verwendet werden lokale Konfigurationsdateien, wenn eine zentrale Organisation der Daten nicht erforderlich ist oder wenn sich die Daten sehr selten ändern
| |
| * Da diese Dateien lokal vorhanden sind, funktioniert die Auflösung auch dann noch, wenn das Netzwerk ganz oder teilweise ausgefallen ist
| |
| * Daher werden sehr wichtige Daten häufig (auch) in lokale Dateien eingetragen
| |
|
| |
| '''Beispiele (UNIX):'''
| |
| * <code>/etc/passwd</code><br />Lokale Benutzerdatenbank
| |
| * Hier sind der Administrator-Benutzer („root“) und System-Benutzer von Diensten (beispielsweise der Benutzer, mit dessen Rechten der [[Webserver]] arbeitet) eingetragen
| |
| * Findet keine zentrale Benutzerverwaltung statt, sind hier auch „normale“ Benutzer eingetragen
| |
| * <code>/etc/protocols</code><br />Von der [[IANA]] zugewiesene Protokollnamen und -nummern
| |
| * Diese Daten ändern sich sehr selten
| |
| * <code>/etc/hosts</code> (s. [[hosts (Datei)|hosts]]-Datei)<br />Lokale Tabelle für Hostnamen
| |
| * Hier ist zum Beispiel der Alias „localhost“ definiert
| |
| * Ein Webserver könnte hier den Namen des Datenbankservers eintragen, um auch dann noch mit der Datenbank kommunizieren zu können, wenn die netzwerkbasierte Namensauflösung ausfällt
| |
|
| |
| ''Bildlicher Vergleich:''<br />Das Adressbuch in einem Mobiltelefon ist vergleichbar mit einer lokalen Konfigurationsdatei: Die gespeicherten Telefonnummern kann man nachschlagen, ohne eine andere Person zu fragen
| |
| * Die Information ist auch dann verfügbar, wenn die Telefonauskunft aufgrund eines technischen Fehlers nicht erreichbar ist
| |
| * Dafür wird das Adressbuch nicht automatisch gepflegt: Eine etwaige neue oder geänderte Telefonnummer erscheint nicht automatisch im Adressbuch
| |
|
| |
| === Broadcast ===
| |
| Über einen [[Broadcast]] im direkt angeschlossenen Netz wird versucht, den Namen ausfindig zu machen
| |
| * Dieses Vorgehen wird beispielsweise von [[Address Resolution Protocol|ARP]] in [[Ethernet]]-Netzwerken verwendet, um die [[MAC-Adresse]] zu einer [[IPv4-Adresse]] herauszufinden
| |
|
| |
| ''Bildlicher Vergleich:''<br />Man ruft im Großraumbüro, in dem man sich befindet, den Namen des Partners, mit dem man telefonieren möchte, und bittet um seine Telefonnummer
| |
| * Wenn man diese bekommen hat, kann man den gewünschten Partner anrufen
| |
| * Prinzipbedingt können nur Personen erreicht werden, die sich im selben Raum aufhalten
| |
|
| |
| === Spezielle Dienste ===
| |
| Der Rechner erfragt die gewünschte Information bei einem speziellen Netzwerkdienst
| |
| * Je nach Anwendungsfall kommen andere Dienste zum Einsatz
| |
| * Durch die zentrale Datenhaltung können Änderungen an einer Stelle durchgeführt werden, abfragende Rechner müssen nicht angepasst werden
| |
|
| |
| '''Beispiele:'''
| |
| * [[Domain Name System]] (DNS)<br />Kann Hostnamen beziehungsweise Domainnamen zu Adressen auflösen
| |
| * Dieser Dienst ist die im Internet verwendete Namensauflösung, beispielsweise um die IP-Adresse für „www.wikipedia.de“ nachzuschlagen
| |
| * [[Windows Internet Naming Service]] (WINS)<br />Löst NetBIOS-Namen auf
| |
| * Die Daten werden von Client-Rechnern an den WINS-Server gemeldet, so dass eine manuelle Konfiguration nicht notwendig ist
| |
| * [[Lightweight Directory Access Protocol]] (LDAP)<br />Kann zur Benutzer- und Gruppenverwaltung von [[POSIX]]-Accounts verwendet werden
| |
| * LDAP bildet auch die Grundlage für den [[Active Directory|Active-Directory]]-Dienst von Windows-Systemen
| |
|
| |
| ''Bildlicher Vergleich:''<br />Man kennt (lediglich) die Telefonnummer der Telefonauskunft
| |
| * Diese ruft man an, um die Telefonnummer einer dritten Person herauszufinden
| |
| * Neue Telefonnummern müssen lediglich der Auskunft, nicht aber jedem Telefonbesitzer mitgeteilt werden
| |
| * Wenn die Auskunft technische Probleme hat, kann man hingegen nur noch telefonieren, wenn man eine alternative Möglichkeit hat, die Telefonnummer ausfindig zu machen
| |
|
| |
| === Lokaler Cache ===
| |
| Der Computer sieht in seinem lokalen [[Cache]] nach, ob er diesen Namen schon einmal aufgelöst hat
| |
| * Wenn ja, befindet sich im Cache die benötigte Adresse/Nummer, die er wiederverwenden kann
| |
| * Dieses Zwischenspeichern wird insbesondere in Verbindung mit Namensdiensten verwendet, um die Anzahl der Zugriffe zu reduzieren und um die Auflösung zu beschleunigen
| |
|
| |
| ''Bildlicher Vergleich:''<br />Man möchte jemanden anrufen, mit dem man vor kurzem schon einmal telefoniert hat
| |
| * Also drückt man einfach die Wahlwiederholung, da das Telefon die letzten Nummern noch gespeichert hat
| |
|
| |
| === Reihenfolge ===
| |
| Die Reihenfolge der Namensauflösung hängt von verschiedenen Faktoren ab, darunter das verwendete Betriebssystem, die verwendeten Protokolle ([[IP-Adresse|IP]] oder [[NetBIOS]] over TCP/IP) sowie Konfigurationsdateien und Optionen
| |
| * Hier sind einige Beispiele:
| |
|
| |
| # [[Betriebssystem]]: Die Priorisierung der Namensauflösung kann je nach dem verwendeten Betriebssystem unterschiedlich sein
| |
| * Zum Beispiel priorisieren [[Microsoft Windows XP|Windows XP]] und [[Microsoft Windows 2000|Windows 2000]] die DNS-Namensauflösung, während [[Windows NT]] die NetBIOS-Namensauflösung bevorzugt
| |
| # Verwendete Protokolle: Die Art der verwendeten Protokolle kann ebenfalls die Reihenfolge der Namensauflösung beeinflussen
| |
| * Wenn nur das IP-Protokoll verwendet wird, erfolgt die Namensauflösung in eine IP-Adresse ausschließlich über die DNS-Namensauflösung
| |
| * Wenn NetBIOS over TCP/IP verwendet wird, können sowohl die NetBIOS- als auch die DNS-Namensauflösung verwendet werden
| |
| # Konfigurationsdateien und Optionen: Die Reihenfolge der Namensauflösung kann auch durch Konfigurationsdateien und Optionen festgelegt werden
| |
| * Zum Beispiel legt bei UNIX-artigen Systemen die Datei "/etc/nsswitch.conf" (oder "/etc/netsvc.conf" bei [[AIX]]) die Reihenfolge fest
| |
| * Samba- und Samba-TNG-Server bieten die Option "name resolve order" zur Anpassung der Prioritäten
| |
| * In Windows kann die Reihenfolge seit [[Microsoft Windows NT 3.5|Windows NT 3.5]] unter dem Registry-Key "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\ServiceProvider" eingestellt werden
| |
| * Hierbei gilt: Eine niedrige Zahl bedeutet eine höhere Priorität
| |
| * Standardmäßig unter [[Microsoft Windows 7|Windows 7]] ist die Reihenfolge 1. lokaler Name, 2. Einträge in der "hosts"-Datei, 3. DNS und 4. NetBIOS
| |
|
| |
| == Sonderformen ==
| |
| *'''[[Host Header]] (HTTP-Server)'''
| |
| Mit diesem Verfahren kann ein [[Webserver]] so konfiguriert werden, dass Websites unterschiedlichen Namens dieselbe IP-Adresse haben
| |
| * Zur Unterscheidung nutzt der Webserver den im HTTP-Request enthaltenen Host Header
| |
| * Die verschiedenen Websites werden in diesem Fall auch als (namensbasierte) [[Virtual Hosting|Virtual Hosts]] bezeichnet
| |
|
| |
| ''Bildlicher Vergleich:''<br />Man ruft eine Telefonnummer an, die man auf einem der oben beschriebenen Wege ermittelt hat
| |
| * Dem sich (unter dieser Nummer) meldenden Gesprächspartner sagt man, wen genau man sprechen möchte
| |
|
| |
|
| [[Kategorie:Rechnernetze]] | | [[Kategorie:Rechnernetze]] |
| </noinclude> | | </noinclude> |