Hilfe & Service von EDV-Fachleuten
ip4a1.png

Edit v5.000 from 2002-05-13 to 2023-11-24 by AMu+GRo+CBr

Das Internet−Protokoll mit 4 Byte Adresse

Das Internet-Protokoll übernimmt die Adressierung und Zustellung der Datenpakete. Außerdem ermöglicht es den Datenaustausch zwischen zwei beliebigen Netzteilnehmern, die in jeweils beliebigen Einzelnetzen positioniert sind. Vorrausgesetzt für diese Erläuterung wird der Umgang mit binären, oktalen, dezimalen und hexadezimalen Zahlensystemen.

Das Internet Protokoll in der Version 4 mit IP-Adresse & Subnetzmaske und den Klassen, A, B, C, D, E plus deren Netz und Hostberechnung. Dann folgt noch das Sub- und Supernetting.

Internet Protokoll Version 4

Tabelle 1: IP-Datenpaket
0 4 8 12 16 20 24 28 32
Version IHL TOS Total Length
Identification Flags Fragment-Offset
TTL Protocol Header Checksum
Source Address
Destination Address
Options (optional) Füllbits
Daten
Es ist ein Netzwerkprotokoll, dass die Grundlage für die Internetkommunikation ist. Oder um verschiedenen Rechnertypen mit Ihren unterschiedlichen Betriebssystemen einen Datenaustausch zu ermöglichen. Es gehört zur 3. Schicht des OSI-Referenzmodelles. Dieses Protokoll hat einen Protokollkopf, genannt Header. Da IP ein ungesichertes, verbindungsloses Protokoll ist, arbeitet es i.d.R. mit dem aufgesetzten TCP zusammen, welches die Sicherung und
das Handling der Nutzdaten übernimmt.

Bedeutung der Bits

Hier steht: "Ab welcher Bit-Adresse, stehen welche Daten, wie Groß sind diese und welche Funktion haben sie zu erfüllen."
000. Bit: Version (4Bit)
Die Version des IP. Durch diese ist festgelegt, wie der Kopf und die Datenstruktur des Protokolls aufgebaut ist.
004. Bit: IHL: = IP Header Length (4Bit)
Ist die Gesamtlänge des IP-Kopfes.
Gibt die Länge in 32-Bit-Wörtern an.
008. Bit: TOS: = Type of Service (8Bit) zu dt. Dienstart.
Dieses Byte enthält eine Zahl für die Priorität und 5 Flags, wobei davon z.Z. nur 3 benutzt werden.
Wie ist das Byte 00RT D210B aufgebaut? Die Bits haben folgende Bedeutung:
  1. Mit den ersten 3 Bits wird die Priorität in Stufen von 0 bis 7 angegeben.
  1. D: (Delay-Time) minimiert die Verzögerung bei der Übertragung.
  2. T: (Transport) maximiert den Datendurchsatz bis zur MTU des Routers.
  3. R: (Reliability) maximiert die Zuverlässigkeit der Übertragung.
  1. Die Bits 6 und 7 sind für zukünftige Versionen reserviert und könnten z.B. für minimale Kosten sorgen.
