Win2000 TCP-IP.book Page XIX Thursday, March 30, 2000 10:05 AM Einleitung XX XXI XXIII XXIV XXV XXVI XXVI XXVI Kurzer geschichtlicher Abriss zu TCP/IP Das OSI-Modell der International Organization for Standardization (ISO) Das DARPA-Modell Überblick über die Netzwerkarchitektur von Windows 2000 Was Sie in diesem Buch finden Netzwerkmonitor-Traces Die Begleit-CD-ROM Fehler und Support Die TCP/IP-Protokollfamilie (Transmission Control Protocol/Internet Protocol) ist sowohl die Grundlage des heutigen Internets als auch vieler privater Computernetzwerke. Die TCP/IP-Protokollfamilie, die aus mehr als nur TCP und IP besteht, versetzt Computer in die Lage, innerhalb eines Netzwerkes miteinander zu kommunizieren. TCP/IP wurde ursprünglich entwickelt, damit ARPANET-Standorte miteinander kommunizieren konnten. Die ARPANET-Standorte verwendeten unterschiedliche Computer, die von unterschiedlichen Herstellern stammten und unterschiedliche Betriebssysteme ausführten. Das einzige verbindende Element war, dass sie ein gemeinsames Protokoll verwendeten. Als das ARPANET sich zum Internet mauserte, begannen viele Unternehmen, auf TCP/IP zu setzen. Der Active Directory (AD)-Dienst von Windows 2000 erfordert den Einsatz von TCP/IP im Netzwerk. Diese Einleitung stellte eine kurze Einführung in die TCP/IP-Protokollfamilie dar und umfasst: b Einen zusammengefassten Abriss der TCP/IP-Protokollfamilie. b Einen Blick auf das OSI-Modell (OSI = Open Systems Interconnection) und einen Vergleich mit dem von TCP/IP verwendeten Modell. b Einen Überblick über die Netzwerkarchitektur von Windows 2000, die verdeutlicht, wie TCP/IP implementiert wurde. Diese Einführung ist auch eine Grundlage für dieses Buch. XIX Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XX Thursday, March 30, 2000 10:05 AM Kurzer geschichtlicher Abriss zu TCP/IP Mitte bis Ende der sechziger Jahre begann das ARPA-Projekt des US-Verteidigungsministeriums (ARPA = Advanced Research Projects Agency, später auch als DARPA = Defense Advanced Research Projects Agency bekannt) mit der Forschung zum Aufbau eines Netzwerkes, das die verschiedenen ARPA-Vertragsnehmer miteinander verbinden sollte. Ein erster Vertrag wurde an Bolt, Baranek und Newman (BBN) gegeben (eine Consultingfirma in Cambridge, Massachusetts), um einen ersten »Interface Message Processor (IMP)« zu entwickeln. Der IMP, der heute wahrscheinlich Router genannt würde, wurde auf der Grundlage eines Honeywell 516-Minicomputers entwickelt und war ein System von der Größe eines Kühlschranks. In den Tagen der ersten IMPs gab es noch keine Protokolle zu kaufen – alles musste von Grund auf entwickelt werden. Das Konzept der Paketvermittlung war zwar nicht neu, aber es gab noch keine ernst zu nehmenden Implementierungen, die ARPA oder BBN hätten erwerben können. Der erste IMP wurde der University of California, Los Angeles (UCLA), gegen Ende des Sommers 1969 geliefert; der zweite IMP einen Monat später dem Stanford Research Institute. Weitere IMPs wurden in den folgenden Monaten und Jahren hinzugefügt und das ARPANET wurde langsam Realität. Während der siebziger Jahre wurden eine Reihe von Standorten miteinander verbunden und das ARPANET wuchs, anfangs mit linearer Rate (etwa ein System pro Monat), aber gegen Ende des Jahrzehnts stieg die Zahl exponentiell. Die ursprünglichen Protokolle und Adressierungsschemata waren innerhalb des ARPANETs durchaus geeignet, um die ersten IMPs miteinander zu verbinden und um zu beweisen, dass das Konzept eines heterogenen paketvermittelnden Netzwerks funktionierte, aber sie waren nicht skalierbar. Etwas Besseres wurde benötigt und in den späten siebziger Jahren begann die Entwicklung dessen, was wir heute als TCP/IP kennen. RFC 760, die das Internet-Protokoll (Internet Protocol = IP) beschreibt, wurde am 1. Januar 1980 veröffentlicht. Diese RFC wurde nachfolgend von RFC 791 ersetzt, die im September 1981 veröffentlicht wurde, zusammen mit einer RFC, die TCP (RFC 793) beschrieb. RFC 768, die UDP (User Datagram Protocol) definierte, wurde ein Jahr zuvor veröffentlicht. Diese RFCs umreißen die zentralen Komponenten der TCP/IP-Protokollfamilie und sind noch heute im Einsatz. Auch wenn sich einige Details geändert haben und einige zusätzliche Funktionalität hinzugefügt wurde, wie beispielsweise die Flusskontrolle in TCP, haben diese Protokolle dem Prüfstand der Zeit doch widerstanden und dienen weiterhin ihren Zwecken. Das Adressierungsschema von IP auf der Grundlage von 32 Bit großen IP-Adressen hat sich für das heutige Internet als inadäquat erwiesen, aber niemand hätte in den Siebzigern vorhersehen können, was einmal aus dem Internet werden würde. Vielleicht leistete die Veröffentlichung der BSD 4.2 UNIX-Version den größten Vorschub in Bezug auf die Akzeptanz von TCP/IP, denn diese UNIX-Version verfügte über eine eigene TCP/IP-Version. UNIX, das von den Bell Laboratories entwickelt wurde, war als möglicher ARPA-Minihost eingestuft worden, wie das in RFC 681 angedeutet wird. Es war aus den verschiedensten Gründen attraktiv, nicht zuletzt deshalb, weil Bell das Betriebssystem für eine nominale Gebühr von XX Einleitung Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XXI Thursday, March 30, 2000 10:05 AM 150 Dollar für Colleges und Universitäten lizenzierte (obwohl »nicht universitäre« Institutionen mit einer Lizenzgebühr von 20.000 Dollar belegt wurden). Mit der Verfügbarkeit von BSD 4.2 konnten sich viele Universitäten zusätzliche Minicomputer leisten, sowie die Software, um diese einzusetzen. Das Ergebnis war das explosive Wachstum des ARPANETs und die Entwicklung vieler Tools und Einrichtungen, die wir heute als gegeben hinnehmen, wie zum Beispiel das DNS-System (DNS = Domain Name Server). Das OSI-Modell der International Organization for Standardization (ISO) Die Entwicklung des ARPANETs wurde in einer akademischen Umgebung begonnen. Während der siebziger Jahre war jedoch der Bedarf nach offeneren Netzwerktechnologien zu einem heißen Unterhaltungsthema in der Computerindustrie geworden. Weil die Netzwerkwelten weitestgehend homogen aufgebaut waren, konnten die Computer verschiedener Hersteller im Allgemeinen nicht miteinander kommunizieren. 1977 begann die ISO mit der Entwicklung eines detaillierten Referenzmodells für die »Verbindung offener Systeme« (Open Systems Interconnection = OSI). Die Idee hinter dem OSI-Modell war, die Entwicklung von Software für ein offenes System anzuregen; ein System, das anderen System gegenüber offen in Bezug auf den Informationsaustausch war. Man ging davon aus, dass ein offenes System anwendbare Standards verwenden und deshalb interoperabel sein würde. Das OSI-Modell ist ein sehr verschwommener Standard, bei dem die Definitionen und viele der Begriffe vage gehalten sind. Dies war so beabsichtigt, um sicherzustellen, dass das Modell einen Implementierer nicht dazu zwingen würde, vorhandene Methoden und Terminologien verwenden zu müssen. Es wurde bezweckt, die Entwicklung von Protokollen zu fördern, um der Interoperabilität heterogener Systeme Vorschub zu leisten. Das OSI-Modell dient darüber hinaus auch als ein Referenzmodell, um Standards und Protokolle miteinander vergleichen zu können. Das OSI-Modell setzt die Prämisse voraus, dass die Kommunikation zwischen zwei Computern komplex genug ist, um sie nicht einfach als eine einzelne Entität betrachten zu können. Stattdessen sollten die Funktionen, die den Kommunikationsprozess ausmachen, in eine Reihe von separaten Schichten unterteilt werden, mit je einer höheren und einer niedrigeren Schicht, wobei sich die jeder Schicht zugewiesenen Funktionen auf die Funktionen der benachbarten Schichten stützen. Die genauen internen Aufbauten der Schichten waren jedoch ein den Entwicklern überlassenes Detail – das Ziel bestand darin, die Funktionen in jeder Schicht und die Schnittstellen zwischen den Schichten zu standardisieren. Das ISO/OSI-Modell besteht aus sieben Schichten, wie in Abbildung 1 verdeutlicht wird. Einleitung XXI Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XXII Thursday, March 30, 2000 10:05 AM Anwendung Darstellung Sitzung Abbildung 1: Die sieben Schichten des OSI-Modells der ISO. Transport Netzwerk Datenübertragung Physikalische Schicht In diesem Modell befinden sich Anwendung und Benutzer an der Spitze, während die physikalischen Kommunikationsmedien unten angeordnet sind. Die Funktionen der Schichten in aufsteigender Reihenfolge sind: b Physikalische Schicht (Physical Layer) Übergibt den Bitstrom an das physikalische Medium (den Draht) und empfängt die Bits von diesem. b Datenübertragung (Data Link Layer) Definiert das Konzept von Paketen, die einen Computer in die Lage versetzen, ein Paket an einen anderen Computer, der mit dem gleichen »Draht« verbunden ist, zu senden. Diese Schicht wird typischerweise in Form einer Mischung aus Hardware und Software implementiert. b Netzwerk (Network Layer) Versetzt zwei Endsysteme in die Lage, Pakete über ein Netzwerk auf der Grundlage der niedrigeren Schichten zu übertragen. Diese Schicht wird softwareseitig implementiert und ist schon an sich unzuverlässig, weil ein Paket, das über ein Netzwerk übermittelt wird, verloren gehen, falsch geroutet oder zerstört werden kann. Die höheren Schichten sind für die Zuverlässigkeit verantwortlich. b Transport (Transport Layer) Ermöglicht den zuverlässigen Transfer von Daten über das bereitgestellte Netzwerk. Nutzt die von der Netzwerkschicht gebotene End-to-End-Kommunikation und bietet Zuverlässigkeit. b Sitzung (Session Layer) Führt den Begriff von Sitzungen zwischen zwei Systemen ein, wobei die Computer in einer Sitzung den Status der Verbindung kennen und die Statusinformationen später als Basis für zukünftige Verarbeitungsschritte verwenden können. b Darstellung (Presentation Layer) Bedeutet die Übersetzung von Daten unterschiedlichster Formate, wenn erforderlich (z.B. zwischen ASCII und EBCDIC). Dadurch werden die Übertragungsformate von den Daten, mit denen die Anwendungen arbeiten, getrennt. b Anwendung (Application Layer) Für Anwendungen und Benutzer. Diese Anwendungen verwenden die anderen sechs Schichten, um eine Geschäftsfunktion auf der Grundlage des zugrunde liegenden Netzwerk zu implementieren. Die Entwickler des OSI-Modells hatten gehofft, dass die Hersteller Protokolle bereitstellen würden, die diesem Modell direkt zugeordnet werden könnten. XXII Einleitung Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XXIII Thursday, March 30, 2000 10:05 AM Aber mit sieben Schichten stellt dieses Modell einen beträchtlichen Overhead dar. Die Funktionen der einzelnen Ebenen müssen Prozeduren niedrigerer Ebenen aufrufen, was bedeutet, dass die Parameter der höheren Ebene zu verpacken und die Prozedur der niedrigeren Ebene aufzurufen ist, die dann die Parameter wieder auspacken und auswerten muss. Einige Implementierungen wurden zwar entwickelt, hatten aber kommerziell gesehen keinen besonders bedeutsamen Erfolg. Das DARPA-Modell Die Entwickler der TCP/IP-Protokollfamilie wählten ein einfacheres Modell mit weniger Schichten, um die Leistungsfähigkeit zu verbessern und die Implementierung zu erleichtern. Dieses Modell, das DARPA-Modell (Defense Advanced Research Projects Agency), ist einfacher aufgebaut als das ISO-Modell, denn es verfügt nur über vier Schichten. Das DARPA-Modell wird in Abbildung 2 gezeigt, die darüber hinaus einen Vergleich der beiden Modelle darstellt. Abbildung 2: Ein Vergleich von DARPA- und ISO-Modell. Die vier Schichten des DARPA-Modells sind weitestgehend mit denen des ISOModells kompatibel, auch wenn die Zuordnung nicht ganz einwandfrei ist. Die ISO-Sitzungsschicht lässt sich zum Beispiel nicht perfekt auf das DARPA-Modell abbilden. Darüber hinaus halten sich einige Protokolle nicht an das Modell. ATM (Asynchronous Transfer Mode) beispielsweise ist ein verbindungsorientiertes Protokoll, das effektiv in die Hardware implementiert wurde. Dennoch sind diese Modelle sehr nützlich, weil sie die mit der Computerkommunikation verbundenen komplexen Aufgaben in Teilbereiche zerlegen, die besser handhabbar sind HINWEIS Einleitung In diesem Buch verwenden wir sowohl das OSI- als auch das DARPA-Modell, wenn wir die TCP/IP-Protokollfamilie und die dazugehörigen Dienste erörtern. XXIII Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XXIV Thursday, March 30, 2000 10:05 AM Überblick über die Netzwerkarchitektur von Windows 2000 Eines der bemerkenswertesten Features von Microsoft Windows NT 3.1 war, dass es bei erster Verfügbarkeit bereits mit einer ganzen Palette von Netzwerkprotokollen ausgeliefert wurde. Diese kamen »mit der Box« und es gab keine Notwendigkeit, zusätzliche Software anzuschaffen oder hinzuzufügen, um das Windows NTBetriebssystem in die Lage zu versetzen, mit anderen Windows-Computern im Unternehmensnetzwerk zu kommunizieren. Diese Netzwerkprotokolle sind gereift und wurden weiter verbessert, und Windows NT hat sich zu Windows 2000 weiterentwickelt, aber das grundlegende Design ist weitestgehend unverändert geblieben. Eine der wichtigsten Charakteristiken des Netzwerkbetriebs mit Windows 2000 ist, dass die Administratoren das System mit Komponenten von Drittanbietern vollständig integrieren können. Darüber hinaus haben die Entwickler die Netzwerkkomponenten so ausgelegt, dass die Benutzer mit lokalen und entfernten Dateien auf ähnliche Art und Weise arbeiten können. Die Abbildung 3 zeigt einen groben Überblick über die Netzwerkarchitektur von Windows 2000. Abbildung 3: Die Netzwerkarchitektur von Windows 2000. Wie bei allen anderen Komponenten von Windows 2000 ist der Aufbau der Netzwerkarchitektur in mehrere Ebenen unterteilt, um Drittanbietern die Möglichkeit zu geben, unterschiedliche Komponenten hinzuzufügen. Microsoft stellt die Ebenen von TDI (Transport Driver Interface) und NDIS (Network Driver Inter- XXIV Einleitung Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XXV Thursday, March 30, 2000 10:05 AM face Specification) bereit, die Drittanbieter benutzen können, um neue Netzwerkkartentreiber, Transportprotokolle, Netzwerkprovider oder Redirector- und Serverkomponenten zu implementieren. Im unteren Bereich des Diagramms der Netzwerkarchitektur sind Netzwerkgeräte und Gerätetreiber zu finden. Das betrifft verbindungslose Adaptertypen wie Ethernet und Token Ring, WAN-Treiber (WAN = Wide Area Network) zur Unterstützung von WAN-Protokollen wie Frame Relay und X.25, sowie verbindungsorientierte Adapter wie ATM. Die NDIS-Schnittstelle repräsentiert eine Trennlinie zwischen den Transportprotokollen und der Netzwerkhardware und den Treibern. Diese Schnittstelle ermöglicht den Transportprotokollen, praktisch jeden Netzwerk-Gerätetreiber unmittelbar zu verwenden. Die Transportprotokolle umfassen die wichtigsten Komponenten der TCP/IPProtokollfamilie sowie NWLink (Microsofts Implementierung des IPX/SPX-Protokolls [IPX/SPX = Internetwork Packet Exchange/Sequenced Packet Exchange]), NetBEUI (NetBIOS Enhanced User Interface) und das DLC-Protokoll (DLC = Data Link Control). Darüber hinaus stellt diese Ebene die VPN-Protokolle wie PPTP und L2TP (VPN = Virtual Private Network) und einige der IPSecTreiber (IPSec = Internet Protocol Security) bereit. Das TDI, das oberhalb der Transportprotokolle angeordnet ist, bietet eine Schnittstelle zum Zugriff auf die Transportprotokolle für die Komponenten des Kernelmodus, wie Redirector- und Serverkomponenten. Am oberen Ende finden Sie die Netzwerkdienste, wie DHCP, DNS, WINS und IIS, die netzwerkfähige Anwendungen darstellen. Was Sie in diesem Buch finden Dieses Kapitel bot Hintergrundinformationen und einen Überblick zur Implementierung der TCP/IP-Protokollfamilie in Windows 2000. In den verbleibenden Abschnitten dieses Buches werden die TCP/IP-Protokolle und die dazugehörigen Netzwerkdienste von Windows 2000 in größerem Detail beschrieben. Wir haben dieses Buch in vier Teile gegliedert: b Die Schicht der Netzwerkschnittstelle Dieser Teil besteht aus zwei Kapiteln, welche die von Windows 2000 unterstützten LAN- und WAN-Technologien beschreiben und insbesondere erläutern, wie die IP-Datagramme transportiert werden. Dieser Teil beinhaltet darüber hinaus ein Kapitel zur Auflösung von Hardwareadressen. b Die Protokolle der Internetschicht Dieser Teil umfasst Kapitel, die IP (Internet Protocol), ICMP (Internet Control Message Protocol) und IGMP (Internet Group Management Protocol) beschreiben. Weiterhin haben wir ein Kapitel zu IPv6 (IP Version 6) in diesen Teil aufgenommen, auch wenn dieses Protokoll im Lieferumfang von Windows 2000 nicht enthalten ist. b Die Protokolle der Transportschicht Dieser Teil enthält Kapitel, die UDP und TCP beschreiben. b Protokolle und Dienste der Anwendungsschicht Dieser Teil enthält Kapitel, die die wichtigsten mit TCP/IP zusammenhängenden Dienste beschreiben, einEinleitung XXV Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XXVI Thursday, March 30, 2000 10:05 AM schließlich DHCP, DNS, WINS und IIS. Darüber hinaus enthält dieser Teil auch Kapitel zur Datei- und Druckerfreigabe unter Windows 2000, IPSec und VPNs. Netzwerkmonitor-Traces Überall in diesem Buch haben wir die Theorie mit Netzwerkmonitor-Traces untermauert. Diese zeigen das tatsächliche Verhalten eines Protokolls oder Dienstes »auf der Leitung.« Um das Buch als eine für Sie wertvolle Referenz zu gestalten, haben wir alle in diesem Buch angegebenen Traces auf der Begleit-CD zur Verfügung gestellt. Die in diesem Buch erwähnten und auf der Begleit-CD bereitgestellten Traces wurden mit Microsoft Netzwerkmonitor Version 2.0 von Systems Management Server V2.0 angefertigt. Windows 2000 Server Standard Edition, Windows 2000 Advanced Server und Windows 2000 Datacenter Server enthalten eine funktionsreduzierte Version von Microsoft Netzwerkmonitor 2.0, mit der Sie so gut wie alle Traces einsehen können. Einige der Traces sind jedoch nur mit der vollständigen Version komplett lesbar. Um auch jene Leser zu unterstützen, die nicht über die vollständige Version des Netzwerkmonitors verfügen, haben wir die Traces in Form von Textdateien ebenfalls bereitgestellt. Die Begleit-CD-ROM Im Lieferumfang dieses Buches befindet sich eine Begleit-CD-ROM mit folgendem Inhalt: b Ein vollständiger Satz an RFC-Dokumenten (RFC = Request for Comment) b Ein vollständiger Satz von Internetentwürfen RFCs werden könnten. Dokumente, die einmal zu b White Papers Wichtige auf TCP/IP bezogene Produktdokumentationen. b Netzwerkmonitor-Traces In den einzelnen Kapiteln werden Sie auf Inhalte der Begleit-CD durch das nebenstehende Symbol aufmerksam gemacht. RFCs und Internetentwürfe stellen einen vollständigen Satz an Dokumenten dar, wie diese zum Stand September 1999 beziehbar waren. Und wie es die Art bei solchen Buchprojekten ist, wird sich diese Liste wahrscheinlich bereits zum Zeitpunkt des Erscheinens dieses Buches geändert haben – aber alle implementierten RFCs sind auf der Begleit-CD enthalten. Fehler und Support Wir hoffen, dass dieses Buch keine Fehler hat und dass alles perfekt ist. Aber manchmal schleichen sich leider Fehler ein. Sollten Sie Fehler finden, bitten wir herzlich um Entschuldigung. Lassen Sie dies am besten Thomas wissen und schicken Sie ihm eine E-Mail in englischer Sprache an [email protected]. Eventu- XXVI Einleitung Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0) Win2000 TCP-IP.book Page XXVII Thursday, March 30, 2000 10:05 AM elle Fehler, die wir finden, plus Aktualisierungen, stellen wir ebenfalls in englischer Sprache unter http://www.kapoho.com/tcpip/default.htm bereit. Microsoft Press stellt Korrekturen zu den englischen Büchern im World Wide Web unter folgender Adresse zur Verfügung: http://mspress.microsoft.com/support/ Korrekturen und Support zu deutschen Büchern von Microsoft Press finden Sie auf der Website www.microsoft.com/germany/mspress. Bitte beachten Sie, dass über obige E-Mail-Adresse kein Produktsupport geleistet wird. Weitere Informationen über den Softwaresupport von Microsoft können Sie unter http://www.microsoft.com/germany/support/default.asp finden. Besuchen Sie www.microsoft.com, wenn Sie vollständige Softwareversionen von Microsoft bestellen wollen. Einleitung XXVII Lee, Davies: Micosoft Windows 2000 TCP/IP-Protokolle und Dienste (Microsoft Press, ISBN 3-86063-620-0)