IP-Adressen und Subnetting

Heutzutage ist es möglich, Menschen auf der ganzen Welt über das Internet zu kontaktieren und binnen kürzester Zeit Nachrichten auszutauschen. Hierbei spielen IP-Adressen eine zentrale Rolle.

Aber was ist überhaupt eine IP-Adresse? Was ist der Unterschied zwischen einer klassenweisen und klassenlosen IP-Adressierung? Was bedeutet Subnetting?

simpleclub erklärt dir, wie IP-Adressen und Subnetting funktionieren!

IP-Adressen und Subnetting einfach erklärt

Eine IP-Adresse (Internet Protokoll)-Adresse kannst du dir wie eine Postadresse vorstellen. Diese brauchst du, um im Internet Datenpakete an einen bestimmten Empfänger zu verschicken und von anderen Geräten angesprochen werden zu können.

Im Unterschied zu Postadressen sind IP-Adressen von Geräten nicht an einen bestimmten Ort gebunden, sondern vom Netzwerk abhängig, indem sie sich gerade befinden. Deswegen bekommt dein Handy jedes Mal eine andere IP-Adresse, wenn du dich in ein anderes WLAN-Netzwerk einloggst.

Eine IP-Adresse ist somit eine Netzwerkadresse und besteht aus vier Zahlen, die jeweils mit einem Punkt getrennt sind und Werte von 0 bis 255 annehmen können. Diese Schreibweise wird auch Dotted Decimal Notation (DDN) genannt. Du kannst eine IP-Adresse jedoch auch in einer binären Schreibweise darstellen, indem du alle vier Dezimalzahlen in Binärzahlen umwandelst. Im unteren Beispiel siehst du nochmal beide Schreibweisen:

Tippe auf alle Dezimalzahlen, um diese in Binärzahlen umzuwandeln.

IP-Adressen sind im Kontext des OSI-Modells für die dritte Schicht (die Vermittlungsschicht) relevant. Diese Schicht umfasst unter anderem das Internet Protokoll (IP) und ist die Grundlage für Netzwerk-Routing (also die Wegwahl und Weitervermittlung von Datenpaketen im Internet).

Das Internet wird auch als „Netz der Netze“ bezeichnet und unterteilt ein großes Netzwerk in kleinere Unternetze (Subnetze). Diese Unterteilung wird auch als „Subnetting“ bezeichnet und kann auch auf andere Ebenen übertragen werden. Man könnte zum Beispiel ein Firmennetzwerk in kleinere Subnetze unterteilen, um für jede Abteilung ein eigenes Subnetz zu haben.

Tippe auf die Knoten, um dir die Subnetzwerke anzeigen zu lassen.

Subnetting hat folgende Vorteile:

  • Strukturierte Vergabe der IP-Adressen und bessere Übersicht über das ganze Netzwerk, da verschiedene Netze voneinander abgegrenzt werden.
  • Höhere Netzwerkperformance, da die Datenpakete vom Sender zum Empfänger nicht das gesamte Netzwerk durchlaufen, sondern nur die nötigen Subnetze.
  • Höhere Sicherheit, da die Netzwerke voreinander getrennt sind und somit nur bestimmte Netzabschnitte angegriffen werden können.

IP-Adressen und Subnetting Definition

Die (Internet Protokoll)-Adresse (IP-Adresse) ist eine Netzwerkadresse, die allen Geräten in einem bestimmten Netz zugewiesen wird. Somit können die Datenpakete richtig adressiert werden.

Subnetting ist die Unterteilung eines Netzwerks in mehrere kleinere Teilnetzwerke.


IP-Adressen und Subnetting Erklärung

Man unterscheidet generell zwischen klassenweiser (engl. classful) und klassenloser (engl. classless) IP-Adressierung, wobei die klassenweise Adressierung die ältere der beiden ist. Bei der klassenlosen IP-Adressierung spricht man auch von CIDR (Classless Inter-Domain Routing).

Klassenweise IP-Adressierung

Es gibt hauptsächlich 5 Klassen von IP-Adressen: A, B, C, D und E. Die Netzklassen D und E sind nur für spezielle Anwendungen gedacht, weswegen wir nur auf die Klassen A, B und C genauer eingehen werden.

Jede Klasse hat

  • einen Netzwerkanteil und
  • einen Hostanteil.