016. Bit: Total Length (16Bit) zu dt. Gesamtlänge.
Dieses Feld gibt die Gesamtlänge des Datenpaketes in Oktetten an.
032. Bit: Identification (16Bit) zu dt. Identifikation bzw.
Kennung.
Das ist ein Integerwert, um einzelne Fragmente eines Datenblockes zuzuordnen.
048. Bit: Flags (3Bit) z. dt. Fahnen bzw. Flaggen.
Hier stehen 3 Bit zur Verfügung:
  • Das erste ist Reserviert und muss auf 0 stehen.
  • Das zweite Bit (Don't Fragment) sagt aus, ob die Daten fragmentiert sind.
  • Bei dem dritten Bit (More Fragment) wird ausgesagt, ob es das letzte ist- oder noch weitere folgen.
051. Bit: Fragment-Offset (13Bit) z. dt. Teilstück-bezogen auf
den Anfang sortiert.
Der Bereich ist auf 13 Bit beschränkt.
  • Hier steht die Reihenfolge drin, wie die einzelnen Teile eines gesamten Datenpaketes (Daten-Blöcke von 64 Bit bzw. 8 Byte Größe) wieder zusammengesetzt werden müssen.
  • Das letzte- und erste Fragment hat den More Fragment- Wert, bei Flags auf 0 stehen.
064. Bit: Time To Live (8Bit) z. dt. Zeit zu Leben (im Netz).
  • Ist die Lebensdauer des Datenpaketes im Netz.
    Dort wird von der Netzwerk oder Transportschicht des
    OSI-Referenzmodelles ein Wert von maximal 255 eingetragen.
  • Es funktioniert durch eine Zählschleife, welche nach unten gezählt wird.
    Das macht jeder Router und somit ist der Wert irgendwann auf 0, dann wird es verworfen und kreist nicht im Netz.
072. Bit: Protocol(8Bit) z. dt. Protokoll.
In diesem Feld steht welches Protokoll in dem Datenbereich drin ist.
An dieses Protokoll wird dann IP die Daten weiter geben.
080. Bit: Header- Checksum (16Bit) z. dt. Kopf-Prüfsumme.
Prüft die Kopffelder auf Unversehrtheit und Vollständigkeit,
Durch das CRC: = cyclic redundancy check
Verfahren (z. dt. Zyklische Redundanzprüfung).
096. Bit: Source Adress (32Bit) z. dt. Absender Adresse.
  • Von dieser Adresse kommt das Datenpaket (Quelle).
  • Der Eintrag ist auf 32 Bit beschränkt.
128. Bit: Destination Adress (32Bit) z. dt. Empfänger Adresse
  • An diese Adresse soll das Datenpaket gesendet werden (Ziel).
  • Der Eintrag ist auf 32 Bit beschränkt.

Ab dem 160. Bit

160. Bit: Options (0…10 x 32Bit) z. dt. Optionen.
  • Die Optionen umfassen maximal 40 Oktetten D.h. da die Optionen immer in 32 Bit−Blöcken gespeichert werden, das sind 4 Oktetten, können es maximal 0-10 x 4 Oktetten sein.
  • Eine einzelne Option umfasst 8 Bit = 1 Oktette, wobei sich der Wert für die Option mit
    = (128x Kopieren) + (32x Klasse) + (1xNummer) berechnen lässt.
    Beispiel:
    Adress Extension mit 1 /0/ 19 ergibt
    1 00 1 0011 B
Options
Kopieren Name [Referenz]
  Klasse
    Nummer
0 0 0 EOOL - End of Options List [RFC791,JBP]
0 0 1 NOP - No Operation [RFC791,JBP]
1 0 2 SEC - Security [RFC1108]
1 0 3 LSR - Loose Source Route [RFC791,JBP]
0 2 4 TS - Time Stamp [RFC791,JBP]
1 0 5 E-SEC - Extended Security [RFC1108]
1 0 6 CIPSO - Commercial Internet Protocol Security Option
0 0 7 RR - Record Route [RFC791,JBP]
1 0 8 SID - Stream Identification [RFC791,JBP]
1 0 9 SSR - Strict Source Route [RFC791,JBP]
0 0 10 ZSU - Experimental Measurement [ZSu]
0 0 11 MTUP - MTU Probe [RFC1191]
0 0 12 MTUR - MTU Reply [RFC1191]
1 2 13 FINN - Experimental Flow Control [Finn]
1 0 14 VISA - Expermental Access Control [Estrin]
0 0 15 ENCODE - [VerSteeg]
1 0 16 IMITD - IMI Traffic Descriptor [Lee]
1 0 17 EIP - Extended Internet Protocol [RFC1385]
0 2 18 TR - Traceroute [RFC1393]
1 0 19 ADDEXT - Address Extension [Ullmann IPv7]
1 0 20 RTRALT - Router Alert RFC2113]
1 0 21 SDB - Selective Directed Broadcast[Graff]
1 0 22 - Unassigned (Released 18 October 2005)
1 0 23 DPS - Dynamic Packet State [Malis]
1 0 24 UMP - Upstream Multicast Pkt. [Farinacci]
0 0 25 QS - Quick-Start [RFC4782]
0 0 30 EXP - RFC3692-style Experiment (**) [RFC4727]
0 2 30 EXP - RFC3692-style Experiment (**) [RFC4727]
1 0 30 EXP - RFC3692-style Experiment (**) [RFC4727]
1 2 30 EXP - RFC3692-style Experiment (**) [RFC4727]
160. Bit + Optionen: Füllbits (Rest bis ein Vielfaches von 32Bit)
Diese füllen nach den Optionen auf volle 4 Oktetten auf.
160. Bit + Optionen + Füllbits: Daten (<64KByte)
  • Der Datenbereich in dem IP−Datenpaket kann maximal 64 KBytes, abgezogen der Headergröße groß sein.
    Dieser wird aber in der Praxis zum Beispiel durch MTU (Maximale Transfare Unit) verringert.
  • Im Datenteil befindet sich i.d.R. ein weiteres Protokoll, wie zum Beispiel: TCP, UDP oder ICMP.

