Das IP, das auf der Ebene 3 des ISO/OSI-Referenzmodelles angesiedelt ist, kümmert sich darum, daß Datenpakete von einem Rechner zu einem anderen gelangen. Es stellt den höheren Schichten im ISO/OSI-Referenzmodell unter anderem folgende Dienste zur Verfügung:
Das IP ist ein unzuverlässiger verbindungsloser Paketübermittlungsdienst (send and pray):
Um die vorhandenen Unzulänglichkeiten auszugleichen, wird das IP meist in Verbindung mit dem TCP (Transmission Control Protocol) eingesetzt.
Damit eine Verbindung von einem Rechner zu einem anderen aufgebaut werden kann, muß jedem Rechner eine eindeutige IP-Adresse zugewiesen werden.
Im derzeitigen Standard IPv4 (Internet Protocol Version 4)
besteht diese Adresse aus 4 Oktetts. Jedes Oktett entspricht einem
Byte (0-255). Damit lassen sich
verschiedene
Adressen darstellen. Langsam wird dieser Adreßraum aber knapp. Im
zukünftigen IPv6-Standard (siehe Abschnitt 4.4) wird die Adresse deshalb
vergrößert. Im Allgemeinen werden die Oktetts dezimal ausgeschrieben
und durch Punkte getrennt. Eine typische IP-Adresse sieht zum Beispiel
so aus:
192.168.0.101
Jede IP-Adresse ist weltweit eindeutig und wird von der IANA an die drei Organisationen APNIC, ARIN und RIPE vergeben, die diese dann wiederum an Endkunden (Firmen oder Internetprovider) verteilen. Weitere Informationen gibt es bei den entsprechenden Organisationen:
Jeder von uns kennt Internet-Adressen in der Form http://www.kernel.org - wenn das Internet aber hauptsächlich über TCP/IP läuft, warum sehen dann die Adressen so anders aus?
Der DNS (Domain Name Service) setzt die Namen von der Form von http://www.kernel.org in eine IP-Adresse der Form http://206.184.214.34 um. Dazu wird ein sogenannter Nameserver benutzt. Alle Adressen liegen ein einer großen hierarchischen, weltweit verteilten Datenbank. Wenn ein Nameserver eine Adresse nicht umsetzen kann, gibt er die Anfrage an einen ihm übergeordneten Nameserver weiter.
Durch dieses Verfahren sind die Adressen leichter zu merken (aussagekräftige Namen statt Zahlenkolonnen) und leichter zu administrieren (wenn ein Rechner eine andere IP-Adresse bekommt, muß nur der Eintrag auf dem Nameserver geändert werden, der Name, unter dem er zu erreichen ist, bleibt gleich).
Jede Adresse wird in einen Netzwerk- und einen Rechnerbereich (auch Hostbereich) aufgeteilt. Dafür wird eine sogenannte Subnetzmaske eingerichtet, die angibt, wieviele Bits einer Adresse zum Netz und wieviele zum Rechner gehören. Hier ein Beispiel in dezimaler und binärer Notation:
| dezimal | Netzwerk | Host | |
| Subnetzmaske: | 255.255.255 | . | 000 |
| IP-Adresse: | 192.168.000 | . | 101 |
| binär | Netzwerk | Host | |
| Subnetzmaske: | 11111111.11111111.11111111 | . | 00000000 |
| IP-Adresse: | 11000000.10101000.00000000 | . | 01100101 |
Dieses Beispiel würde 256 Rechner im Netzwerk 192.168.0.x
erlauben. Es kann jetzt für jede beliebige Adresse festgestellt
werden, ob sie im eigenen Netzwerk oder in einem anderen Netzwerk
liegt (wichtig für Router, Bridges und Internet-Gateways).
Da es am einfachsten zu lesen und zu rechnen ist, sollte die
Subnetzmaske aus einem durchgängigen Bereich von binären Einsen
bestehen
. In diesem Fall hat es sich eingebürgert, die
Einsen zu zählen und in der Kurzform /n aufzuschreiben
(n ist die Anzahl der Einsen). Eine Angabe von
192.168.0.0/24 bedeutet also Netzadressen im Bereich von
192.168.0.x mit einer Subnetzmaske von 255.255.255.0 (24
Einsen).
Bestimmte Standard-Subnetzmasken werden verschiedenen Netzklassen zugeordnet. Für jede dieser Klassen gibt es Bereiche, die nicht zentral vergeben werden und für jedermann frei verfügbar sind (zum Beispiel für das kleine Privatnetz zu Hause):
255.0.0.0. Das erste Bit der Adresse (ganz links)
muß auf 0 gesetzt sein. Der Bereich 10.0.0.0/8 kann von
jedermann frei verwendet werden.
1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ !0! Netzwerk ! Host ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
255.255.0.0. Die ersten beiden Bits der Adresse müssen
10 sein. Mit den Bereichen 172.16.0.0 bis
172.31.255.255 stehen 16 Klasse B-Subnetze für jedermann zur Verfügung.
1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ !1 0! Netzwerk ! Host ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
255.255.255.0. Die ersten drei Bits der Adresse müssen
110 sein. Die 256 Klasse-C-Netze von 192.168.0.0/24 bis
192.168.255.0/24 sind frei verfügbar und sehr häufig in ,,zu
Hause-Netzwerken`` anzutreffen
.
1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ !1 1 0! Netzwerk ! Host ! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Daneben gibt es noch Klasse-D- (beginnened mit 1110) und
Klasse-E-Netze (beginnend mit 1111), diese dienen aber
Spezialfällen und deshalb wird hier nicht weiter auf sie eingegangen.
Eine Broadcast-Adresse teilt dem Rechner mit, wie er alle Rechner in
seinem Netz auf einmal erreichen kann (sog. Broadcast). Dabei
werden einfach alle Bits im Rechnerbereich der Adresse auf Eins gesetzt
(allgemeingültige Definition für ALL-ONE-Broadcasts). Die
Standard-Broadcast-Adresse für einen Rechner aus dem Netz
192.168.0.0/24 wäre demnach 192.168.0.255.
Mit einer Adresse, die im ersten Oktett eine 127 enthält,
adressiert sich jeder Rechner selbst (Loopback), was zu Tests
der Netzwerksoftware benutzt werden kann. Eine solche Adresse soll
niemals ,,auf dem Kabel zu sehen sein``.
Adressen aus den Klasse-D- und -E-Netzen sind für bestimmte Zwecke
reserviert. Die Adressen 224.x.x.x bis 255.x.x.x sollten
deshalb nicht benutzt werden. Genauere Informationen dazu stehen
im RFC 2236.
Das Weiterleiten von Daten von einem in ein anderes Netzwerk wird
Routing
genannt. Zwangsläufig benötigt jeder
Router deshalb wenigsten zwei verschiedene (logische)
Netzanschlüsse. Betrachten wir das Beispiel:
.--------lokales Netz--------. /\/---INTERNET---/\/
192.168.0.0/24
mitch
192.168.0.104 poldi
! 192.168.0.101
<<------+------------- Netzwerkkarte ISDN-Karte ============>> ...
!
andi
192.168.0.102
Der Gateway-Rechner (Router) poldi besitzt zwei
Netzwerkgeräte: eine Netzwerkkarte zum lokalen Netz und eine
ISDN-Karte zum Internet. Wenn jetzt ein Datenpaket bei poldi
vorbeikommt, wird anhand des Vergleiches von Ziel-Adresse und
Subnetzmaske entschieden, ob das Datenpaket für das lokale Netzwerk
oder für das Internet bestimmt ist und dementsprechend weitergeleitet
(über die Netzwerkkarte oder die ISDN-Karte).
Wenn viele Rechner (oder viele Netze) zusammengeschlossen sind, gibt es mehrere Möglichkeiten, das Ziel zu erreichen. Deshalb wird anhand eines bestimmten Kriteriums (Leitungsauslastung, Übertragungskosten, Priorität der Daten, ...) eine Route ausgesucht. Die Aktualisierungshäufigkeit dieser Aktion bestimmt die Art des Routings: beim dynamischen Routing werden die Daten ständig automatisch aktualisiert (teilweise alle 30 Sekunden), beim statischen Routing werden die Daten von einem Systemadministrator gepflegt und z.B. halbjährlich überarbeitet. Durch die redundanten Wege zu einem bestimmten Ziel können partielle Ausfälle des Netzes umgangen werden.
Da die lokalen Adreßräume wie 192.168.0.0/24 von jedermann
benutzt werden und mehrfach vergeben sind, stößt der Zusammenschluß
von mehreren dieser Netzwerke zwangsläufig auf Probleme. Gerade im
Internet muß jeder Rechner eindeutig adressierbar sein. Man bedient
sich des Masqueradings, um dieses Problem zu beheben. Dabei wird ein
Teilnetz versteckt und nach außen hin unsichtbar gemacht. In unserem
Beispiel erhält poldi nun eine zweite, echte IP-Adresse, mit
der er im Internet angesprochen werden kann:
.--------lokales Netz--------. /\/---INTERNET---/\/
192.168.0.0/24
mitch
192.168.0.104
! poldi
<<------+------------- Netzwerkkarte ISDN-Karte ============>> ...
! 192.168.0.101 195.222.116.30
andi
192.168.0.102
poldi tritt nun als Übersetzer in Kraft: Er übernimmt
Verbindungen aus dem lokalen Netz ins Internet und tut so, als ob er
sie selber aufbaut. Damit tritt das gesamte Netz
192.168.0.0/24 nach außen hin nur als die eine Adresse
195.222.116.30 auf. andi und mitch sind von außen nicht
direkt erreichbar.
Das IP-Protokoll Version 6 (IPv6) steht kurz vor der Einführung. Erste Geräte unterstützen es bereits, der Großteil des Internets läuft aber noch unter der alten Version 4. Einige der wichtigsten Unterschiede zur alten Version sind hier aufgeführt:
, z.B. die
Möglichkeit, bestimmte Gerätegruppen anzusprechen.