\rarr\rarr Beim Netzwerkanteil gibt es am Anfang bestimmte Bits, die festgelegt sind. Das erste Bit bei dem Netzwerkanteil von Klasse A ist zum Beispiel auf 0 festgelegt und die restlichen 7 Bits sind frei wählbar.
In der unteren Abbildung siehst du, wie das bei den anderen Klassen festgelegt ist. Somit kannst du im Kontext klassenweiser IP-Adressierung anhand der ersten paar Bits bestimmen, zu welcher Netzklasse eine IP-Adresse gehört.

Man unterscheidet generell zwischen IP-Adressen der Klasse A, B und C. Klasse A fängt mit 0 an, Klasse B fängt mit 10 an und Klasse C mit 110.
IP-Klassen

\triangleright\triangleright Subnetzpräfix

Meistens werden IP-Adressen mit einer sogenannten Subnetzmaske, auch Subnetzpräfix genannt, angegeben. Diese Subnetzmaske zeigt wie groß der Netzwerkanteil einer IP-Adresse ist und wird nach einem Slash hinter der IP-Adresse geschrieben.
\rarr\rarr Somit könnte eine Klasse A IP-Adresse wie folgt angegeben werden: 102.168.202.210/8.
Hierbei ist /8 die Standardsubnetzmaske für Klasse A IP-Adressen, weil die ersten 8 Bit den Netzwerkanteil bestimmen.

\triangleright\triangleright Binäre Schreibweise

Eine andere Schreibweise für diese Subnetzmaske wäre die binäre Schreibweise. Hierbei schreibt man die Subnetzmaske als 32 Bit große Bitmaske (also genauso lang wie die IP-Adresse), wobei die Anzahl an „1er“-Bits von links den Netzwerkanteil angibt und der Rest 0en sind.
\rarr\rarr Die Standardsubnetzmaske für Klasse A IP-Adressen in binärer Schreibweise wäre also: 11111111.00000000.00000000.00000000

\triangleright\triangleright Dezimalschreibweise

Eine dritte Möglichkeit, die Subnetzmaske anzugeben, wäre in Dezimalschreibweise. Hierzu betrachtet man die binäre Schreibweise einer Subnetzmaske und wandelt alle vier Binärzahlen, die durch einen Punkt getrennt sind, in Dezimalzahlen um.
\rarr\rarr Somit wäre die Standardsubnetzmaske für Klasse A IP-Adressen in Dezimalschreibweise wie folgt: 255.0.0.0

Die untere Tabelle fasst nochmal alle Schreibweisen für verschiedene Netzklassen zusammen:

\downarrow\downarrow Netzklassen/
Schreibweisen\to\to

Subnetzpräfix

Binärschreibweise

Dezimalschreibweise

Klasse A

/8

11111111.00000000.00000000.00000000

255.0.0.0

Klasse B

/16

11111111.11111111.00000000.00000000

255.255.0.0

Klasse C

/24

11111111.11111111.11111111.00000000

255.255.255.0

Nachdem du jetzt gelernt hast, was eine Subnetzmaske ist, betrachten wir im nächsten Abschnitt den Hostanteil und den Netzwerkanteil einer IP-Adresse getrennt voneinander. Für den Hostanteil gilt Folgendes:

Hostanteil

Nach der „Verundung“ (bitweise UND-Verknüpfung) einer beliebigen IP-Adressse und der gegebenen Subnetzmaske, werden alle Host-Bits dieser IP-Adresse auf null gesetzt und die resultierende Adresse nennt sich „Netzwerk-Adresse“.

\rarr\rarr Diese Adresse identifiziert das Netzwerk zu dem diese IP-Adresse gehört.

Setzt du hingegen alle Host-Bits einer beliebigen IP-Adresse auf eins, dann bekommst du die sogenannte „Broadcast-Adresse“.

\rarr\rarr Diese spezielle IP-Adresse ermöglicht es Datenpakete an alle Teilnehmer eines lokalen Netzes zu verschicken.

Im unteren Beispiel siehst du, wie du bei einer gegebenen IP-Adresse die Netzwerk-Adresse und die Broadcast-Adresse bestimmen kannst.

Du kannst dir also merken:

\triangleright\triangleright Wenn alle Host-Bits einer IP-Adresse auf null gesetzt werden, bekommt man die Netzwerk-Adresse (z. B. 10101100.100111000.00000000.00000000)}

\triangleright\triangleright Wenn alle Host-Bits einer IP-Adresse auf eins gesetzt werden, bekommt man die Broadcast-Adresse (z. B. 10101100.100111000.11111111.11111111)}