Ein Beispiel mit einem Ping zu www.husvedvf.de:

ip4a20.png
Abb. 2: Wireshark Headerdaten
  • Der Datenstrom
    der den IP-Header enthält beginnt mit 045H 000H 000H 03CH .
  • Die ersten 4 Bit von
    45H = 0100 0101B sind 0100B= 004H = Version 4D.
    Die nachfolgenden 4 Bit enthalten die Größe des Kopfes mit, 5 x 4 Byte = 20 Byte.
  • Die Destination-Adresse beginnt am Bit 128, das ist das 16. Byte. Dort stehen die 4 Oktetten 51 A9 91 5A. Jede Oktette gibt eine Zahl der Adresse an. Somit ergibt sich aus:
    • 051H = 81D,
    • 0A9H = 169D,
    • 091H = 145D,
    • 05AH = 90D.
    die Zieladresse zu 81.169.145.90, in dezimaler Schreibweise.

IP-Adresse & Subnetzmaske

Die IP-Adresse ist ein 32-Bit-Wert (Gesamtbits), der zur besseren Lesbarkeit in 4x8-Bit-Werte getrennt wird. Als Trennzeichen ist der Punkt üblich. Sie kennzeichnet jeden Netzteilnehmer eineindeutig und darf damit nur 1x im Netzwerk vorhanden sein.
Die Subnetzmaske legt dabei den Netzanteil und den Hostteil (PCs) fest und ist zu verstehen wie Vorwahl und Telefon-Nr. Zu jedem Netz gibt es somit eine passende Subnetzmaske, welche mit angegeben werden muss.
Diese gebe ich in dieser Erläuterung auch mal als 192.168.178.0/24 an, diese "/24" bedeutet, dass es 24 Bit Netzanteil sind und somit diese 24 Bit bei der Subnetzmaske auf 1 stehen.

Der Bereich, der in der Maske mit einer binären Eins belegt ist,
wird der Vorwahl zugeordnet und muss im Netz immer gleich sein.

Die Stellen welche eine binäre Null zugeordnet sind, können variabel zugewiesen werden,
wie die Telefon-Nummer im Ortsbereich, unter der Voraussetzung, das diese noch frei ist.

Spezielle Adressen
Broadcastadresse: Ist die letzte bzw. höchste Adresse im Netz, mit Einsen im Hostanteil.
  • Mit dieser werden Datenpakete von einem Punkt zu allen erreichbaren Punkten gesendet.
  • Zum Beispiel: 192.168.178.255, dieses Netz wird bei Windows angeboten.
Netzadresse: Ist die erste Adresse im Netz, mit Nullen im Hostanteil.
  • Sie sollte keiner Arbeitstation zugewiesen werden.
  • Zum Beispiel: 192.168.178.0, dieses Netz wird bei Windows angeboten.

Die Klassen

Die Klassen kann man sich wie eine Landesvorwahl vorstellen, die man vom Anbieter zugewiesen bekommt. Aus der zugewiesenen Klasse kann man die Größe der verteilbaren Ortsvorwahlen oder Telefonnummern ableiten. Die Zugehörigkeit zu einer Klasse kann man an den ersten Stellen der IP-Adresse ablesen.

