27.11.2001

DHCP

Wir haben grösstenteils Wiederholungen durchgeführt, um den gestrigen Tag aufzufrischen. Man kann einem Client Optionen übergeben. Clients sind ebenfalls in Klassen kombinierbar. Es gibt Hersteller- und benutzerdefinierte Klassen. Letztere kommen in Frage, wenn man nur ganz bestimmte Clients anders konfigurieren möchte... Die Herstellerspezifische erfolgt anhand des Betriebssystems, die Benutzerdefinierten sind frei wählbar.

Clients können IP-Adressen reserviert werden. Die Clients werden anhand ihrer MAC-Adresse erkannt.

Zusätzlich  gibt es noch Bereiche (scopes). Somit kann man Rechner zu Gruppen zusammenfassen. Das Einschliessen von mehreren Scopes nennt man Superscopes:

Ein gutes Beispiel für Multicasts sind Betriebssysteminstallationen für Clients...

Geroutete Netze:

Die Alternative ist ein BootP-fähiger Router, der DHCP-Broadcasts weiterleitet. Eine andere, sehr ausfallsichere Methode ist ein eigene DHCP-Server in jedem Teilnetz. Hauptsächlich nimmt man aber folgende Methode:

Wenn man in einem gerouteten Netzwerk DHCP einsetzt, ist eine Möglichkeit, in jedem Teilnetz einen DHCP-Relay-Agent aufzustellen. Dieser muss die Adresse des Routers als Gateway und den DHCP-Server kennen. Konfiguriert wird das unter Routing und RAS. Dort unter IP-Routing\allgemein(RM)\neues Routingprotokoll. Die Konfigurationseinstellungen sind u.a. die IP-Adresse des DHCP-Servers, die Zeitverzögerung und der Hop-Count. Standardmässig sind beide Werte auf 4 bzw. 4sec. Die Zeitverzögerung ist sinnvoll, wenn man zur Fehlertoleranz einen DHCP-Server neben dem Agent stehen hat. So wird sichergestellt, dass erst der eigene DHCP-Server antwortet, bevor der DHCP-Relay-Agent weiterleiten darf.

Somit kommen wir zu folgendem Thema:

Fehlertoleranz in DHCP-Netzen:

Meistens nimmt man in jedem Teilnetz einen DHCP-Server und einen DHCP-Relay-Agent. Die Server haben Adressbereiche des eigenen Netzes von ca. 75%. 25% sind von dem jeweils anderen Teilnetz.

Zusätzliches zu DHCP:

DHCP kann das LAN auch überwachen und dementsprechend Meldungen generieren. Diese sieht man im Systemprotokoll der Ereignisanzeige (standardmässig zumindest das Starten, Beenden und schwere Fehler)

Die Datei, die der DHCP-Server erzeugt, heisst DHCPSrvLog.*. Es entstehen Endungen, die die Wochentage kennzeichnen. Gespeichert werden diese im Systemroot (Winnt\system32) in dem Unterverzeichnis dhcp.

Weiterhin gibts auch eine DDNS-Unterstützung:

Die Erweitert-Karteikarte bietet einige Optionen zu Datenbank:

Dort wird auch eine Backup-Variante der Datenpack gespeichert. Die Datenbank selbst ist eine MDB-Datei. Das JetPack-Tool überprüft die Konsistenz der Datenbank und kann sie komprimieren. Dazu muss aber der Dienst vorher deaktiviert werden. Man kann mit dem Befehl jetpack dhcp.mdb tmp.mdb. Danach kann man den Dienst wieder starten. Falls das misslingt, kann man das Backup aus dem Unterordner backup\jet\new wieder zurückspielen oder das letzte Systembackup wieder rückspielen.

Zusätzlich kann man eine Konflikterkennung starten, d.h. der Server schaut, ob die Adresse schon vergeben wurde, und man kann angeben, auf welchen Schnittstellen (Netzwerkkarten) der DHCP-Server arbeiten soll.

 

DNS

Wir haben gelernt, dass die Namen hierarchich auf Basis verteilter Datenbanken (Zonen) im DNS aufgebaut sind. Es gibt einen Root, welcher als Punkt dargestellt wird, und die darunterliegenden TLD's (Top Level Domains: de, com, org...). Darunter die SLD (2nd Level Domain) namens microsoft.com z.B. In diesen Domains gibt es Rechner oder weitere Domains. Stellen wir uns vor, es existiert eine weitere Domain namens Sales und darin ein Rechner namens Billy. Ein Zone ist jetzt z.B die com-Domain, die microsoft-Domain, die Sales-Domain und der Rechner Billy. Eine andere Zone wäre in der TLD de die Domain HH. Registrierungspflichtig sind die SLD bei der DeNic, der InterNic, oder bei Providern, die sich die Domains schon gesichert und registriert lassen haben, o.ä. Ein FQDN in unserem Beispiel Billy.sales.microsoft.com, setzt sich also aus Host.Domainname zusammen. Jeder Abschnitt kann maximal 63 Zeichen lang sein, wobei der gesamte FQDN nur max. 255 Zeichen enthalten darf. Der Namen ist nicht case-sensitiv. W2k kann UniCode, aber man sollte sich trotzdem in normalen Restriktionen bewegen.