\triangleright\triangleright Von diesen beiden Ausnahmen abgesehen, können die Host-Bits beliebig gesetzt werden, um einen bestimmten Host (also einen Rechner) im Netzwerk zu identifizieren. Somit ist die allgemeine Formel, um zu bestimmen, wie viele Hosts bei einer gegebenen IP-Adresse möglich sind:

\textsf{Anzahl an Hosts} = 2^{\textsf{Host-Bits}}-2AnzahlanHosts=2Host-Bits2\textsf{Anzahl an Hosts} = 2^{\textsf{Host-Bits}}-2

\rightarrow\rightarrow Im oberen Besipiel hätten wir also 2^{16}-2 = 655342162=655342^{16}-2 = 65534 an möglichen Hosts.

Für den Netzwerkanteil einer IP-Adresse gilt Folgendes:

Netzwerkanteil

Schauen wir uns z. B. den Netzwerkanteil von Klasse B an. Die ersten beiden Bits sind fix, somit bleiben die restlichen 14 Bits übrig, die beliebige Werte annehmen können (also Werte von 10000000.00000000 bis 10111111.11111111 bzw. von 128.0 bis 191.255 in dezimal). Somit hätten wir in diesem Fall 2^{14}=16384214=163842^{14}=16384 mögliche Netzwerke. Das ist nicht zu verwechseln mit der Anzahl an möglichen Hosts (im Falle von Klasse B: 2^{16}-2= 655342162=655342^{16}-2= 65534 Hosts).

\rightarrow\rightarrow Somit ist der gültige Adressraum von Kasse B von 128.0.X.X bis 191.255.X.X, wobei X die Host-Bits sind, die beliebige Werte annehmen können. Vergiss nicht die beiden Ausnahmen (Netzwerk- und Broadcast-Adresse), wenn alle Host-Bits auf 0 bzw. auf 1 gesetzt sind.

Folgende Tabelle fasst diese ganzen Informationen für alle anderen Klassen zusammen:

\downarrow\downarrow Netzklassen/
Eigenschaften\to\to

Adressraum

Anzahl möglicher
Netzwerke

Anzahl der Hosts
(pro Netzwerk)

Klasse A

1.X.X.X bis 126.X.X.X

2^{7}-2 = 126272=1262^{7}-2 = 126

2^{24}-2 = 16.777.2142242=16.777.2142^{24}-2 = 16.777.214

Klasse B

128.0.X.X bis 191.255.X.X

2^{14} = 16.384214=16.3842^{14} = 16.384

2^{16}-2 = 65.5342162=65.5342^{16}-2 = 65.534

Klasse C

192.0.0.X bis 223.255.255.X

2^{21} = 2.097.152221=2.097.1522^{21} = 2.097.152

2^{8}-2 = 254282=2542^{8}-2 = 254

\triangleright\triangleright Beachte, dass bei Klasse A die Anzahl möglicher Netzwerke 2^{7}-2=126272=1262^{7}-2=126 ist und nicht 2^{7}=12827=1282^{7}=128. Das hat damit zu tun, dass die Adressen 0.X.X.X und 127.X.X.X für spezielle Netzwerke reserviert sind und hat nichts mit den zwei Adressen, die man bei der Anzahl an Hosts abzieht, zu tun. Für die Klassen B und C wird die Anzahl möglicher Netzwerke normal berechnet.

Subnetting

Bis jetzt hast du nur die Standardsubnetzmasken der jeweiligen Klassen kennengelernt (also /8, /16 und /24), die den Netzwerkanteil von dem Hostanteil trennen. Was aber, wenn wir die Hosts von einem Netzwerk in noch kleinere Teilnetzwerke unterteilen wollen?

\rightarrow\rightarrow Hier kommt Subnetting ins Spiel und ermöglicht uns, die Host-Bits dazu zu nutzen, um diese in einen Subntezanteil und einen neuen Hostanteil zu unterteilen.

In diesem Kontext hat man dann keine Standardsubnetzmaske mehr, sondern eine Subnetzmaske mit variabler Länge, die den neuen Subnetzanteil mit einschließt. Hierbei spricht man auch von VLSM (Variable Length Subnet Mask) und die Länge dieser Subnetzmaske ist davon abhängig, wie viele Host-Bits wir uns für das Subnetting nehmen.

Im unteren Beispiel siehst du, wie du im Kontext von der klassenweisen IP-Adressierung variable Subnetzmasken dazu nutzen kannst, um Subnetting zu ermöglichen.

Verschiebe die Regler, um den Subnetzanteil der entsprechenden Klasse zu verändern.
Klasse A
Klasse B
Klasse C

