Adressierung im Internet
1. Die Kommunikationsprotokolle im In-ternet
Die Regeln, nach denen die Kommunikation zwischen Computersystemen abläuft, werden als Protokoll bezeichnet. In der Regel sind diese Protokolle in Module unterteilt, wobei jedes Modul eine bestimmte Aufgabe innerhalb des Kommunikationsprozesses zu erfüllen hat (z. B. Verbindungsaufbau, Datenübertragung, Fehlerkorrektur, etc.). Die Funktionen der einzelnen Module wurden 1983 von der »Internationalen Standard Organisation« (ISO) standardisiert, und ihre Anzahl auf sieben festgelegt. Man spricht daher vom OSI-7-Schichten-Modell.
OSI-Schicht-l: Die Bitübertragungsschicht (Physical Layer)
Die Bitübertragungsschicht legt die elektrischen und mechanischen Parameter einer Kommunikationsbeziehung fest. Dazu gehören beispielsweise Spannungspegel, Datenübertragungsrate, Stecker, etc. Die Bitübertragungsschicht für die serielle Druckerschnittstelle eines Personalcomputers ist zum Beispiel durch die Schnittstellen-Spezifikation RS-232C festgelegt. Eine RS-232C-Schnittstelle benutzt demnach eine Schwellenspannung von ± 3 Volt bei einer maximalen Datenübertragungsrate von 20 kbit/s und einem DB-25 Datenstecker. Das Vorhandensein einer Schicht-l- Verbindung ist somit die Voraussetzung für jegliche Kommunikation.
OSI-Schicht-2: Die Sicherungsschicht (Data Link Layer)
Die Sicherungsschicht hat die Aufgabe, die zu versendenden Daten in sogenannte Datenpakete aufzuteilen. Zu diesem Zweck werden bestimmte Bitmuster eingefügt, die das Erkennen von Anfang und Ende dieser Datenpakete ermöglichen. Werden Datenpakete nicht oder nur unvollständigübertragen, so sorgt die Sicherungsschicht für die wiederholte Übertragung der verlorengegangenen Daten.
OSI-Schicht-3: Die Vermittlungsschicht (Network Layer)
Die wichtigste Aufgabe der Vermittlungsschicht ist die Auswahl der Übertragungs- wege für die Datenpakete. In den weitverzweigten Strukturen des Internet gibt es eine Vielzahl von Übertragungswegen, die ein Datenpaket zu ein und demselben Ziel führen können. Die Vermittlungsschicht wählt nun nach Kriterien wie Ûbertragungs- zeit, Auslastung des Übertragungsweges usw. den optimalen Weg für die Datenpa- kete aus.
OSI-Schicht-4: Die Transportschicht (Transport Layer)
Die Transportschichtübernimmt die Daten der ihrübergeordneten Sitzungsschicht, paßt sie an die Formate der OSI-Schicht-3 an und reicht sie an diese weiter.
OSI-Schicht-5: Die Sitzungsschicht (Session Layer)
Bei sogenannten Multi-User-Systemen haben mehrere Nutzer gleichzeitig die Möglichkeit, ein und denselben Computer zu benutzen. Die Aktivität jedes Benutzers wird dabei als Sitzung (Session) bezeichnet. Die Kommunikation von Sessions mit der Außenwelt wird von der Sitzungsschicht administriert.
OSI-Schicht-6: Die Darstellungsschicht (Presentation Layer)
Die Darstellungsschicht konvertiert die internen Darstellungsformate von Computer- systemen (z. B. Zeichencodes wie ASCII, EBCDIC, etc.) in die Standarddarstellung der Kommunikationsbeziehung bzw. des Netzwerkes. Dies erspart dem Benutzer die manuellen Einstellungen und Anpassungen des eigenen Systems an die Netzwerk- standardeinstellungen.
OSI-Schicht-7: Die Anwendungsschicht (Application Layer)
Die Anwendungsschicht beinhaltet schließlich die Dienstprogramme für die verschiedenen Funktionen, dieüber die Kommunikationsbeziehung bzw. das Netzwerk realisiert werden sollen. Dazu gehören beispielsweise Terminalprogramme, elektronische Post oder Dateitransfers.
Das Kommunikationsprotokoll im Internet ist das TCP/IP -Protokoll. TCP (Transmission Control Protocol) bezeichnet dabei ein OSI-Schicht-4-Protokoll, IP (Internet- Protocol) die darunterliegende OSI-Schicht-3. TCP/IP bildet gemeinsam mit den auf TCP aufbauenden Anwendungsprogrammen (Telnet, FTP, WWW, etc.) sowie mit den für IP geeigneten Transportmechanismen (Lokale Netze, X.25, SLIP, etc.) die Familie der TCP/IP -Kommunikationsprotokolle.
Abbildung in dieser Leseprobe nicht enthalten
Wie die Abbildung zeigt, ist das Internetprotokoll die Schlüsselkomponente der ge- samten Internet-Protokoll-Familie. Aufbauend auf IP -Verbindungen, nutzen die wich- tigsten Internet-Applikationen das »Transmission Control Protocol« (TCP), einige auch das »User-Datagram-Protocol« (UDP). UDP ist einfacher aufgebaut als TCP,überträgt die Daten wesentlich unzuverlässiger und ist auch aus sicherheitstechni- scher Sicht als bedenklich einzustufen. Wird beispielsweise die ursprüngliche Pake- treihenfolge während einer Übertragung verändert, so wird diese im Gegensatz zu TCP durch UDP nicht wieder hergestellt, da dieses Protokoll keinerlei Sequenznum- mern kennt. Weiters existiert in UDP keinerlei Mechanismus zur Bestätigung von vollständig empfangenen Paketen oder zur Anforderung einer erneuten Übertragung verlorener Daten. Beide Funktionen sind dagegen integraler Bestandteil von TCP.
Die Netzwerktopologien,über die die Internet-Protokolleübertragen werden können, sind vielfältig und reichen von lokalen Netze wie Ethernet, Token Ring, FDDI oder ATMüber Weitverkehrsnetze wie X.25 und Frame Relay bis zur seriellen Übertragung via Telefonleitungen (PPP oder SLIP).
1.1Das Internetprotokoll (IP)
Das Internet-Protokoll (IP) ist das Basis-Kommunikationsprotokoll im Internet. Die Art und Weise, mit der damit die Datenübertragen werden, wird als paketorientiert, ver- bindungslos und nicht garantiert bezeichnet. Paketorientiert bedeutet dabei, daß alle zuübertragenden Daten n Datenpakete zerlegt werden. Das Internet-Protokoll legt damit das Paketformat aller Datenübertragungen im Internet fest. Die Pakete werden ferner verbindungslosübertragen, das heißt, daß jedes Paket für sich betrachtet wird, und die Übertragung unabhängig von vorhergehenden oder nachfolgenden Pa- keten erfolgt. Nicht garantiert bedeutet schließlich, daß kein Mechanismus im Inter- net-Protokoll vorgesehen ist, der für eine wiederholte Übertragung von verloren ge- gangenen Paketen sorgt.
Abbildung in dieser Leseprobe nicht enthalten
Format eines IP-Datenpaketes: Die maximale Länge von IP -Datenpaketen beträgt 65.535 Bytes. Je nachdem,über welche Netzwerkinfrastruktur ein IP-Datenpaketübertragen wird, kann allerdings die Notwendigkeit bestehen, dieses zu fragmentieren, also in mehrere kleinere Datenpakete aufzuspalten. In lokalen Netzen vom Typ Ethernet beträgt die maximal zuübertragende Nutzlast pro Paket beispielsweise lediglich 1.500 Bytes. Auch manche Gateways sind nicht in der Lage, Pakete mit der maximalen Länge von 65.535 Bytes zuübertragen. Die Spezifikation des Internet-Protokolles sieht vor, daß ein Internetgateway bzw. eine Internetstation Pakete mit einer Mindestlänge von 566 Bytes verarbeiten können muß. Jedes Paket- Fragment hat selbst wieder das Format eines gewöhnlichen IP-Paketes. Die Belegung der drei Felder Identifikation, Flag und Fragment-Offset ermöglichen das Reassemblieren des ursprünglichen IP -Datenpaketes an der Zielstation. Die Fragmentierung kann durch das Setzen des ersten Flag-Bits auf den Wert Eins unterdrückt werden (Do-Not-Fragment-Bit). Kann ein Paket nichtübertragen werden, wird es verworfen.
Ein weiteres wichtiges Feld ist das Time To Live (TTL)-Byte. Dieses Feld beschränkt die maximale Zeitdauer, während der sich ein IP -Paket im Internet befinden darf. Während seiner Reise durch das Netzwerk wird der TTL-Zähler an jedem Vermitt- lungsknoten reduziert. Erreicht der Zähler den Wert Null, bevor das Paket sein Ziel erreicht hat, so wird es verworfen. Auf das Prüfsummenfeld, welches zur Verifizie- rung der fehlerfreien Übertragung der Header-Felder dient, folgen schließlich die 32 Bit langen Internetadressen von Sender und Empfänger des Datenpaketes sowie die Nutzlast.
Abbildung in dieser Leseprobe nicht enthalten
1.2 Das Transmission Controll Protocol (TCP)
Das zweitwichtigste Protokoll im Interner ist das auf IP aufsetzende Transmission Control Protocol. Der wichtigste Unterschied zu IP ist, daß TCP die Daten im Rah- men einer virtuellen Verbindung »garantiert«überträgt (zur Erinnerung: Das Internet- Protokollüberträgt verbindungslos und nicht garantiert!). Das heißt TCP fügt der IP - Funktionalität Mechanismen hinzu, dieüberprüfen, ob ein Datenpaket tatsächlich beim Empfänger eingetroffen ist. Geht ein Datenpaket verloren, so wird seine wie- derholte Übertragung angefordert. Das TCP-Protokoll teilt den zuübertragenden Datenstrom dazu zunächst in Segmente ein. Je nach Kapazität der Pufferspeicher der kommunizierenden Computersysteme wird dazu eine maximale Segmentgröße vereinbart. Die Standardsegmentgröße beträgt 536 Bytes (dies entspricht der Stan- dard-IP-Paketlänge von 566 Bytes minus den 40 IP -Header-Bytes). Jedes Segment wird vor seiner Übertragung mit einer fortlaufenden Segmentnummer, welche von der Empfangsstation zur Erkennung von verlorenen Datenpaketen sowie zur Emp- fangsbestätigung benutzt wird, versehen. Die Empfangsbestätigung wird nicht für jedes Paket durchgeführt, sondern nur für jedes n-te Paket, wobei n als Fenster- größe bezeichnet wird.
Abbildung in dieser Leseprobe nicht enthalten
Bei einer Fenstergröße von n kann die Sendestation n-Paketeübertragen, ohne auf eine Empfangsbestätigung der Empfängerstation zu warten. Spätestens nach dem Versenden des n-ten Paketes muß allerdings die Empfangsbestätigung für Paket Nummer 1 oder eines der später versendeten Pakete eintreffen. Erst dann darf Paket n + 1 gesendet werden. Die Empfängerstation bestätigt in der Regel ganze Gruppen von Paketen. Wird zum Beispiel mit der ersten Empfangsbestätigung Paketnummer n - 1 bestätigt, so gelten damit auch die Pakete 1 bis n- 2 als bestätigt. Anhand der fortlaufenden Sequenznummer kann die Empfangsstation ja erkennen, ob eine empfangene Paketsequenz unvollständig ist. Ist dies der Fall, so muß allerdings die gesamte Paketsequenz seit der letzten Bestätigung nochmalsübertragen werden.
Die Adressierung auf der Ebene von TCP erfolgtüber sogenannte Sende- und Empfangsports. TCP-Ports sind dabei jene Software-Adressen, an denen sich auf TCP aufsetzende Internet-Dienstprogramme orientieren. Soll zu einer Anwendung auf einem Computer eine TCP-Verbindung aufgebaut werden, so muß daher ihre TCP-Portnummer bekannt sein. Nach dem Aufbau der Verbindung, unter Angabe des betreffenden Ports, wird so unmittelbar zum betreffenden Dienstprogramm ver- zweigt.
Multitaskingfähige Computersysteme (Internet-Server) sind in der Lage, mehrere Kommunikationsprozesse mit unterschiedlichen Dienstprogrammen gleichzeitig ab- laufen zu lassen, wobei jedem Dienstprogramm eine andere Portnummer zugewie- sen ist. Die Portadressen für öffentliche Dienstprogramme (WWW, FTP, etc.) sind internetweit einheitlich festgelegt, die Portnummern für interne Applikationen können vom Systemverwalter beliebig im Portnummernbereich ab 1.024 konfiguriert werden.
Abbildung in dieser Leseprobe nicht enthalten
1.3 Das User Datagram Protocol (UDP)
Das ebenfalls auf dem Internet-Protokoll aufsetzende User-Datagram-Protocol ist eine simplifizierte Version von TCP, und beschränkt seine Funktionalität auf die Zu- ordnung von Applikationen zu UDP-Portadressen. Eine garantierte Übertragung der Datenpakete in der richtigen Reihenfolge kann UDP nicht leisten. Ereignisse wie Pa- ketverluste, Übertragungsverzögerungen oder vertauschte Paketreihenfolgen müs- sen von der jeweiligen auf UDP aufsetzenden Applikation kompensiert werden.
1.4 Internet-Protokolle für serielle Leitungen
Um unabhängig vom Ort jederzeit unbeschränkten Zugang zum Internet erlangen zu können, ist es notwendig, auchüber Telefonleitungen oder andere serielle Daten- wählleitungen das Internet Protocol (IP) benutzen zu können. Dies kann mit Hilfe des »Serial Line Interface Protocol« (SLIP) oder des »Point to Point Protocol« (PPP) ge- schehen.
Serial Line Interface Protocol (SLIP)
Das Serial Line Interface Protocol (SLIP) wurde 1984 von Rick Adams für die Berkeley Unix Version 4.2 entwickelt, um Internet-Protocol-Datenpaketeüber Telefonleitungen zuübertragen. Der dazu benutzte Algorithmus ist denkbar einfach. SLIP benötigt lediglich zwei Steuerzeichen, nämlich das END-Zei-chen (Oktal 300 bzw. Dezimal 192) sowie das ESC-Zeichen (Oktal 333 bzw. Dezimal 219) (nicht zu verwechseln mit dem ASCII-Escape-Zeichen!).
Um nun ein IP-Paket zu versenden, wird begonnen, die Daten zuübertragen. Am Ende des Paketes wird ein SLIP -END-Zeichen hinzugefügt. Tritt innerhalb der zu
Abbildung in dieser Leseprobe nicht enthalten
übertragenden Daten zufällig die Bitfolge des END-Zeichens selbst auf, so werden vor dieses zwei Bytes mit ESC und ein Byte mit der Bitfolge für Dezimal 220 eingefügt. Enthalten die Daten die Bitfolge des ESC-Zeichens, so werden zwei Bytes mit ESC und ein Byte mit der Bitfolge für Dezimal 221 eingefügt.
Einige SLIP -Implementationen fügen vor der Übertragung des Datenpaketes ein END-Zeichen ein, um etwaige Fehlerbytes, verursacht durch Leitungsstörungen, zu beseitigen.
Da SLIP kein offizieller Standard ist, gibt es auch keine eindeutig definierte maximale Paketlänge. Als Richtlinie wird im allgemeinen die SLIP -Implementation für das Berkeley-UNIX betrachtet, die eine maximale Paketlänge von 1.006 Bytes festlegt (ohne END und ESC Zeichen).
Aufgrund seiner Einfachheit ist SLIP sehr leicht zu implementieren und auch sehr weit verbreitet. Es gibt jedoch einige wesentliche funktionelle Einschränkungen. So können keine Adreßinformationenüber SLIP ausgetauscht werden. Beiden Computersystemen muß daher von vornherein die jeweilige andere IP-Adresse bekannt sein, um miteinander kommunizieren zu können.
SLIP besitzt des weiteren kein Protokoll-Typenfeld. Es kann daher nur ein Protokoll zur Zeitübertragen werden. Die Verbindung zweier Multiprotokoll-Systeme wird damit unmöglich.
Und schließlich ist in SLIP keinerlei Fehlerkorrekturmechanismus integriert. Diese Funktion kann zwar auch vom TCP-Protokollübernommen werden, es ist jedoch effizienter, wenn bereits auf unterster Übertragungsebene ein einfacher Korrekturmechanismus existiert. So müssen erst mehrere Paketeübertragen werden (je nach TCP-Fenstergröße), bis der TCP-Fehlerkorrekturmechanismus eingreifen kann. Bei Leitungen mit hoher Bitfehlerrate kann dies zu einer merklichen Reduktion der effektiven Übertragungsrate führen.
Das Point-to-Point-Protokoll (PPP)
Das Point-to-Point-Protokoll ermöglicht die Übertragung von Datenpaketen unterschiedlicher Protokolleüber serielle Datenleitungen. Es ist wesentlich komplexer als SLIP, und hat im Gegensatz zu diesem eine Vielzahl von Funktionen wie Fehlerkorrektur oder die Möglichkeit der Zuweisung von Netzwerkadressen implementiert.
PPP besteht aus drei Komponenten: der Enkapsulierung der Datenpakete, dem Link Control Protocol zum Aufbau der Datenverbindung sowie verschiedenen NetzwerkKontrollprotokollen zur Konfiguration der Parameter für die unterschiedlichen Netzwerkprotokolle (IP, IPX, DECnet etc.).
Die PPP-Enkapsulierung
PPP enkapsuliert die zuübertragenden Datenpakete in HDLC-Format (High-level Data Link Control). Abb. 4.15 zeigt das daraus resultierende Datenformat eines PPP- Datenpakets (bei asynchroner Übertragung werden von HDLC zusätzlich vor und nach jedem Byte ein Start bzw. Stop-Bit eingefügt. Diese Start- und Stop-Bits sind in 4.15 nicht berücksichtigt).
Abbildung in dieser Leseprobe nicht enthalten
Mit dem Flag-Feld 01111110 zeigt HDLC den Beginn bzw. das Ende eines Datenpaketes an. Das Adressenfeld wird für PPP immer mit der Bitfolge 11111111 belegt (der HDLC-Wert für »Alle Stationen«), das Kontrollfeld mit 00000011 (die HDLC-Belegung für Unnumbered Information (UI)). Im zwei Bytes langen Protokollfeld wird der Typ des enkapsulierten Protokolls angegeben (Abb. 4.15). Das Informationsfeld kann eine Länge zwischen 0 und 1.500 Bytes aufweisen. Abgeschlossen wird das Datenpaket durch eine 2 Byte lange Frame Check Sequence sowie das Ende-Flag 01111110.
Das PPP Link Control Protocol (LCP)
Das LCP-Protokoll hat die Aufgabe, die serielle Punkt-zu-Punkt-Verbindung aufzubauen, zuüberwachen, Netzwerk-Kontrollprotokolle aufzurufen sowie nach dem Ende der Datenübertragung die Verbindung wieder abzubauen. Werden in einem PPP-Paket LCP-Datenübertragen, so ist dieses am Protokoll-Typenfeld »hex c021 Link Control Protocol« erkennbar. Nachdem der Austausch von LCP- Konfigurationspaketen erfolgt ist, und ein »Configure-Ack«-Paket von der Gegenstelle erhalten wurde, wird die Datenleitung geöffnet. Nun kann (optional) die Leitungsqualität durch das Versenden von LCP Echo-Request- bzw. LCP Echo- Reply-Paketen getestet werden. Nach dieser Testphase ruft das Link- Kontrollprotokoll schließlich das gewünschte Netzwerk-Kontrollprotokoll-Programm (NCP Network Control Protocol) auf.
Das PPP Netzwerk-Kontrollprotokoll für IP
Für jedes Protokoll, dessen Übertragung von PPP unterstützt wird, gibt es ein Netzwerk-Kontrollprotokoll. Die entsprechende Implementation für das Internet- Protokoll nennt sich IPCP (IP Control Protocol). Die Aufgabe des IPCP ist es, die IP - Module auf den beiden kommunizierenden Computersystemen zu aktivieren bzw. zu deaktivieren. IPCP wird in PPP-Paketen mit dem Protokoll-Typenfeld »hex 8021 Internet Protocol Control Protocol«übertragen. Nachdem auch das IPCP die Datenleitung auf Netzwerk-Ebene geöffnet hat, können die eigentlichen IP -Paketeübertragen werden.
2 Die Verbindung von Netzwerken im Internet: Gateways und Router
Um Teilnetzwerke miteinander verbinden zu können, werden speziell dafür entworfene Computersysteme benötigt. Diese haben die Aufgabe, die Datenpakete aus einem Netzwerk A mit Ziel in einem Netzwerk B von A nach B zuübertragen und umgekehrt (Abb. 4.16). In welchem Netzwerk sich der Empfänger des betreffenden Datenpaketes befindet, kann aus seiner Internet-Zieladresse ermittelt werden.
Abbildung in dieser Leseprobe nicht enthalten
Die Computer, die diese Aufgaben erfüllen, werden als Router oder Gateways bezeichnet. Entscheidend für das Vermittlungsprinzip im Internet ist, daß die Weiterleitung von Datenpaketen auf Netzwerk-Ebene passiert, und nicht auf Computerebene. Das heißt, ein Gateway kümmert sich lediglich darum, daß ein Paket in sein Zielnetzwerk befördert wird, nicht jedoch darum, ob und wie es der Empfänger im Zielnetzwerk erhält. Die Menge der Informationen, die die Internet- Gateways für diese Aufgabe benötigen, ist daher proportional zur Anzahl der Netzwerke, nicht aber proportional zur Anzahl der Netzwerkteilnehmer!
Da die Vermittlung der Datenpakete auf der Ebene des Internet-Protokolles geschieht, sind aus Sicht der Internet-Gateways auch alle Netzwerke gleichberechtigt. Auf welcher Übertragungstechnologie das einzelne Netzwerk beruht
(Ethernet, X.25, PPP etc.), ist für Gateways nicht sichtbar. Dieser hohe Grad an Abstraktion von der tatsächlichen Infrastruktur der verschiedenen Teilnetze ist ein Hauptgrund für die Flexibilität und Zuverlässigkeit des Internet. Der Benutzer des Internet selbst befindet sich noch eine weitere Abstraktionsstufeüber den Gateways. Für ihn stellt sich das Internet als ein einziges riesiges Netzwerk dar, an welches jeder Netzknoten direkt angebunden ist.
Abbildung in dieser Leseprobe nicht enthalten
3 Die Adressierung im Internet
Die im Internet benutzte Adressierungsstruktur wurde mit dem Ziel geschaffen, eine möglichst effiziente Vermittlung der zuübertragenden Datenpaketeüber mehrere Teilnetzwerke hinweg zu gewährleisten. Die Internetadressen geben deshalb nicht nur darüber Auskunft, wer der betreffende Netzteilnehmer ist, sondern darüber hinaus auch, wo er sich befindet undüber welche Übertragungswege er erreichbar ist.
Jedem Internet-Teilnehmer wird eine, im weltweiten Internet einmalige, 32 Bit (4 Bytes) lange Internetadresse als Identifikation zugeordnet. Jede Adresse besteht dabei aus zwei Teilen: der Netzidentifikation (netid) und der Benut-zeridentifikation (host-id). Es gibt fünf verschiedenen Klassen von Internet-adressen A, B, C, D und E, die sich durch die Länge der Felder Netzidentifikation- bzw. Benutzeridentifikation unterscheiden.
Abbildung in dieser Leseprobe nicht enthalten
Die Schreibweise der Internetadressen ist im allgemeinen so, daß jedes Byte als Dezimalzahl dargestellt wird und durch einen Punkt vom Nachbar-Byte getrennt ist (z. B. 193.174.4.13). Jedem an das Internet angebundene Netzwerk wird so eine bestimmte Netzidentifikation zugeordnet. Die zu der jeweiligen Netzidentifikation gehörende Benutzeridentifikation kann der lokale Netzwerkbetreiber selbst vergeben. Jede Netzidentifikation der Internet-Adreßklasse A beinhaltet nun (da 21 Bit dafür zur Verfügung stehen) 221 oder 2.097.152 Benutzeridentifikationen. Allerdings stehen weltweit nur 126 Klasse-A-Adressen zur Verfügung. Die 16.383 Klasse-B-Adressen beinhalten dementsprechend 65.536 Benutzeradressen, die 2.097.151 Klasse-C- Adressen je 254 Benutzeridentifikationen. Die Zahl der zu vergebenden 32-Bit- Internetadressen ist somit beschränkt, und wird aufgrund des starken Wachstums des Internet in absehbarer Zeit erschöpft sein.
Aus diesem Grund wurde im November 1991 vom IAB (Internet Activities Board) die ROAD-Gruppe (Routing and Addressing) gegründet, die die Aufgabe hatte, das Internetprotokoll zuüberarbeiten. 1995 wurde diese verbesserte InternetprotokollVersion (IPv6 oder IPng next generation) vom IETF beschlossen, und löst seitdem (die Kompatibilität zur bestehenden IP -Version IPv4 ist gewährleistet) zunehmend die bestehende Internet-Protokollversion ab. Der Adreßraum von IPv6 umfaßt aufgrund von 128 Bits langen Adressen 2128 oder 1038 Adressen, womit das Problem der Adressenknappheit endgültig und auf Dauer gelöst ist.
Die 32-Bit-Internetadressen der Klasse D werden als Multicast-Adressen bezeichnet. Mit ihrer Hilfe können Datenpakete an bestimmte Gruppen von Empfängern gesendet werden. Bestimmte Multicast-Adressen werden dabei wie alle anderen Internetadressen zentral vergeben, andere sind zur vorübergehenden Benutzung frei verfügbar. Multicast-Adressen können allerdings ausschlieglich als Zieladresse verwendet werden, niemals als Senderadresse.
3.1 Besondere Internet-Adressen
Einige Netzwerkadressen sind für bestimmte Funktionen reserviert. Die wichtigsten dieser Adressen sind Broadcast- und Loopback-Adressen.
Broadcast-Adressen
Eine Broadcast-Adresse dient dazu, um ein bestimmtes Datenpaket an alle Knoten eines Netzwerkes zu versenden. Alle Bits des Feldes für Benutzeridentifikation werden dazu auf 1 gesetzt. Die Broadcast-Adresse für das Netzwerk 121 lautet somit 121.255.255.255 (acht binäre Einsen, dezimal ausgedrückt, ergeben 255!).
Abbildung in dieser Leseprobe nicht enthalten
Die Loopbackadresse 127
Die Klasse-A-Adresse 127 ist für sogenanntes Loopback reserviert. Pakete mit der Zieladresse 127.0.0.0 treffen so, ohne jemals auf das Netzwerk zu gelangen, unmittelbar wieder beim Sender ein und können zum Funktionstest verwendet werden.
Netzwerk- und Benutzeridentifikation mit dem Wert 0
Wird als Netzwerkidentifikation 0 angegeben, so bezeichnet dies automatisch das lokale Netzwerk. Die Benutzeridentifikation mit dem Wert 0 bezeichnet entsprechend den eigenen Netzknoten.
3.2 Das Routing-Prinzip im Internet: Subnet-Adreßmasken
Große Unternehmen betreiben Netzwerke, die aus mehreren tausend Benutzern und vielen hundert Teilnetzwerken (Subnetworks) bestehen. Da sie jedoch nicht auf den Vorteil einer einzigen Internetadresse verzichten wollen, wird ein Teil der verfügbaren Benutzeridentifikation dazu verwendet, die Internetadresse in mehrere Subnetzwerke zu strukturieren. Ein Netzwerk mit der Klasse-B-Adresse 128.69 könnte so beispielsweise in die Subnetzwerke A und B aufgeteilt werden, so daß Subnetz A nur den Adressenbereich 128.69.1.1 bis 128.69.1.254 benutzt, und Subnetz B den Bereich 128.69.2.1 bis 128.69.2.254. Die Verbindungskomponente zwischen beiden Netzwerken, ein Router, kann nun mit Hilfe einer sogenannten Subnet-Adreßmaske leicht feststellen, ob ein Datenpaket des einen Netzwerkes ein lokales Ziel besitzt, in das zweite Subnetzwerk vermittelt (geroutet) oderüberhaupt in ein anderes Internet- Netzwerkübertragen werden soll. Die Subnet-Adreßmaske für unser Beispiel wäre 255.255.255.0. Sie ist nichts anderes als eine Bitmaske, die Nullen für den Adressenbereich enthält, der für den lokalen Subnetzbereich vorgesehen ist, und Einsen für alle anderen Bits. In unserem Beispiel wertet der Router also nur die ersten drei Bytes der Zieladressen aus, da er damit bereits feststellen kann, ob ein bestimmtes Paket weitervermittelt werden muß oder nicht. Dies hat für den Router den enormen Vorteil, daß er in seinen Routing-Tabellen nicht mehr alle Computeradressen, sondern lediglich die Subnetzadressen der Teilnetzwerke vorhalten muß. Da die Zahl der Subnetze wesentlich geringer ist als die Anzahl der Computersysteme, ist die Routersoftware in der Lage, Vermittlungsentscheidungen wesentlich rascher durchzuführen. Dasselbe Vermittlungsprinzip wird von den Backbone-Gateways im Internet benutzt. Für alle angeschlossenen Providernetze sind Subnet-Masken definiert, wodurch eine effektive internetweite Vermittlungüberhaupt erst möglich wird.
Abbildung in dieser Leseprobe nicht enthalten
Falsch gesetzte Subnet-Adressmasken sind häufig die Ursache von Kommuni- kationsproblemen. Wird in unserem Fall die Subnet-Adreßmaske irrtümlich auf 255.255.0.0 gesetzt, so würde dies bedeuten, daß alle Datenpakete mit den Zieladressen 128.69.xxx.xxx nicht vermittelt werden (der Routerüberprüft lediglich die ersten beiden Bytes, und diese zeigen ihm an, daß sich das Paket bereits im richtigen Netzwerk befindet!). Jegliche Kommunikation mit dem Nachbarnetzwerk wäre unterbunden!!
3.3 Das Internet Domain-Namen-System
Zur leichteren Handhabung wird jeder Internetadresse auch ein Namen zugeordnet. 1986 enthielt die offizielle, zentral geführte Namensliste des Internet etwa 3.600 Namen. Diese flache Namenshierarchie ohne jede Strukturierung war damit bereits an ihre Grenzen gelangt. Es wurde immer schwieriger neue, noch unbesetzte Namen zu finden, und noch im selben Jahr wurde mit dem Domain-Namen-System eine hierarchische Namenstruktur eingeführt.
Wie bei der numerischen Schreibweise gliedert sich im Domain-Namen-System der Adreßname in einen Benutzerteil (user-id) und einen Netzwerkteil, der als Domain- Name bezeichnet wird. Die einer anderen Domain hierarchisch untergeordnete Domain wird als Sub-Domain bezeichnet. Der Domain-Name besteht demnach aus einer sogenannten Top-Level-Domain (der am weitesten rechts befindliche Name) sowie aus Sub-Domains. So ist der zugehörige Internetadreßname für die Adresse 15.29.120.137 beispielsweise idacom.hp.com (obwohl auch beim Adreßnamensystem die einzelnen Adreßteile durch einen Punkt unterteilt sind, korrespondieren diese Teile in keiner Weise mit den ebenfalls durch Punkte getrennten Bytes einer numerischen Internetadresse!). Die Anzahl der Subdomains ist beliebig, die Gesamtlänge des Domainnamens darf allerdings 24 Zeichen nichtüberschreiten.
Benutzeridentifikationen und Subdomains müssen so gewählt werden, daß sie innerhalb derübergeordneten Netzwerkstruktur nur einzigartig sind. Es darf also innerhalb des Netzwerkes idacom.hp.com nur einen einzigen Benutzer roland geben, genauso wie es innerhalb von hp.com nur ein einziges Netzwerk mit dem Namen idacom geben darf. Innerhalb des Netzwerkes ibm.com dürfte es dagegen ein zweites Netzwerk mit dem Namen idacom geben. Auch dieses könnte dann einen Benutzer mit der Benutzeridentifikation roland beinhalten.
Im allgemeinen werden Internetadressen vollständig mit Kleinbuchstaben geschrieben. Die Vermittlungssysteme erkennen jedoch auch Großbuchstaben oder auch eine Mischung aus Groß- und Kleinbuchstaben. In der Regel sollte allerdings die Kleinschreibung beibehalten werden.
3.4 Die Interpretation von Domain-Namen
Internetadressen können aus zwei, drei oder mehr Sub-Domains bestehen. Die Internet-Adresse
Othmar_kyas@hp-germany-om2.om.hp.com
spezifiziert beispielsweise das deutsche Internet-E-Mail-Gateway om2 von Hewlett Packard. Mail-Gateways sind spezielle Computer, die verwendet werden, um zentralisiert den E-Mail-Verkehr eines Unternehmens oder einer Benutzergruppe abzuwickeln. Dies dient in großen Organisationen abgesehen von Sicherheitsaspekten auch zur Vereinfachung der Internetadressen. So könnte der Benutzer roland@comp_a.firma.com, zur Verkürzung seiner E-Mail-Adresse ein Mail-Gateway benutzen. Die E-Mail-Adresse würde dann roland@firma.com lauten. Vom Mail-Gateway würde dann jedes E-Mail mit der Adresse roland@firma.com an den lokalen Knoten comp_a weitervermittelt. Dem Mail- Gateway muß dazu natürlich bekannt sein, welcher Computer dem betreffenden Benutzer zugeordnet ist.
Abbildung in dieser Leseprobe nicht enthalten
Um sicherzugehen, daß ein Benutzer E-Mails auchüber Mail-Gateways hinweg erhält, gibt es noch die Möglichkeit, im Benutzerteil der Adresse, getrennt durch das Prozentzeichen % oder den Schrägstrich /, zusätzlich das lokale Computersystem des Empfängers anzugeben. Die Adresse würde dann roland%com_a@firma.com lauten. Ist ein Mail-Gateway aufgrund der Netzwerkindentifikation nicht in der Lage, eine Nachricht eindeutig einem Benutzer zuordnen zu können, durchsucht es nämlich zusätzlich auch die Benutzeridentifikation nach Hinweisen, die auf das Computersystem des Empfängers schließen lassen.
So wie aus der Benutzeridentifikation des Internet-Domain-Namen häufig auf den Namen des Benutzers geschlossen werden kann, so können aus den Sub-Domain- Bezeichnungen Rückschlüsse auf Ort oder Organisation des Absenders getroffen werden. Man unterscheidet dabei die (älteren) dreistelligen Organisationsbezeichnungen sowie die zweistelligen geographischen Domainnamen. Die Top-Level-Domain-Organisationsbezeichnungen stammen noch aus der Zeit, als das Internet noch hauptsächlich auf Nordamerika beschränkt war. Mit der zunehmenden Internationalisierung des Internets wurden für alle an das Internet angeschlossenen Länder geographische Codes festgelegt:
Die Organisationsdomains werden auch heute noch ausschließlich vom NIC (Network Information Center - zentrale Stelle zu weltweiten koordinierten Vergabe von Internetadressen) in den USA vergeben und verwaltet. Soll die Top-Level- Domain beispielsweise com lauten, so muß diese direkt in den USA beantragt und registriert werden (http://www.internic.net). Gibt man sich mit den etwas weniger prestigeträchtigen Geographiedomains zufrieden, so können diese auch bei den jeweiligen nationalen NIC -Zentren (z. B. die Domain de für Deutschland beim DE- NIC) beantragt werden.
Abbildung in dieser Leseprobe nicht enthalten
3.5 Der Host-Befehl und das DNSProtokoll
Die Gateways im Internet, deren Aufgabe es ist, die IP -Datenpakete an ihr Ziel zu vermitteln, können dazu nicht die Domain-Namen benutzen, sondern sind auf die numerischen Internetadressen und die zugehörigen Subnetz-Adreßmasken angewiesen. Aus diesem Grund ist ein Mechanismus notwendig, der die vom Internet-Benutzer als Zieladresse angegebenen Domain-Namen in numerische Internetadressen umwandeln kann. Dies wird mit Hilfe des DNS-Protokolles (Domain Namen System) durchgeführt.
Gelegentlich kommt es vor, daß das lokale Gateway den angegebenen Domain- Namen nicht in eine numerische Internetadresse umwandeln kann. In diesen Fällen schafft gelegentlich die direkte Angabe der numerischen Adresse Abhilfe. Mit dem Befehl host <Domain-Name> bzw. host <Internet-Adresse> erhält man die jeweilige andere Schreibweise der Internetadresse angezeigt. Der Host-Befehl benützt das DNS-Protokoll, um die Zuordnung von numerischen Internetadressen zu Domain-Namen und umgekehrt durchzuführen. Dabei kommen sogenannte Namen-Server zum Einsatz, die, dezentral verteilt,überall im Internet zu finden sind. Die verschiedenen Namen-Server sind dabei analog zur Struktur des Namensystems selbst hierarchisch organisiert. Um einen Adreßnamen zuzuordnen, wird vom sogenannten Root-Server ein Namen-Server für die Top-Level-Domain des Namens ausgewählt. Dieser wählt wiederum für die erste Sub-Domain einen dafür zuständigen Namen-Server aus usw. Auf den jeweiligen Namen-Servern befinden sich die vier sogenannte Zonen-Datenbanken:
- Forward Zone
- Reverse Zone
- Localhost
- Reverse Localhost
In der Forward-Zone-Datenbank befinden sich die Zuordnungen der Domain-Namen zu den jeweiligen Internetadressen, in der Reverse-Zone-Datenbank eine umgekehrte Tabelle, mit Hilfe der, ausgehend von Internetadressen, die zugehörigen Domain-Namen gefunden werden können. Zu diesem Zweck wurde eine eigene Internet-Adressen-Domain (in-addr.arpa) definiert. Für die Internetadresse aaa.bbb.ccc.ddd kann so mittels der DNS-Anfrage ddd.ccc.bbb.aaa.in-addr.arpa der betreffende Domainname gefunden werden. Diese Anwendung dient insbesondere Diskless-Systemen dazu, ausgehend von der Internetadresse, die nach dem Systemstart mit Hilfe der Hardware-Adresse und dem RARP- Protokoll ermittelt wird, ihren Domain-Namen zu finden. Darüber hinaus benutzen aber auch Applikationen wie die Berkeley-Remote-Dienste »rlogin« oder »rsh« diese inversen DNS-Tabellen zur Authentifikation der Benutzer (eines der Kriterien für r-Befehle lautet ja: Benutzername und Internetadresse müssen korrespondieren). Die beiden Local-Host-Zonendateien dienen der Unterstützung des Loopback-Interfaces (Netzwerk 127.0.0.0).
Um nun nicht bei jedem Verbindungsaufbau (bei dem die Zieladresse als DomainNamen angegeben wird) auf die Domain-Namen-Server im Internet zugreifen zu müssen, und den Datenverkehr durch eine Vielzahl von DNS-Abfragen zu beeinträchtigen, legt jeder DNS-Server einen lokalen Pufferspeicher (Cache) an und wählt einen weiteren Namen-Server als »Secondary-Server« aus.
lm Cache-Speicher werden Domain-Namen und zugeordnete Internetadressen, die bereits einmal von lokalen Clients nachgefragt worden sind, abgespeichert. Nach einiger Zeit können die meisten DNS-Zugriffe vom lokalen Cache-Speicher aus beantwortet werden (Name Caching).
Der »Secondary DNS-Server« (meistübernimmt der DNS des Internet-Providers diese Aufgabe) dient dazu, den eigenen Server zu entlasten, und bei Problemen als Backup zu fungieren. Dazu werden die Zonen-Dateien des eigenen DNS-Servers regelmäüig auf den »Secondary Server«übertragen (Bulk-Zone-Transfer).
4 Das Internet Protocol Next Generation (IPv6)
Aufgrund des enormen Wachstums und der Vielzahl neuer, multimedialer und sicherheitskritischer Anwendungen wurde Anfang der neunziger Jahre klar, daß das Internet-Protocol in wesentlichen Punktenüberarbeitet werden mußte. Eine ganze Reihe von IETF-Arbeitsgruppen (Internet Engineering Task Force) beschäftigten sich aus diesem Grund seit 1992 mit Verbesserungsvorschlägen, und erstellten dazu insgesamt 25 RFCs (Request for Comment - Dokument mit Vorschlägen oder Richtlinien, die das Internet betreffen). Auf der Jahrestagung der IETF Ende Juli 1994 wurde schließlich die neue Version des Internetprotokolls IPv6 (oder auch IPng =next generation) verabschiedet. Die wesentlichen Neuerungen von IPv6 im Vergleich zur Vorversion IPv4 sind:
- Internetadressen mit einer Länge von 128 Bit (statt 32)
- Vereinfachtes Headerformat (Felder wie Time to Live, Type of Service fal- len weg)
- Opionale Authenifikation
- Opionale Verschlüsselung
- Multimediafähigkeit
- Kompatibilität zu der bestehenden IP -Version zur Sicherstellung eines nahtlosen Überganges
Eine der grundlegendsten und dringlichsten Erweiterungen des Internet-Prokolles war die Erweiterung des Adreßraumes. Mit der Umstellung der Adreßlängen von 32 Bits auf 128 Bits erhöht sich die Anzahl der möglichen Adressen auf 2128 (entspricht 1038 Adressen). Im Unterschied zur Nomenklatur von IPv4 werden diese 128-Bit- Adressen nicht durch einen einfachen Punkt, sondern durch einen Doppelpunkt getrennt. Eine gültige IPv6-Adresse lautet somit beispielsweise:
145:23:45:62:47:234:567:234:678:5:2:123:23:33:4:128
Die Zahl der 128-Bit-Internetadressen ist so groß, daß jedem einzelnen Internet-Host ein Subadreßraum im selben Umfang eingeräumt werden kann (32-Bit), wie er vor der Umstellung auf IPng für das gesamte Internet ausreichen mußte.
4.1 Das IPv6-Adressenformat
IPv6 unterscheidet drei Typen von Adressen: Unicast-, Cluster- und Multicast-Adres- sen. Cluster-Adressen definieren dabei zwar eine Gruppe von Netzknoten, müssen aber lediglich einem der Adressaten zugestellt werden. Im Gegensatz dazu werden Multicast-Pakete wie gewohnt an jeden der aufgeführten Adressaten versendet. Unicast-Adressen bezeichnen einzelne Netzknoten und werden hierarchisch gegliedert in folgenden Formaten vergeben:
- Provider-Adressen,
- hierarchische geographiespezifischeAdressen,
- hierarchische (ISO)-NSAP-Adressen,
- hierarchische IPS-Adressen,
- Adressen für den lokalen Gebrauch,
- Adressen für IP -Hosts.
Die Einführung von Provider-Adressen ermöglicht es den Kunden, ohne aufwendige Adreßänderungen ihren Internet-Provider zu wechseln. Die ersten drei Bit (010) ge- ben dabei den Adreßtyp des Providers an, worauf die eigentliche Provider-Identifika- tion und die Subscriber-ID der Provider-Kunden folgt. Erst im Anschluß daran begin- nen die Subnetz- und Host-Adressen des Anwenders. Beim Wechsel des Providers können so Subnetz- und Host-Adressen behalten werden. Vom neuen Provider muß lediglich dessen Provider-Identifikation sowie eine neue Subscriber-IDübernommen werden. Derselbe Vorteil gilt auch für Netzwerke, die zunächst noch keine Anbindung an das weltweite Internet benötigen, sich jedoch später aufwendige Rekonfiguratio- nen im Unternehmensnetzwerk ersparen wollen.
In diesen Fällen können die sogenannten Lokalen Adressen benutzt werden, die le- diglich die Subnetz- und Host-Kennung enthalten. Wird späterüber einen Provider ein Internetzugang eröffnet, so müssen lediglich die entsprechenden Provider und Subscriber-Kennungen ergänzt werden.
Um in einer Übergangsphase die problemlose Koexistenz von IPv4 und IPv6 Komponenten zu gewährleisten, werden IPv4-Adressen in das IPv6-Adressenformat integriert. Die ersten 80 Bits einer solchen IPv6 kompatiblen IPv4-Adresse werden dabei auf Null gesetzt, gefolgt von 8 Bits mit der Belegung FFFF0000. Die IPv4 Adresse wird in die verbleibenden 32 Bits unverändert eingefügt.
4.2 Das IPv6-Datenformat
Auch durch die Veränderung des IP -Datenformats selbst konnten in IPv6 eine Reihe von Verbesserungen erzielt werden. So ist der IPv6-Header, obwohl die neuen Adressen viermal länger sind, nur halb so lang wie ein IPv4-Header. Der IPv6-Hea- der besteht aus zwei Teilen, dem »Basic Header« und den Optionen. Der Basic Header beinhaltet die Felder:
- Versionsnummer (4 Bits)
- Flowlabel (28 Bits, wird zur Unterstützung von multimedialen, echtzeitkriti- schen Applikationen eingesetzt), Payload-Length (16 Bits)
- Next Header (8 Bits, gibt den nachfolgenden, enkapsulierten Headertyp an)
- Hop-Limit (8 Bits, wird bei jeder Vermittlung um 1 reduziert, bei Null wird das Paket verworfen)
- Senderadresse (128 Bits)
- Zieladresse (128 Bits)
Die Verbesserung der IP -Protokolleigenschaften wurde durch die Einführung von
optionalen Header-Teilen erzielt. Die Optionen können in Vielfachen von 8 Bytes beliebige Längen annehmen, so daß sich damit auch komplexe Funktionen wie Verschlüsselungs- oder Authentifikationsmechanismen realisieren lassen. Derzeit sind die folgenden optionalen Header definiert:
- Routing
- Fragmentierung
- Authentifizierung
- Security Encapsulation
- Hop-by-Hop Optionen
- End-to-End-Optionen
Routing-Verfahren wie OSPF, RIP oder IDRP können in IPv6 identisch wie bei IPv4 benutzt werden. Optional können von der Sendestation zur Routenwahl explizite Adreßfolgen angegeben werden, die der jeweilige Kommunikationspartner durch Umkehrung der Reihenfolge zur Versendung des Antwortpakets benutzen kann. Damit wird vor allem die Ankopplung von mobilen Computersystemen an das Inter- net unterstützt.
4.3 Authentifikation und Verschlüsselung mit IPv6
Mit den Optionen »Authentification« und »Security Encapsulation« können nun auch auf Ebene des Internet-Protokolles selbst Authentizität des Kommunikationspartner bzw. die Vertraulichkeit der Kommunikationsinhalte gewährleistet werden. Mit Hilfe des optionalen Authentification Headers kann dabei die Unversehrtheit des IPv6- Datenpakets gesichert werden. Dabei werden spezielle Hash-Funktionen (empfohlen wird das MD5-Verfahren) auf das zuübertragende Datenpaket angewendet, und die daraus resultierende Prüfzahl mit dem Authentification Headerübertragen (Hash- Funktionen haben die Eigenschaft, daß ihre jeweils inverse Operation extrem schwierig auszuführen ist. In den RFCs 1319,1320 und 1321 sind derartige Hash- Funktionen zur Benutzung als Message-Digests spezifiziert (MD2, MD4 und MD5)). Um zwei Eingaben zu finden, die dieselbe MD-Hash-Funktion erzeugen, sind im Durchschnitt 264 Versuche notwendig. Der Authentifikations-Header bietet zwar Schutz vor Manipulationen derübertragenen Daten, garantiert jedoch nicht die Ver- traulichkeit der Inhalte. Diese wird erst bei Benutzung des »Encapsulation Security Headers« gewährleistet. Damit können Teile das Datenpaketes oder auch die ge- samten Nutzdaten verschlüsseltübertragen werden.
Abbildung in dieser Leseprobe nicht enthalten
- Quote paper
- Christian Hammer (Author), 2000, Adressierung im Internet, Munich, GRIN Verlag, https://www.grin.com/document/101709
-
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X.