Die Namensauflösung erfolgt in zwei Richtung: bei forward wird der Name in Adresse aufgelöst, bei reverse die IP-Adresse in den Namen. Sinnvoll ist das für Programme wie tracert oder nslookup. Ein DNS-Client fragt den DNS-Server,ob er den von uns eingegebenen FQDN kennt. D.h. er muss wissen, wer der DNS-Server ist. Man kann einen bevorzugten und mehrere alternative DNS-Server eingeben, dochdie Alternativen werden nur abgefragt, falls der bevorzugte definitv nicht erreichbar ist.

Bevor aber ein Server gefragt wird, macht ein Client folgende drei Schritte: er fragt, ob er das selber ist. Er fragt danach seinen Cache, ob dort die Adresse schon steht. Er schaut in seine Hosts-Datei. Diese ist ein Relikt und kann u.U. noch benutzt werden, um Namen einzutragen. Diese komplette Abfrage nennt man rekursiv, weil der Client eine vollständige Rückantwort erwartet, oder ein nein.

Der Server fragt ebenfalls seinen Cache. Erst wenn er dort nix findet, schaut er in seine Zonen(datenbank), sofern er überhaupt welche besitzt. Es gibt auch Cache-DNS-Server, die keine Zone haben, aber einen grösseren Cache. Hat der DNS-Server diesen Eintrag nicht in seiner Zone, fragt er direkt den Root-Server. Dieser hat nur eine Zone, die Root-Zone. Der Root-DNS-Server schaut in seinen Cache, und wenn er dort nix findet, die Root-Zone.

Jetzt geschieht eine iterative Abfrage: Der Root-Server gibt die Adresse des com-Servers an den DNS-Server, wenn es diese Zone gibt. Wenn nicht, bekommt der DNS-Server trotzdem eine Antwort. Dieser fragt den com-Server nach der microsoft-Adresse. Bekommt er die, fragt er den microsoft-Server nach der sales-Adresse, usw.

 

Bei der Client-Konfiguration (W2k: Systemeigenschaften\Netzwerkidentifikation) gibt man den Namen des Rechners an und dessen Domänensuffix.Es kann auch ein völlig anderer NetBIOS-Name sein. Das Häkchen heisst, dass der Rechner beim Eintritt in eine Domäne automatisch deren Suffix übernimmt. Zusätzliche Einstellungen kann man in den TCP/IP-Eigenschaften der Netzwerkkarte in der Registerkarte DNS ändern.

Von den dort eingetragenen DNS-Servern antwortet immer nur der erste, der erreicht wird.

Das Häkchen für primäre und verbindungsspezifische DNS-Suffixe bedeutet nichts weiter als: wenn wir einen ping zu dem Host Billy setzen, setzt der DNS-Server automatisch billy.sales.microsoft.com und danach billy.microsoft.com dahinter. Er sucht alle eventuellen Hosts bis zur SLD ab. Wenn wir in dem unteren Feld die Adresse microsoft.com eingeben, und im Internetexplorer www eingeben, landen wir automatisch auf der Website von microsoft.

Nicht vergessen: Das ist nur die Clienteinstellung! Befindet sich ein Client in einer anderen Zone, kann er ping billy nicht erreichen. Setze ich den Client in die richtige Zone und passe seine Einträge an, findet er ping billy trotzdem nicht... Der Grund: mit ipconfig /displaydns zeigt uns den cache und ipconfig /flushdns leert ihn. Jetzt findet er ihn auch... Die Einträge bleiben ca. eine Stunde standardmässig im Cache.

Die Hosts-Datei, die sich in winnt\system32\etc befindet, wird zeilenweise abgearbeitet und besteht aus folgenden Einträgen:

[IP-Adresse] [Name]. Zum Beispiel ist dort der localhost integriert.

Zur Installation eines DNS-Servers sollte dieser eine statische IP-Adresse besitzen und der DNS-Serverdienst installiert (Systemsteuerung\Software\Netzwerk...) und gestartet sein. Standardmässig kann ein solcher DNS-Server je nach Installation Anfragen annehmen, weiterleiten (an Root-Server) und Ergebnisse cachen. Konfigurieren kann man u. a. die Eigenschaften und die Zonen. Die Einträge für die Zonen sind folgende: SOA, NS, A, MX und PTR.

SOA der für diese Zone zuständige DNS-Server
NS k.A
A Aliasname
MX k.A
PTR k.A

Es gibt folgende Zonentypen: primäre, sekundäre und Active Directory integriert. Active Directory funktioniert natürlich nur unter W2k. Eine Zone ist eine Art Erweiterung der Hosts-Datei. Primär ist die Ausgangszone und die Einzige, die man ändern kann. Eine sekundäre ist eine schreibgeschützte Kopie einer primären Zone.