\triangleright\triangleright Achte darauf, wie sich beim Verschieben von dem Regler auch die Subnetzmaske entsprechend verschiebt. Man kann nur die Host-Bits für das Subnetting nehmen und man braucht immer mindestens 1 Bit, um das überhaupt zu ermöglichen.

\triangleright\triangleright Durch das Verschieben der Subnetzmaske nach rechts verringert sich zwar die Anzahl an möglichen Hosts, das ist aber die Anzahl an Hosts pro (Sub)Netzwerk. Bei der Klasse C z. B. haben wir ohne Subnetting 2^{8}-2=254282=2542^{8}-2=254 Hosts. Wenn wir beim Subnetting die Subnetzmaske um 3 Bits nach rechts verschieben, bekommen wir 2^{5}-2=30252=302^{5}-2=30 Hosts pro (Sub)Netzwerk. Wenn wir jetzt diese Zahl mit der Anzahl an Subnetzwerken, die wir generiert haben, multiplizieren (also 2^{3}=823=82^{3}=8), bekommen wir 30 \cdot 8 = 240308=24030 \cdot 8 = 240, was ungefähr gleich 254254254 ist (also die Anzahl an Hosts ohne Subneting). Die Zahlen sind nicht exakt gleich, weil man bei jedem Subnetz noch die Netzwerk- und Host-Adresse abzieht.

\triangleright\triangleright Du siehst, dass es in der Theorie auch möglich ist, die Subnetzmaske bis auf /31 zu verschieben. In der Praxis ist das aber sinnlos, weil die Anzahl möglicher Hosts null wäre (da man immer die Netzwerk- und Broadcast-Adresse abziehen muss).

\triangleright\triangleright An diesem Beispiel siehst du auch, warum es bei der klassenweisen IP-Adressierung nötig ist, eine Subnetzmaske anzugeben. Natürlich könnte man die Standardsubnetzmasken anhand der IP-Klassen direkt erkennen. Wenn man jedoch Subnetting ermöglichen will, muss man die Subnetzmake angeben, um zu präzisieren, wie viele Host-Bits für das Subnetting gedacht sind.

Merke dir also: Wenn dir im Kontext von der klassenweisen IP-Adressierung eine IP-Adresse mit Subnetzmaske gegeben ist, musst du immer schauen, zu welcher Klasse diese IP-Adresse gehört und dann gibt es zwei Möglichkeiten:

\rightarrow\rightarrow Die gegebene Subnetzmaske ist die Standardsubnetzmaske dieser IP-Klasse (also /8, /16 oder /24).

\rightarrow\rightarrow Die gegeben Subnetzmaske ist größer als die Standardsubnetzmaske dieser IP-Klasse, um Subnetting zu ermöglichen. Die Differenz von der gegebenen Subnetzmaske und der Standardsubnetzmaske ist die Anzahl an Host-Bits, die für das Subnetting reserviert wurden.

Klassenlose IP-Adresssierung

Es ist sehr wichtig, die klassenweise IP-Adressierung zu verstehen, um nachvollziehen zu können, warum die klassenlose IP-Adressierung (CIDR - Classless Inter-Domain Routing) danach eingeführt wurde.

Wir haben bisher viel über IP-Adressen gesprochen, aber nicht darüber, wie diese überhaupt verteilt werden.

\rarr\rarr Die IANA (Internet Assigned Numbers Authority) ist eine zentrale Aufsichtsbehörde, die für die Vergabe von IP-Adressblöcken zuständig ist und somit den globalen Pool von IP-Adressen koordiniert.

Beispielsweise hat die Firma Apple das Netz 17.0.0.0/8 zugewiesen bekommen (also Klasse A mit 16.777.214 Hosts). Durch Subnetting mit variabler Subnetzmaske ist es möglich diese 16.777.214 Hosts in kleinere Subnetzwerke zu unterteilen. Diese kleinen Netzwerke gehören aber trotzdem noch zu dem internen Firmennetzwerk von Apple. Kleineren Firmen wurden z. B. Klasse B Netze (65.534 Hosts) oder Klasse C Netze (254 Hosts) zugewiesen.

\triangleright\triangleright Was aber, wenn eine Firma insgesamt nur 2046 Hosts braucht? Oder nur 62?

Dadurch, dass bei der klassenweisen IP-Adressierung die Anzahl an Hosts festgelegt ist (gemeint ist die Summe an Hosts von allen Subnetzwerken), wurde die klassenlose IP-Adressierung (CIDR) eingeführt.

Bei CIDR betrachtet man keine Netzklassen mehr und die IP-Adressen haben folgendes Format: a.b.c.d/x, wobei die Subnetzmaske eine beliebige Größe hat.