Klassenübersicht
Klassen IP-Adresse Subnetzmaske maximale Netze max. Hostanzahl
A 0.0.0.0 255.0.0.0 128 16.777.216
B 128.0.0.0 255.255.0.0 16.384 65.536
C 192.0.0.0 255.255.255.0 2.097.152 256
D 224.0.0.0 255.255.255.240 Verwendung für Multicast
E 240.0.0.0 255.255.255.240 Reserviert

Klasse A

  • Das erste Bit der 32Bit langen Adresse muss auf 0 stehen → ( 0 xxx xxxxB).
  • Der private Adressbereich umfasst die ganze Klasse und geht von 10.0.0.0 bis 10.255.255.255 (RFC 1918).
  • Spezielle Netzadressen:
    • 14.0.0.0/8 → ist das öffentliche Datennetzwerk (IANA-DB).
    • 39.0.0.0/8 → ist reserviert, laut RFC 1797.
    • 127.0.0.0/8 → ist die Loopback-Adresse, welche zum Selbstcheck der LAN-Karte dient (IANA-DB). .

Klasse B

  • Die ersten zwei Bit der 32Bit langen Adresse müssen auf 1 und 0 stehen. → ( 10xx xxxxB).
  • Der private Adressbereich geht von 172.16.0.0 bis 172.31.255.255 (RFC 1918).
  • Spezielle Netzadressen:
    • 169.254.0.0/16 → ist das private Netzwerk (link Local) für Zeroconf (RFC 3927).
    • 191.255.0.0/16 → ist reserviert, laut RFC 3330.

Klasse C

  • Die ersten drei Bit der 32Bit langen Adresse müssen auf 1 1 0 stehen. → ( 110x xxxxB).
  • Der private Adressbereich geht von 192.168.0.0 bis 192.168.255.255 (RFC 1918).
  • Spezielle Netzadressen:
    • 192.0.2.0/24 → ist ein Testnetz (RFC 3330).
    • 192.88.99.0/24 → ist IPv6 zu IPv4 Relay (Übertragungsstation, laut RFC 3068).
    • 198.18.0.0/15 → ist ein Netzwerkbenchmark (RFC 2544).
    • 223.255.255.0/24 → ist reserviert, laut RFC 3330.

Klasse D

Die ersten vier Bit der 32Bit langen Adresse müssen auf 1110 stehen. → ( 1110 xxxxB).
Ist jetzt "Multicast".

Klasse E

Die ersten vier Bit dieser 32Bit langen Adresse müssen auf 1 stehen → (1111 xxxxB).
Ist reserviert für zukünftige Anwendungen
Netzberechnung

Die Berechnung der maximalen und realen Netze erfolgt durch

maximale Netzanzahl = 2 (Netzanteil- reservierte Bits durch die Klasse)  und

reale Netzanzahl = 2 (Netzanteil - reservierte Bits durch die Klasse) - reservierte Netze bzw. Netzadressen.


Beispiel Klasse E:
Die 1. 4 Bit stehen auf 1 und der Netzbereich der Subnetzmaske wird mit 28 Bit angegeben.

Die Formeln der Klasse E:
maximale Netze: → 16.777.216 = 2(28-4)
reale Netze: → 16.777.216 = 2(28-4)-0
Hostberechnung

Die Berechnung der maximalen und realen Hosts im Netz, erfolgt durch:

maximale Hostanzahl = 2 Hostanteil.  und

reale Hostanzahl = 2 Hostanteil - spezielle Adressen.

Beispiel Klasse E:
Der Netzbereich der Subnetzmaske wird mit 28 Bit angegeben.
Deshalb bleiben von 32 Bit 4 übrig (Hostanteil).

Die Formeln der Klasse E:
maximale Hosts: → 16 = 24
reale Hosts: → 16 = 24 -0

Sub- und Supernetting

Subnetting

"Subnetting" ist nichts anderes, als aus einem großen Netz mehrere kleine Netze zu machen.
Dies geschieht, indem wir die höherwertigsten Bits des Hostanteils dem Netzanteil übergeben.
Der Logorithmus zur Basis 2, von den benötigten Netzen ergibt die Anzahl der zusätzlichen Bits im Netzanteil.

