Teil I Einführung in die Systemverwaltung: IP Services
1. Oracle Solaris TCP/IP-Protokollfamilie (Übersicht)
Einführung in die TCP/IP-Protokollfamilie
Protokollschichten und das Open Systems Interconnection-Modell
So verarbeiten TCP/IP-Protokolle die Datenkommunikation
Datenkapselung und der TCP/IP-Protokollstapel
Anwendungsschicht: Beginn der Datenkommunikation
Transportschicht: Beginn der Datenkapselung
Internetschicht: Vorbereitung der Pakete für die Zustellung
Sicherungsschicht: Durchführen des Framing
Bitübertragungsschicht: Senden und Empfangen von Frames
So verarbeitet der empfangende Host das Paket
TCP/IP Internal Trace-Unterstützung
Weitere Informationen zu TCP/IP und dem Internet
Websites zum Thema TCP/IP und Arbeiten in Netzwerken
Requests for Comments und Internet Drafts
Teil II Administration von TCP/IP
2. Planen Ihres TCP/IP-Netzwerks (Vorgehen)
3. Einführung in IPv6 (Überblick)
4. Planen eines IPv6-Netzwerks (Aufgaben)
5. Konfiguration der TCP/IP-Netzwerkservices und IPv4-Adressierung (Aufgaben)
6. Verwalten von Netzwerkschnittstellen (Aufgaben)
7. Konfigurieren eines IPv6-Netzwerks (Vorgehen)
8. Verwaltung eines TCP/IP-Netzwerks (Aufgaben)
9. Fehlersuche bei Netzwerkproblemen (Aufgaben)
10. TCP/IP und IPv4 im Detail (Referenz)
12. Einführung in DHCP (Übersicht)
13. Planungen für den DHCP-Service (Aufgaben)
14. Konfiguration des DHCP-Services (Aufgaben)
15. Verwalten von DHCP (Aufgaben)
16. Konfiguration und Verwaltung des DHCP-Clients
17. DHCP-Fehlerbehebung (Referenz)
18. DHCP - Befehle und Dateien (Referenz)
19. IP Security Architecture (Übersicht)
20. Konfiguration von IPsec (Aufgaben)
21. IP Security Architecture (Referenz)
22. Internet Key Exchange (Übersicht)
23. Konfiguration von IKE (Aufgaben)
24. Internet Key Exchange (Referenz)
25. IP Filter in Oracle Solaris (Übersicht)
28. Verwalten von Mobile IP (Aufgaben)
29. Mobile IP-Dateien und Befehle (Referenz)
30. Einführung in IPMP (Übersicht)
31. Verwaltung von IPMP (Aufgaben)
Teil VII IP Quality of Service (IPQoS)
32. Einführung in IPQoS (Übersicht)
33. Planen eines IPQoS-konformen Netzwerks (Aufgaben)
34. Erstellen der IPQoS-Konfigurationsdatei (Aufgaben)
35. Starten und Verwalten des IPQoS (Aufgaben)
36. Verwenden von Flow Accounting und Erfassen von Statistiken (Aufgaben)
Dieser Abschnitt enthält eine umfassende Einführung in die in TCP/IP enthaltenen Protokolle. Obwohl diese Informationen nur als Hintergrundwissen dienen, sollten Sie die Namen der Protokolle kennen. Darüber hinaus sollten Sie wissen, was jedes einzelne Protokoll zu leisten hat.
„TCP/IP“ ist ein Akronym, das häufig für den Satz der Netzwerkprotokolle verwendet wird, aus denen sich die Internet Protocol-Familie zusammensetzt. Vielfach wird der Begriff „Internet“ verwendet, um sowohl die Protokollfamilie als auch das globale WAN-Netzwerk zu beschreiben. In diesem Buch bezieht sich „TCP/IP“ ausschließlich auf die Internet Protocol-Familie. „Internet“ bezieht sich auf das Weitverkehrsnetz (WAN) und die Einrichtungen, die das Internet überwachen.
Um Ihr TCP/IP-Netzwerk mit anderen Netzwerken zu vernetzen, müssen Sie eine einmalige IP-Adresse für Ihr Netzwerk beziehen. Zum Zeitpunkt der Erstellung dieser Publikation beziehen Sie diese Adresse von einem Internet Service Provider (ISP).
Wenn Hosts in Ihrem Netzwerk am Internet Domain-Namen-System (DNS) teilnehmen sollen, müssen Sie einen einmaligen Domänennamen beziehen und registrieren. Die Registrierung der Domänennamen wird von InterNIC über eine Gruppe von weltweiten Datenbanken koordiniert. Weitere Informationen zum DNS finden Sie im Systemverwaltungshandbuch: Naming Services und Directory Services (DNS, NIS und LDAP).
Die meisten Netzwerk-Protokollfamilien sind in mehreren Schichten unterteilt, die in ihrer Gesamtheit auch als Protokollstapel bezeichnet werden. Jede Schicht dient einem bestimmten Zweck. Jede Schicht ist sowohl auf dem sendenden als auch auf dem empfangenden System vorhanden. Eine bestimmte Schicht eines Systems sendet bzw. empfängt genau das gleiche Objekt, das der Peer-Prozess eines anderen Systems gesendet bzw. empfangen hat. Diese Aktivitäten treten unabhängig von anderen Aktivitäten in den Schichten über bzw. unter der betrachteten Schicht auf. Grundsätzlich agiert jede Schicht eines Systems unabhängig von den anderen Schichten auf dem gleichen System. Jede Schicht agiert parallel mit der gleichen Schicht auf anderen Systemen.
Die meisten Netzwerk-Protokollfamilien sind in Schichten aufgebaut. Die International Organization for Standardization (ISO) hat das Open Systems Interconnection (OSI)-Referenzmodell entworfen, in dem strukturierte Schichten verwendet werden. Das OSI-Modell beschreibt eine Struktur von sieben Schichten für Netzwerkaktivitäten. Jeder Schicht ist mindestens ein Protokoll zugeordnet. Die Schichten stellen die Datenübertragungsvorgänge dar, die allen Datenübertragungsarten zwischen kooperierenden Netzwerken gemein sind.
Das OSI-Modell führt die Protokollschichten von der obersten (Schicht 7) zur untersten (Schicht 1) auf. Dieses Modell wird in der folgenden Tabelle gezeigt.
Tabelle 1-1 OSI-Referenzmodell
|
Das OSI-Modell definiert konzeptuelle Vorgänge, die nicht an eine bestimmte Netzwerkprotokollfamilie gebunden sind. Beispielsweise implementiert die OSI-Netzwerk-Protokollfamilie alle sieben Schichten des OSI-Modells. TCP/IP verwendet ebenfalls einige Schichten des OSI-Modells, und fasst andere Schichten zusammen. Andere Netzwerkprotokolle, z. B. SNA, verwenden eine zusätzliche achte Schicht.
Das OSI-Modell beschreibt idealisierte Netzwerkverbindungen mit einer Protokollfamilie. TCP/IP entspricht in diesem Modell nur zum Teil. Es verbindet z. B. mehrere OSI-Schichten zu einer Schicht oder verwendet andere Schichten gar nicht. In der folgenden Tabelle sind die Schichten der Implementierung von TCP/IP in Oracle Solaris aufgeführt. In der folgenden Tabelle sind die Schichten von der obersten Schicht (Anwendung) zur untersten Schicht (Bitübertragung) aufgeführt.
Tabelle 1-2 TCP/IP-Protokollstapel
|
Die Tabelle zeigt die TCP/IP-Protokollschichten und deren Entsprechungen im OSI-Modell. Darüber hinaus sind Beispiele der Protokolle aufgeführt, die auf jeder Schicht im TCP/IP-Protokollstapel verfügbar sind. Jedes an einem Datenaustausch beteiligte System führt eine einmalige Implementierung des Protokollstapels aus.
Die Bitübertragungsschicht legt die Eigenschaften der für das Netzwerk verwendeten Hardware fest. Beispielsweise bestimmt die Bitübertragungsschicht die physikalischen Eigenschaften der Kommunikationsmedien. Die Bitübertragungsschicht im TCP/IP-Protokoll beschreibt Hardwarestandards wie IEEE 802.3, die Spezifikationen der Ethernet-Netzwerkmedien und RS-232, die Spezifikationen für standardmäßige Pin-Stecker.
Die Sicherungsschicht identifiziert den Netzwerkprotokolltyp des Pakets, in diesem Fall TCP/IP. Darüber hinaus bietet die Sicherungsschicht eine Fehlerkontrolle und Daten-Framing. Beispiele für Protokolle in der Sicherungsschicht sind Ethernet IEEE 802.2 Framing und Point-to-Point Protocol (PPP)-Framing.
Die Vermittlungsschicht, die auch als Internetschicht oder IP-Schicht bezeichnet wird, akzeptiert Pakete und gibt sie an das Netzwerk weiter. Diese Schicht umfasst das mächtige Internet Protocol (IP), das Address Resolution Protocol (ARP) und das Internet Control Message Protocol (ICMP).
Das IP-Protokoll und die dazugehörigen Routing-Protokolle sind wahrscheinlich die wichtigsten Protokolle der gesamten TCP/IP-Protokollfamilie. Das IP-Protokoll ist für Folgendes verantwortlich:
IP-Adressierung – die IP-Adressierungskonventionen sind Teil des IP-Protokolls. Erstellen eines IPv4-Adressierungsschemas enthält eine Einführung in die IPv4-Adressierung, Einführung in die IPv6-Adressierung in die IPv6-Adressierung.
Host zu Host-Kommunikation – Das IP-Protokoll bestimmt den Pfad, den ein Paket nehmen muss, anhand der IP-Adresse des empfangenden Systems.
Paket-Formatierung – Das IP-Protokoll setzt Datenpakete zu Einheiten zusammen, die als Datagramme bezeichnet werden. Datagramme sind ausführlich unter Internetschicht: Vorbereitung der Pakete für die Zustellung beschrieben.
Fragmentierung – Falls ein Paket zu groß für die Übertragung über das Netzwerkmedium ist, schlüsselt das IP-Protokoll das Paket auf dem sendenden System in kleinere Fragmente auf. Das IP-Protokoll auf dem empfangenden System setzt die Fragmente dann wieder zum Originalpaket zusammen.
Oracle Solaris unterstützt die Adressierungsformate IPv4 und IPv6, die beide in diesem Handbuch beschrieben werden. Um Missverständnissen vorzubeugen, wird eine der folgenden Konventionen bei der Bezeichnung der Internet Protocol-Versionen verwendet:
Wenn der Begriff „IP“ in einer Beschreibung verwendet wird, gilt die Beschreibung für IPv4 und IPv6.
Wenn der Begriff „IPv4“ in einer Beschreibung verwendet wird, geht die Beschreibung nur für IPv4.
Wenn der Begriff „IPv6“ in einer Beschreibung verwendet wird, geht die Beschreibung nur für IPv6.
Das Address Resolution Protocol (ARP) befindet sich zwischen der Sicherungs- und der Vermittlungsschicht. ARP unterstützt das IP-Protokoll dabei, Datagramme an das richtige empfangende System zu leiten, indem es Ethernet-Adressen (mit einer Länge von 48 Bit) zu bekannten IP-Adressen (mit einer Länge von 32 Bit) zuordnet.
Das Internet Control Message Protocol (ICMP) erkennt und meldet Fehlerzustände im Netzwerk. ICMP meldet Folgendes:
Verlorene Pakete – Pakete, die zu schnell ankommen, um verarbeitet zu werden
Konnektivitätsfehler – Ein Zielsystem kann nicht erreicht werden
Umleitung – Das Umleiten eines sendenden Systems, sodass es einen anderen Router verwendet
Kapitel 8Verwaltung eines TCP/IP-Netzwerks (Aufgaben) enthält weitere Informationen zu den Oracle Solaris-Befehlen, die das ICMP-Protokoll zur Fehlererkennung verwenden.
Die Transportschicht im TCP/IP-Protokoll stellt sicher, dass Pakete nacheinander und fehlerfrei eintreffen, indem es Bestätigungen für den Datenempfang sendet und verlorene Pakete erneut überträgt. Diese Kommunikationsart wird als durchgehende (End-to-End) Kommunikation bezeichnet. Transportschichtprotokolle auf dieser Stufe sind Transmission Control Protocol (TCP), User Datagram Protocol (UDP) und Stream Control Transmission Protocol (SCTP). TCP und SCTP stellen zuverlässige End-to-End-Services bereit. UDP stellt unzuverlässigen Datagramm-Service bereit.
TCP sorgt dafür, dass Anwendungen so miteinander kommunizieren können, als wären sie über einen Schaltkreis fest miteinander verbunden. TCP sendet Daten zeichenweise anstatt in diskreten Paketen. Die Übertragung setzt sich aus Folgendem zusammen:
Startpunkt, der die Verbindung öffnet.
Gesamte Übertragung in Byte-Reihenfolge.
Endpunkt, der die Verbindung schließt.
TCP fügt den übertragenen Daten einen Header hinzu. Dieser Header enthält zahlreiche Parameter, die Prozesse auf dem sendenden System dabei unterstützen, die Verbindung mit den Peer-Prozessen auf dem empfangenden System herzustellen.
TCP bestätigt, dass ein Paket sein Ziel erreicht hat, indem es eine End-to-End-Verbindung zwischen dem sendenden und dem empfangenden Host herstellt. Daher wird TCP als ein „zuverlässiges, verbindungsorientiertes“ Protokoll bezeichnet.
SCTP ist ein zuverlässiges, verbindungsorientiertes Transportschichtprotokoll, das Anwendungen die gleichen Services wie das TCP-Protokoll bereitstellt. Darüber hinaus kann das SCTP-Protokoll auch Verbindungen zwischen Systemen unterstützen, die über mehrere Adressen verfügen (Multihomed Systeme). Die SCTP-Verbindung zwischen dem sendenden und dem empfangenden System wird als Assoziation bezeichnet. Daten in der Assoziation sind in Datenblöcke aufgeteilt. Da das SCTP-Protokoll multihoming unterstützt, müssen bestimmte Anwendungen (insbesondere Anwendungen für die Telekommunikationsindustrie) über SCTP anstatt TCP ausgeführt werden.
UDP bietet einen Zustellungsservice für Datagramme. UDP überprüft keine Verbindungen zwischen sendenden und empfangenden Hosts. Da UDP keine Prozesse zum Herstellen und Überprüfen von Verbindungen ausführt, verwenden Anwendungen, die nur geringe Datenmengen senden, das UDP-Protokoll.
Die Anwendungsschicht definiert standardmäßige Internetservices und Netzwerkanwendungen, die jeder verwenden kann. Diese Services arbeiten zum Senden und Empfangen von Daten mit der Transportschicht zusammen. Auf der Anwendungsschicht existieren verschiedene Protokolle. Die folgende Liste zeigt Beispiele für Protokolle der Anwendungsschicht:
Standardmäßige TCP/IP-Services wie z. B. ftp, tftp und telnet-Befehle
UNIX „r“-Befehle, z. B. rlogin und rsh
Namen-Services, z. B. NIS und Domain-Namen-Service (DNS)
Verzeichnisservices (LDAP)
Dateiservices, z. B. der NFS-Service
Simple Network Management Protocol (SNMP), das eine Netzwerkverwaltung ermöglicht
Die Routing-Protokolle Router Discovery Server Protocol (RDISC) und Routing Information Protocol (RIP)
FTP und Anonymous FTP – Das File Transfer Protocol (FTP) überträgt Dateien von und an ein Remote-Netzwerk. Das Protokoll umfasst den Befehl ftp und den Daemon in.ftpd. Mit FTP kann ein Benutzer den Namen eines Remote-Host und Optionen des Dateiübertragungsbefehls an der Befehlszeile des lokalen Hosts eingeben. Der in.ftpd-Daemon auf dem Remote-Host verarbeitet daraufhin die Anforderungen vom lokalen Host. Im Gegensatz zu rcp arbeitet ftp auch dann korrekt, wenn der Remote-Computer kein UNIX-basiertes Betriebssystem ausführt. Zum Herstellen einer ftp-Verbindung muss sich ein Benutzer beim Remote-System anmelden, es sei denn, das Remote-System gestattet anonymes FTP.
Sie können enorme Datenmengen von anonymen FTP-Servern beziehen, die mit dem Internet verbunden sind. Diese Server wurden unter anderem von Universitäten und anderen Institutionen eingerichtet, um der Öffentlichkeit Software, Forschungsunterlagen und andere Informationen zur Verfügung zu stellen. Wenn Sie sich bei diesen Servern anmelden, verwenden Sie den Anmeldenamen anonymous, daher die Bezeichnung „Anonymer FTP-Server.”
Die Verwendung von anonymem FTP und das Einrichten von anonymen FTP-Servern wird in diesem Handbuch nicht beschrieben. Anonymes FTP wird jedoch in vielen Büchern wie z. B. The Whole Internet User's Guide & Catalog ausführlich beschrieben. Anweisungen zum Verwenden von FTP finden Sie im Systemverwaltungshandbuch: Netzwerkdienste. In der Manpage ftp(1) sind alle ftp-Befehlsoptionen beschrieben, die über den Befehlsinterpreter aufgerufen werden. In der Manpage ftpd(1M) sind alle Services beschrieben, die vom in.ftpd-Daemon bereitgestellt werden.
Telnet – Mit dem Telnet-Protokoll können Terminals und terminalorientierte Prozesse über ein Netzwerk, das TCP/IP ausführt, miteinander kommunizieren. Dieses Protokoll ist als telnet-Programm auf lokalen Systemen und als in.telnetd-Daemon auf Remote-Computern umgesetzt. Telnet bietet eine Benutzeroberfläche, über die zwei Host zeichen- oder zeilenweise miteinander kommunizieren können. Telnet umfasst verschiedene Befehle, die in der Manpage telnet(1) ausführlich dokumentiert sind.
TFTP – Das Trivial File Transfer Protocol (tftp) bietet ähnliche Funktionen wie ftp, aber das Protokoll stellt keine interaktive Verbindung wie ftp her. Aus diesem Grund können Benutzer nicht den Inhalt eines Verzeichnisses anzeigen oder Verzeichnisse wechseln. Ein Benutzer muss den vollständigen Namen einer zu kopierenden Datei kennen. Der Befehlssatz von tftp wird in der Manpage tftp(1) ausführlich beschrieben.
Mit den UNIX „r“-Befehlen können Benutzer Befehle an ihren lokalen Computern eingeben, die auf dem Remote-Host ausgeführt werden. Dazu gehören die folgenden Befehle:
rcp
rlogin
rsh
Hinweise zur Verwendung dieser Befehle finden Sie in den Manpages rcp(1), rlogin(1) und rsh(1).
Oracle Solaris bietet die folgenden Namen-Services:
DNS – Der Domain-Namen-Service (DNS) ist einer der Namen-Services, der vom Internet für TCP/IP-Netzwerke bereitgestellt wird. DNS führt die Auflösung von Hostnamen zu IP-Adressen durch. Darüber hinaus dient DNS als Datenbank für die Mail-Verwaltung. Eine vollständige Beschreibung dieses Services finden Sie im Systemverwaltungshandbuch: Naming Services und Directory Services (DNS, NIS und LDAP). Weitere Informationen finden Sie in der Manpage resolver(3RESOLV).
/etc-Dateien – Dieses ursprünglich Host-basierte UNIX-Namen-System wurde für eigenständige UNIX-Computer entwickelt und dann für die Verwendung im Netzwerk übernommen. Viele alte UNIX-Betriebssysteme und Computer verwenden dieses System noch immer, obwohl es für große und komplexe Netzwerke ungeeignet ist.
NIS – Der Network Information Service (NIS) wurde unabhängig von DNS entwickelt und hat eine etwas andere Aufgabe. Während der DNS Verbindungen vereinfacht, indem er Computernamen anstelle von numerischen IP-Adressen verwendet, konzentriert sich der NIS darauf, die Netzwerkverwaltung zu vereinfachen, indem er eine zentrale Steuerung verschiedener Netzwerkinformationen ermöglicht. NIS speichert Informationen zu Computernamen und Adressen, Benutzern, dem Netzwerk selbst und Netzwerkservices. Die NIS-Namespace-Informationen werden in NIS-Maps gespeichert. Weitere Informationen zur NIS-Architektur und zur NIS-Verwaltung finden Sie im Systemverwaltungshandbuch: Naming Services und Directory Services (DNS, NIS und LDAP).
Oracle Solaris unterstützt das LDAP (Lightweight Directory Access Protocol) zusammen mit dem Sun Open Net Environment (Sun ONE) Directory Server sowie andere LDAP Directory Server. Der Unterschied zwischen einem Namen-Service und einem Verzeichnisservice liegt im Funktionsumfang. Ein Verzeichnisservice bietet den gleichen Funktionsumfang wie ein Namen-Service und verfügt darüber hinaus über erweiterte Funktionen. Lesen Sie dazu Systemverwaltungshandbuch: Naming Services und Directory Services (DNS, NIS und LDAP).
Das NFS-Anwendungsschichtprotokoll bietet Dateiservices für Oracle Solaris. Ausführliche Informationen zum NFS-Service finden Sie im Systemverwaltungshandbuch: Netzwerkdienste.
Mit dem Simple Network Management Protocol (SNMP) können Sie das Layout Ihres Netzwerks und den Status der wichtigsten Computer anzeigen. Darüber hinaus können Sie mit SNMP komplexe Netzwerkstatistiken über Programme beziehen, die auf einer grafischen Benutzeroberfläche (GUI) basieren. Viele Unternehmen bieten Programmpakete zur Netzwerkverwaltung, die das SNMP umsetzen.
Das Routing Information Protocol (RIP) und das Router Discovery Server Protocol (RDISC) sind zwei verfügbare Routing-Protokolle für TCP/IP-Netzwerke. Eine vollständige Liste der verfügbaren Routing-Protokolle für Oracle Solaris 10 finden Sie in Tabelle 5-1 und Tabelle 5-2.