\rarr\rarr Somit kann eine kleine Firma z. B. folgenden Adressraum zugewiesen bekommen 171.145.152.128/26 (also 2^{6}-2=62262=622^{6}-2=62 Hosts) und durch Subnetting (also das Verschieben von der Subnetzmaske nach rechts) diese 62 Hosts wiederum in kleinere Subnetze unterteilen.


IP-Adressen und Subnetting Beispiele

Subnetting

Gegeben sei folgende IP-Adresse 64.157.147.68/16. Zu welcher Klasse gehört diese IP-Adresse? Wie viele Subnetze könnte man mit der gegebenen Subnetzmaske einrichten?

\triangleright\triangleright Da nach der IP-Klasse gefragt wurde, wissen wir schonmal, dass es sich um klassenweise IP-Adressierung handelt und nicht um CIDR.

Zunächst müssen wir die IP-Adresse in binärer Schreibweise umwandeln un bekommen:

64.157.147.68 = 01000000.10011101.10010011.100010064.157.147.68=01000000.10011101.10010011.100010064.157.147.68 = 01000000.10011101.10010011.1000100

\rightarrow\rightarrow Dadurch, dass die IP-Adresse mit null anfängt, handelt es sich um eine Adresse der Klasse A.

\rightarrow\rightarrow Die Standardsubnetzmake für IP-Adressen der Klasse A ist /8. Da uns eine /16 Subnetzmaske gegeben wurde, wurde die Standardsubnetzmaske um 8 Bits nach rechts verschoben, um Subnetting zu ermöglichen. Somit könnte man 2^{8}=25628=2562^{8}=256 Subnetze einrichten.

Beispielnetzwerk

Im unteren Beispiel siehst du zwei Netzwerke, die über einen Router miteinander verbunden sind. Jedes Netzwerk hat seine eigene Netzwerkadresse (z. B. Netzwerk A: 192.168.200.0), also die Adresse, mit der man ein Netzwerk eindeutig identifizieren kann.

Alle Hosts in einem Netzwerk haben ihre eigene eindeutige IP-Adresse, mit der sie entsprechend adressiert werden können.

Alle Hosts in einem Netzwerk haben ihre eigene IP-Adresse. Alle Netzwerke haben ihre eigene Netzwerkadresse, um das ganze Netz zu identifizieren.

IP-Adressen und Subnetting Zusammenfassung

Fassen wir nochmal das Wichtigste zusammen:

  • Die (Internet Protokoll)-Adresse (IP-Adresse) ist eine Netzwerkadresse, die allen Geräten in einem bestimmten Netz zugewiesen wird. Somit können die Datenpakete richtig adressiert werden.

  • Subnetting ist die Unterteilung eines Netzwerks in mehrere kleinere Teilnetzwerke.

  • Man unterscheidet generell zwischen klassenweiser (engl. classful) und klassenloser (engl. classless) IP-Adressierung.

  • Die wichtigsten Netzklassen sind: A, B und C.

  • Wenn bei einer IP-Adresse alle Host-Bits auf null gesetzt werden, spricht man von einer Netzwerk-Adresse.

  • Wenn bei einer IP-Adresse alle Host-Bits auf eins gesetzt werden, spricht man von einer Broadcast-Adresse.

  • Die Anzahl an möglichen Hosts ist immer 2^{\textsf{Host-Bits}}-22Host-Bits22^{\textsf{Host-Bits}}-2.

  • Wenn dir im Kontext von der klassenweisen IP-Adressierung eine Subnetzmaske gegeben ist, die größer ist als die Standardsubnetzmaske dieser Klasse, dann wurde die Subnetzmaske nach rechts verschoben, um Subnetting zu ermöglichen.

  • Bei der klassenlosen IP-Adessierung werden überhaupt keine Netzklassen betrachtet. Auch hier kann man die Subnetzmaske nach rechts verschieben, um Subnetting zu ermöglichen.

No items found.

simpleclub ist am besten in der App.

Mit unserer App hast du immer und überall Zugriff auf: Lernvideos, Erklärungen mit interaktiven Animationen, Übungsaufgaben, Karteikarten, individuelle Lernpläne uvm.

Jetzt simpleclub Azubi holen!

Mit simpleclub Azubi bekommst du Vollzugang zur App: Wir bereiten dich in deiner Ausbildung optimal auf deine Prüfungen in der Berufsschule vor. Von Ausbilder*innen empfohlen.

Jetzt simpleclub Azubi holen