log2(benötigte Netze) = zusätzliche Bits.

Beispiel:
Eine Firma, mit insgesamt 120 Mitarbeitern möchte diese in 5 Netze, Firmenleitung und 4 Abteilungen trennen, wobei jede Abteilung ein eigenes Netz und die notwendigen Geräte (wie Server, Drucker…) bekommen soll. Die bisherige Netzadresse lautet: 10.0.0.0/8.
  1. Ich habe die Klasse A gewählt, welches eine Subnetzmaske von
    255D . 0000 0000B . 0D . 0D = 255 .0.0.0/8 hat.
  2. Aus diesem Netz müssen nun real 5 neue Netze erschaffen werden.
    log2(5) = 2,321 → 3 Bits.
    Somit verschieben wir die Trennung vom Netz und Host in der Subnetzmaske um drei Stellen nach rechts,
    dann können max. 8 neue Netze generiert werden.
    255D . 111 0 0000B . 0D . 0D = 255 .224.0.0/11
  3. Bestimmen der neuen Netze auf der Grundlage der neuen Subnetzmaske 255.240.0.0/11, welche lauten:
    1. Firmenleitung = 10D. 0000 0000B .0D.0D = 10.0.0.0/11
      mit den Hosts von 10.0.0.1 bis 10 .31.255.254.
      Diese Adresse gibt das Hauptnetz an, welches auf alle anderen zugreifen kann.
      Deshalb ist es wohl für die Firmenleitung am besten geeignet.
    2. Abteilung 1 = 10D. 0010 0000B .0D.0D = 10.32.0.0/11
      mit den Hosts von 10.32.0.1 bis 10.63.255.254.
    3. Abteilung 2 = 10D. 0110 0000B .0D.0D = 10.96.0.0/11
      mit den Hosts von 10.224.0.1 bis 10.255.255.254.
    4. Abteilung 3 = 10D. 1000 0000B .0D.0D = 10.224.0.0/11
      mit den Hosts von 10.128.0.1 bis 10.255.255.254.
    5. Abteilung 4 = 10D. 1100 0000B .0D.0D = 10.224.0.0/11
      mit den Hosts von 10.192.0.1 bis 10.255.255.254.
Die ermittelte Konfiguration kann nun 8 Netze unterstützen, wir benötigen aber nur 5.

Supernetting

Supernetting ist das Gegenstück zu Subnetting, hier werden kleinere Teilnetze zu größeren Netzen zusammengefasst.
Dies geschieht durch die Übergabe von den niederwertigen Bits des Netzanteils an den Hostanteil.

log2(insgesamt benötigte Hosts) = insgesamte Bits im Hostanteil.

Beispiel:
Es sollen in einer Firma, die zur Zeit 250 Arbeitsplätze hat und das C-Netz verwendet, ca. 50 neue Mitarbeiter eingestellt werden. Diese 50 neuen IP-Adressen und ein bisschen Reserve sind in der Klasse C zu generieren. Bisher werden die Adressen 192.168.0.1 bis 250 verwendet.

  1. Die zur Zeit verwendete Subnetzmaske, des Klasse C-Netzes lautet:
    255D . 255D . 1111 1111B . 0000 0000B = 255.255.255.0
  2. Aus den in der Klasse C standartmäßig maximal vorhandenen 254 Hosts, müssen nun durch Vergrößerung des Hostanteiles in der Subnetzmaske, mindestens 300 werden.
    log2(300) = 8,22 → 9 Bits, das heißt die bisherigen 8 Bits werden auf 9 Bits, für den Hostanteil erhöht.
    255D . 255D . 1111 111 0B . 0000 0000B = 255.255.254.0
  3. Damit können statt 254 mit der Standartsubnetzmaske des Klasse C Netzes ab sofort 510 Hosts,
    mit der Subnetzmaske: 255.255.240.0 verwendet werden. Die Hostadressen gehen von 192.168.0.1 bis 192.168.1.254.


Hiermit ist meine Erläuterung zu ende.
Ich hoffe Sie konnte ein wenig helfen und wünsche viel Erfolg bei den nächsten Projekten.
Nach Oben