IP/Adresse/Grundlagen
Grundlagen
Um eine Kommunikation zwischen zwei technischen Geräten aufzubauen, muss jedes der Geräte in der Lage sein, dem anderen Gerät Daten zu senden.
- Damit diese Daten bei der richtigen Gegenstelle ankommen, muss diese eindeutig benannt (adressiert) werden.
- Dies geschieht in IP-Netzen mit einer IP-Adresse.
- So wird zum Beispiel ein Webserver von einem Webbrowser direkt über seine IP-Adresse angesprochen.
- Der Browser fragt dazu bei einem Nameserver die IP-Adresse ab, die einer Domain (zum Beispiel "www.example.com") zugeordnet ist.
- Anschließend nutzt er diese IP-Adresse, um Daten an den Webserver zu senden.
IP-Adresse in IP-Datenpaketen
- Jedes IP-Datenpaket beginnt mit einem Informationsbereich für die Beförderung durch die IP-Schicht, dem IP-Header.
- Dieser Header enthält auch zwei Felder, in welche die IP-Adressen sowohl des Senders als auch des Empfängers eingetragen werden, bevor das Datenpaket verschickt wird.
- Die Vermittlung geschieht auf der Schicht 3 im OSI-Modell, der Vermittlungsschicht.
Aufbau
Frühere Versionen
Das Internet wurde anfangs als Netz konzipiert, um mehrere bestehende Datennetze miteinander zu verbinden
- Eine Organisation wie die IANA, die Institutionen IP-Bereiche nach Bedarf zuweist, gab es noch nicht.
- In den Headern der früheren Varianten des Internetprotokolls gab es getrennte Felder, in denen eine Netzwerk-Adresse und eine Host-Adresse unabhängig voneinander definiert waren.
- Die Netzwerk-Adresse war eine Netzwerk-Kennziffer in Form eines 8 Bit-Wertes, die Quell- und Zielnetz des jeweiligen Datenpaketes kennzeichnet.
- Die für Arpanet, Cyclades und weitere Netze verwendeten Kennziffern waren festgelegt.
- Die Host-Adresse hatte in der ersten Version des Internetprotokolls von 1974 eine Länge von 16 Bit, wurde aber bereits in der ersten Überarbeitung des Internetprotokolls auf 24 Bit erweitert.
- So war es theoretisch bereits seit 1975 möglich, im Internet die gleiche Anzahl an Hosts zu adressieren, wie es heute noch auf Basis von IPv4 möglich ist.
- Die Trennung von Netzwerk- und Host-Adresse entfiel, als im Jahre 1981 das IPv4-Protokoll eingeführt wurde und die IANA durch Einführung der Netzklassen dann IP-Adressbereiche in unterschiedlichen Größen vergab.
- Durch komplexere Routing-Methoden und die Tatsache, dass es IP-Netze in unterschiedlichen Größen gab, wurde die Trennung von Netz- und Hostadresse obsolet, sodass die Adressen schlichtweg als IP-Adressen bezeichnet wurden, die lediglich abhängig von den jeweiligen Netzwerkgrößen einen individuellen Netz- und Host-Teil haben.[1]
IPv4
Die seit der Einführung der Version 4 des Internetprotokolls überwiegend verwendeten IPv4-Adressen bestehen aus 32 Bits, also 4 Oktetten (Bytes).
- Damit sind 232, also 4.294.967.296 Adressen darstellbar.
- In der dotted decimal notation werden die 4 Oktette als vier durch Punkte voneinander getrennte ganze Zahlen in Dezimaldarstellung im Bereich von 0 bis 255 geschrieben.
Beispiel: 203.0.113.195
siehe IPv4
IPv6
Durch den rasch steigenden Bedarf an IP-Adressen ist absehbar, dass der nutzbare Adressraum von IPv4 früher oder später erschöpft sein wird.
- Vor allem aus diesem Grund wurde IPv6 entwickelt.
- Es verwendet 128 Bit zur Speicherung von Adressen, damit sind 2128 = 25616 (= 340.282.366.920.938.463.463.374.607.431.768.211.456 ≈ 3,4 · 1038) Adressen darstellbar.
- Diese Anzahl reicht aus, um für jeden Quadratmillimeter der Erdoberfläche mindestens 665.570.793.348.866.944 (= 6,65 · 1017)[2] IP-Adressen bereitzustellen.
- Wenn es in jeder der ca. 2 Billionen Galaxien des bekannten Universums 100 Milliarden Planetensysteme mit je einem bewohnten Planeten gäbe, dann könnte man je Planet 1,7 · 1015 IP-Adressen vergeben.
- Wenn die Planeten Erdgröße haben, wären das etwa 3 Adressen je m² der Planetenoberfläche.
Da die Dezimaldarstellung ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd.ddd
unübersichtlich und schlecht handhabbar wäre, stellt man IPv6-Adressen hexadezimal dar.
- Um diese Darstellung weiter zu vereinfachen, werden jeweils zwei Oktette der Adresse zusammengefasst und in Gruppen durch Doppelpunkt getrennt dargestellt.
XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX
.
Beispiel: 2001:0db8:85a3:0000:0000:8a2e:0370:7344
Zur weiteren Verkürzung können Nullen am Beginn eines Blocks weggelassen werden.
- Ein oder mehrere aufeinanderfolgende Blöcke, die nur aus Nullen bestehen, können durch
::
ersetzt werden - jedoch höchstens einmal in der Adresse, so dass eindeutig auf acht Blöcke aufgefüllt werden kann.
Beispiel: 2001:db8:85a3::8a2e:370:7344
siehe IPv6
Netzwerkteil und Geräteteil
Jede IPv4-Adresse wird durch eine Netzmaske, jede IPv6-Adresse durch die Angabe der Präfixlänge, in einen Netzwerk- und einen Geräteteil ("Hostteil") getrennt.
- Die Netzmaske, also die Präfixlänge, gibt an, an welchem Bit die Adresse geteilt werden muss.
- Die von der Netzmaske maskierten oder von der Präfixlänge genannten Bit (Netzwerkteil) sind bei allen Hosts (Rechnern) eines Subnetzwerks identisch.
- Die Information, ob ein Gerät im selben Subnetz liegt (d. h.
- gleicher Netzwerkteil in der IP-Adresse), wird von einem Host benötigt, um Routing-Entscheidungen treffen zu können (siehe folgenden Abschnitt).
Beispiel
- (klassenlose) IPv4-Adresse
203.0.113.195/27
Dezimal | Binär | Berechnung | |
---|---|---|---|
IP-Adresse | 203.000.113.195 | 11001011 00000000 01110001 11000011 | ip-adresse |
Netzmaske | 255.255.255.224 | 11111111 11111111 11111111 111 | 00000 AND netzmaske |
Netzwerkadr. | 203.000.113.192 | 11001011 00000000 01110001 110 | 00000 = netzwerkteil |
Dezimal | Binär | Berechnung | |
---|---|---|---|
IP-Adresse | 203.000.113.195 | 11001011 00000000 01110001 11000011 | ip-adresse |
Netzmaske | 255.255.255.224 | 11111111 11111111 11111111 11100000
00000000 00000000 00000000 00011111 || AND (NOT netzmaske) | |
Geräteteil | 000.000.000.003 00000000 00000000 00000000 00000011 | geräteteil |
Bei einer Netzmaske mit 27 gesetzten Bit ergibt sich eine Netzadresse von 203.0.113.192
.
- Es verbleiben 5 Bit und damit 25 = 32 Adressen für den Geräteteil.
- Hiervon werden noch je eine Adresse für das Netz selbst und für den Broadcast benötigt, so dass 30 Adressen für Geräte zur Verfügung stehen.
Routing

Will ein Gerät ein IP-Paket versenden, werden die Netzwerkteile der Quell-IP-Adresse und Ziel-IP-Adresse verglichen.
- Stimmen sie überein, befindet sich der Ziel-Host im selben Netz, und das Paket wird direkt an den Empfänger gesendet.
- Im Falle von Ethernet-Netzen dient das ARP (Address Resolution Protocol) zum Auffinden der Hardwareadresse.
- Das ARP arbeitet auf der zweiten Schicht des OSI-Modells und stellt die Verbindung zur ersten Schicht her.
Stimmen die Netzwerkteile dagegen nicht überein, so wird über eine Routingtabelle die IP-Adresse eines Routers (next hop) gesucht und das Paket an diesen Router gesendet.
- Dieser hat über eine oder mehrere Schnittstellen Kontakt zu anderen Netzen und routet das Paket mit demselben Verfahren weiter - er konsultiert dazu seinerseits seine eigene Routingtabelle und sendet das Paket gegebenenfalls an den nächsten Router oder an das Ziel.
- Bis zum Endgerät kann das Paket viele Netze und Router durchlaufen.
- Das Durchlaufen eines Routers wird auch Hop (Sprung) genannt, das Routingverfahren Next Hop Routing.
Ein Router hat dabei für jede seiner Schnittstellen eine eigene IP-Adresse und Netzmaske, die zum jeweiligen Netz gehört.
- Jedes IP-Paket wird einzeln geroutet.
- Die Quell- und Zieladresse im IP-Header werden vom Sender gesetzt und bleiben, wenn keine Adress-Umsetzung stattfindet, während des gesamten Weges unverändert.
siehe Routing
Besondere IP-Adressen
- Besondere IPv4-Adressen nach RFC 6890
CIDR-Adressblock | Adressbereich | Beschreibung | RFC |
---|---|---|---|
0.0.0.0/8 | 0.0.0.0 bis 0.255.255.255 | aktuelles Netz (nur als Quelladresse gültig) | RFC 3232 (ersetzt RFC 1700) |
10.0.0.0/8 | 10.0.0.0 bis 10.255.255.255 | Netzwerk für den privaten Gebrauch | RFC 1918 |
100.64.0.0/10 | 100.64.0.0 bis 100.127.255.255 | Mehrfach benutzter Adressbereich für Provider-NAT (siehe Carrier-grade NAT) | RFC 6598 |
127.0.0.0/8(1) | 127.0.0.0 bis 127.255.255.255 | Localnet | RFC 3330 |
169.254.0.0/16 | 169.254.0.0 bis 169.254.255.255 | Zeroconf | RFC 3927 |
172.16.0.0/12 | 172.16.0.0 bis 172.31.255.255 | Netzwerk für den privaten Gebrauch | RFC 1918 |
192.0.0.0/24 | 192.0.0.0 bis 192.0.0.255 | reserviert, aber zur Vergabe vorgesehen | |
192.0.0.0/29 | 192.0.0.0 bis 192.0.0.7 | Dual-Stack Lite (DS-Lite), IPv4- und IPv6 Übergangsmechanismus mit globaler IPv6-Adresse und Provider-NAT für IPv4 | RFC 6333 |
192.0.2.0/24 | 192.0.2.0 bis 192.0.2.255 | Dokumentation und Beispielcode (TEST-NET-1) | RFC 5737 (ersetzt RFC 3330) |
192.88.99.0/24 | 192.88.99.0 bis 192.88.99.255 | 6to4-Anycast-Weiterleitungspräfix | RFC 3068 |
192.168.0.0/16 | 192.168.0.0 bis 192.168.255.255 | Netzwerk für den privaten Gebrauch | RFC 1918 |
198.18.0.0/15 | 198.18.0.0 bis 198.19.255.255 | Netz-Benchmark-Tests | RFC 2544 |
198.51.100.0/24 | 198.51.100.0 bis 198.51.100.255 | Dokumentation und Beispielcode (TEST-NET-2) | RFC 5737 |
203.0.113.0/24 | 203.0.113.0 bis 203.0.113.255 | Dokumentation und Beispielcode (TEST-NET-3) | RFC 5737 |
224.0.0.0/4 | 224.0.0.0 bis 239.255.255.255 | Multicasts (früheres Klasse-D-Netz) | RFC 3171 |
240.0.0.0/4 | 240.0.0.0 bis 255.255.255.255 | reserviert (früheres Klasse-E-Netz) | RFC 3232 (ersetzt RFC 1700) |
255.255.255.2552) | 255.255.255.255 | Broadcast |
Nach dieser Liste erfüllen 622.199.809 von rund 4,3 Milliarden IPv4-Adressen bzw. 14,5 % aller möglichen IPv4-Adressen einen besonderen Zweck.
- Das Netz 127.0.0.0/8 bezieht sich auf den lokalen Computer (loopback address).
- Aus diesem Netzbereich ist oftmals die Adresse 127.0.0.1 mit dem Hostnamen localhost ansprechbar.
- Adressen aus diesem Bereich dienen zur Kommunikation eines Client- mit einem Server-Prozess auf demselben Computer.
- Mit Kommandozeilenbefehlen wie
ssh localhost
oderftp 127.0.0.1
können die Server auf einem lokalen Rechner angesprochen werden, etwa um ihr Funktionieren zu testen.
- Die spezielle Adresse 255.255.255.255 kann neben der höchsten Geräteadresse im Netz ebenfalls als Broadcastadresse verwendet werden.
- Dadurch ist das Versenden von Broadcasts ohne Kenntnis weiterer Netzwerkparameter möglich.
- Dies ist für Protokolle wie BOOTP und DHCP wichtig.
Damit gibt es drei IP-Adresstypen:
- Unicast: Senden an einen bestimmten Empfänger im Internet (normale Adressierung).
- Broadcast: Senden an alle Geräte im selben Netz (Subnetz).
- Dieses wird bei IPv6 durch Multicast ersetzt.
- Multicast: Senden an einige Geräte im selben Netz (oder Geräte im Multicastbackbone-Netz).
Nicht mehr reservierte IP-Adressen
Mit dem RFC 5735 wurden ca. 50 Millionen IP-Adressen freigegeben.
- Die Reservierung der folgenden Adressbereiche wurde aufgehoben und zur Verteilung freigegeben.
CIDR-Adressblock | Adressbereich | Anzahl | Beschreibung | RFC |
---|---|---|---|---|
14.0.0.0/8 | 14.0.0.0 bis 14.255.255.255 | 16.777.216 | Öffentliches Datennetz | RFC 3232 (ersetzt RFC 1700) |
24.0.0.0/8 | 24.0.0.0 bis 24.255.255.255 | 16.777.216 | Cable Television Networks | |
39.0.0.0/8 | 39.0.0.0 bis 39.255.255.255 | 16.777.216 | im Januar 2011 an das APNIC vergeben | RFC 1797 |
128.0.0.0/16 | 128.0.0.0 bis 128.0.255.255 | 65.536 | im November 2010 an das RIPE NCC vergeben[3] | |
191.255.0.0/16 | 191.255.0.0 bis 191.255.255.255 | 65.536 | reserviert, aber zur Vergabe vorgesehen | |
223.255.255.0/24 | 223.255.255.0 bis 223.255.255.255 | 256 | reserviert, aber zur Vergabe vorgesehen | RFC 3330 |
DNS - Übersetzung von Rechnernamen in IP-Adressen
Über das weltweit verfügbare Domain Name System (DNS) können Namen in IP-Adressen (und umgekehrt) aufgelöst werden.
- Der Name www.example.com wird zum Beispiel in die IPv4-Adresse
93.184.216.34
und die IPv6-Adresse2606:2800:220:1:248:1893:25c8:1946
übersetzt.