IP-Adressen Berechung und Subnetting: Unterschied zwischen den Versionen

Aus Ergun's Wiki
Zur Navigation springen Zur Suche springen
 
(26 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 41: Zeile 41:
 
| style="width: 70px;" |  Dezimal
 
| style="width: 70px;" |  Dezimal
 
|-
 
|-
| <font color=darkgreen>11111111</font> || . || <font color=darkgreen>11111111</font> || . || <font color=darkgreen>111111</font><font color=darkred>00</font> || . || <font color=darkred>00000000</font> || Binär
+
| <font color= green>11111111</font> || . || <font color= green>11111111</font> || . || <font color= green>111111</font><font color= red>00</font> || . || <font color= red>00000000</font> || Binär
 
|-
 
|-
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
Zeile 49: Zeile 49:
 
Die Schrittweite wird auch "Increment" oder "Sprungweite" genannt.
 
Die Schrittweite wird auch "Increment" oder "Sprungweite" genannt.
 
==== Variante A ====
 
==== Variante A ====
Um die Schrittweite zu ermitteln, identifiziert man das Oktett in der Subnetzmaske (binär), in dem das erste auftreten der "<font color=darkred>0</font>" erfolgt.<br>
+
Um die Schrittweite zu ermitteln, identifiziert man das Oktett in der Subnetzmaske (binär), in dem das erste auftreten der "<font color= red>0</font>" erfolgt.<br>
 
In unserem "Beispiel A" ist dies das dritte Oktett.<br>
 
In unserem "Beispiel A" ist dies das dritte Oktett.<br>
 
{| style="text-align: center;" class="wikitable"
 
{| style="text-align: center;" class="wikitable"
Zeile 57: Zeile 57:
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
 
|-
 
|-
| . || <font color=darkcyan>111111</font><font color=darkred>00</font> || .  
+
| . || <font color=darkcyan>111111</font><font color= red>00</font> || .  
 
|-
 
|-
 
| . || <small>3. Oktett</small> || .  
 
| . || <small>3. Oktett</small> || .  
Zeile 71: Zeile 71:
 
  | style="width: 70px;" | 0
 
  | style="width: 70px;" | 0
 
  |-
 
  |-
  | . || <font color=darkcyan>11111111</font> || . || <font color=darkred>00000000</font>
+
  | . || <font color=darkcyan>11111111</font> || . || <font color= red>00000000</font>
 
  |-
 
  |-
 
  | . || <small>3. Oktett</small> || . || <small>4. Oktett</small>
 
  | . || <small>3. Oktett</small> || . || <small>4. Oktett</small>
Zeile 86: Zeile 86:
  
 
=== Ermittlung des Hostanteils ===
 
=== Ermittlung des Hostanteils ===
==== Variante A ====
+
 
Weiterhin stehen <font color=darkred>die 10 Nullen</font> für den Hostanteil  
+
Weiterhin stehen <font color= red>die 10 Nullen</font> für den Hostanteil  
 
{{Box|Breite=50%|Inhalt=2<sup>(Anzahl aller Nullen)</sup> <br>↓↓<br> 2<sup>10</sup> = 1.024 (-2)}}
 
{{Box|Breite=50%|Inhalt=2<sup>(Anzahl aller Nullen)</sup> <br>↓↓<br> 2<sup>10</sup> = 1.024 (-2)}}
 +
 +
Der einfache Weg ist, die CIDR einfach von 32 abzuziehen und das Ergebnis als Exponent zu benutzen, also
 +
{{Box|Breite=50%|Inhalt=2<sup>(32 - CIDR)</sup> <br>↓↓<br> 2<sup>32 - 22 (=10)</sup> = 1024 (-2)}}
 +
 
Hier werden immer 2 abgezogen, um die IP-Adressanzahl zu ermitteln, die Hosts zugeteilt zu bekommen, da zwei von diesen Adressen für Broadcast und NetzID reserviert werden.
 
Hier werden immer 2 abgezogen, um die IP-Adressanzahl zu ermitteln, die Hosts zugeteilt zu bekommen, da zwei von diesen Adressen für Broadcast und NetzID reserviert werden.
==== Variante B ====
 
Der einfache Weg ist, die CIDR einfach von 32 abzuziehen und das Ergebnis als Exponent zu benutzen, also
 
{{Box|Breite=50%|Inhalt=(32 - CIDR) <br>↓↓<br> 32 - 22 = 10 → 2<sup>10</sup> = 1024 (-2)}}
 
  
 
=== Ermittlung der Anzahl der Teilnetze ===
 
=== Ermittlung der Anzahl der Teilnetze ===
Die <font color=darkcyan>sechs Einsen</font> stehen für die Teilnetze.
+
Die <font color=darkcyan>sechs Einsen</font> im 3. Oktett der Subnetzmaske stehen für die Teilnetze.
 
{| style="text-align: center;" class="wikitable"
 
{| style="text-align: center;" class="wikitable"
 
|-
 
|-
Zeile 102: Zeile 103:
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
 
|-
 
|-
| . || <font color=darkcyan>111111</font><font color=darkred>00</font> || .  
+
| . || <font color= darkcyan>111111</font><font color= red>00</font> || .  
 
|-
 
|-
 
| . || <small>3. Oktett</small> || .  
 
| . || <small>3. Oktett</small> || .  
 
|}
 
|}
{{Box|Breite=50%|Inhalt=2<sup>(Anzahl der Einsen im Oktett)</sup> <br>↓↓<br> 2<sup>6</sup> = 64}}
+
{{Box|Breite=50%|Inhalt=2<sup>(Anzahl der Einsen im SN-Oktett)</sup> <br>↓↓<br> 2<sup>6</sup> = 64}}
  
 
=== Ermittlung der NetzID ===
 
=== Ermittlung der NetzID ===
 
==== Variante A ====
 
==== Variante A ====
Um die zur IP-Adresse zugehörige NetzID zu ermitteln, identifiziert man das Oktett in der Subnetzmaske (binär), in dem der Wechsel von <font color=darkcyan>1</font> auf <font color=darkred>0</font> erfolgt.<br>
+
Um die zur IP-Adresse zugehörige NetzID zu ermitteln, identifiziert man das Oktett in der Subnetzmaske (binär), in dem der Wechsel von <font color= cyan>1</font> auf <font color= red>0</font> erfolgt.<br>
 
In unserem Fall ist es das dritte Oktett.
 
In unserem Fall ist es das dritte Oktett.
 
Nun ermitteln wir im selben Oktett der ''IP-Adresse'' den dezimalen Wert. Im vorliegenden Fall also die „221“.
 
Nun ermitteln wir im selben Oktett der ''IP-Adresse'' den dezimalen Wert. Im vorliegenden Fall also die „221“.
Zeile 118: Zeile 119:
  
 
Wir nehmen vom Ergebnis nur den ganzzahligen Anteil und multiplizieren diesen mit der Schrittweite
 
Wir nehmen vom Ergebnis nur den ganzzahligen Anteil und multiplizieren diesen mit der Schrittweite
{{Box|Breite=50%|Inhalt=Schrittweite * Ganzzahliger Antei <br>↓↓<br> 4 * 55 = <font color=darkgreen>220</font>}}
+
{{Box|Breite=50%|Inhalt=Schrittweite * Ganzzahliger Anteil <br>↓↓<br> 4 * 55 = <font color= green>220</font>}}
 
Also lautet unsere NetzID für das Teilnetz in dem sich unsere IP-Adresse befindet:
 
Also lautet unsere NetzID für das Teilnetz in dem sich unsere IP-Adresse befindet:
 
{| style="text-align: center;" class="wikitable"
 
{| style="text-align: center;" class="wikitable"
Zeile 126: Zeile 127:
 
| style="width: 70px;" | 123
 
| style="width: 70px;" | 123
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>220</font>
+
| style="width: 70px;" | <font color= green>220</font>
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
 
| style="width: 70px;" | 0
 
| style="width: 70px;" | 0
Zeile 160: Zeile 161:
 
| style="width: 70px;" | 123
 
| style="width: 70px;" | 123
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>223</font>
+
| style="width: 70px;" | <font color= green>223</font>
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
 
| style="width: 70px;" | 235
 
| style="width: 70px;" | 235
Zeile 169: Zeile 170:
 
| <code>11111111</code> || . || <code>11111111</code> || . || <code>11111100</code> || . || <code>00000000</code> || Subnetzmaske (Binär)
 
| <code>11111111</code> || . || <code>11111111</code> || . || <code>11111100</code> || . || <code>00000000</code> || Subnetzmaske (Binär)
 
|-
 
|-
| <code><font color=darkgreen>10011001</font></code> || . || <code><font color=darkgreen>01111011</font></code> || . || <code><font color=darkgreen>110111</font><font color=darkred>00</font></code> || . || <code><font color=darkred>00000000</font></code> || UND Verknüpft<br> (=NetzID (Binär))
+
| <code><font color= green>10011001</font></code> || . || <code><font color= green>01111011</font></code> || . || <code><font color= green>110111</font><font color= red>00</font></code> || . || <code><font color= red>00000000</font></code> || UND Verknüpft<br> (=NetzID (Binär))
 
|-
 
|-
 
| 153 || . || 123 || . || 220 || . || 0 || NetzID (Dezimal))
 
| 153 || . || 123 || . || 220 || . || 0 || NetzID (Dezimal))
Zeile 175: Zeile 176:
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
 
|}
 
|}
Hiebei ist zu beachten, dass sich der Teil der IP-Adresse, der durch die Subnetzmaske mit "1" maskiert wurde, nicht geändert wurde. Der Teil, der mit "0" Maskiert ist, wurde konsequent auch auf "0" gesetzt.
+
Hierbei ist zu beachten, dass sich der Teil der IP-Adresse, der durch die Subnetzmaske mit "1" maskiert wurde, nicht geändert wurde. Der Teil, der mit "0" Maskiert ist, wurde konsequent auch auf "0" gesetzt.
  
 
=== Ermittlung der Broadcast-Adresse ===
 
=== Ermittlung der Broadcast-Adresse ===
Zeile 186: Zeile 187:
 
| style="width: 70px;" | 123
 
| style="width: 70px;" | 123
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>223</font>
+
| style="width: 70px;" | <font color= green>223</font>
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
 
| style="width: 70px;" | 255
 
| style="width: 70px;" | 255
Zeile 234: Zeile 235:
 
Vorgehen:<br>
 
Vorgehen:<br>
 
Wir suchen also eine Potenz, die mindestens 10 (+2, wegen Broadcast und NetzID) ergibt.<br>
 
Wir suchen also eine Potenz, die mindestens 10 (+2, wegen Broadcast und NetzID) ergibt.<br>
* 2<sup>2</sup> = 4
+
* 2<sup>2</sup> = 4 (-2) = 2 ← Zu klein!
* 2<sup>3</sup> = 8
+
* 2<sup>3</sup> = 8 (-2) = 6 ← immer noch zu klein!
* 2<sup>4</sup> = 16 (-2 = 14) ← Das ist die Potenz (X<sup>4</sup>), und damit gleichzeitig die Anzahl der "Nullen" (4), die wir benötigen!
+
* 2<sup>4</sup> = 16 (-2) = 14 ← Das ist die Potenz (X<sup>4</sup>), und damit gleichzeitig die Anzahl der "Nullen" (4), die wir benötigen!
 
Wir wissen weiterhin, dass die "Nullen" von hinten aufgefüllt werden, also sieht die Binärzahl folgenderweise aus:
 
Wir wissen weiterhin, dass die "Nullen" von hinten aufgefüllt werden, also sieht die Binärzahl folgenderweise aus:
  
 
{| style="text-align: center;" class="wikitable"
 
{| style="text-align: center;" class="wikitable"
 
|-
 
|-
| style="width: 70px;" | <font color=darkgreen>11111111</font>  
+
| style="width: 70px;" | <font color= green>11111111</font>  
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>11111111</font>
+
| style="width: 70px;" | <font color= green>11111111</font>
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>11111111</font>
+
| style="width: 70px;" | <font color= green>11111111</font>
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>1111</font><font color=darkred>0000</font>
+
| style="width: 70px;" | <font color= green>1111</font><font color= red>0000</font>
 
| style="width: 70px;" |  Dezimal
 
| style="width: 70px;" |  Dezimal
 
|-
 
|-
Zeile 260: Zeile 261:
 
{| style="text-align: center;" class="wikitable"
 
{| style="text-align: center;" class="wikitable"
 
|-
 
|-
| style="width: 70px;" | <font color=darkgreen>11111111</font>  
+
| style="width: 70px;" | <font color= green>11111111</font>  
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>11111111</font>
+
| style="width: 70px;" | <font color= green>11111111</font>
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>11111111</font>
+
| style="width: 70px;" | <font color= green>11111111</font>
 
| style="width: 10px;" | .
 
| style="width: 10px;" | .
| style="width: 70px;" | <font color=darkgreen>111</font><font color=darkred>00000</font>
+
| style="width: 70px;" | <font color= green>111</font><font color= red>00000</font>
 
| style="width: 70px;" |  Dezimal
 
| style="width: 70px;" |  Dezimal
 
|-
 
|-
Zeile 292: Zeile 293:
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> || <small>CIDR</small>
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> || <small>CIDR</small>
 
|}
 
|}
Dies zeigt an, dass wir insgesamt 64 Teilnetze mit jeweils 1.024 Hostadressen haben.
 
 
 
Gefragt ist nun, wie wir die Subnetzmaske ändern müssen, um 18 Teilnetze zu bekommen und wie sich dies auf die Hostanzahl auswirkt.
 
Gefragt ist nun, wie wir die Subnetzmaske ändern müssen, um 18 Teilnetze zu bekommen und wie sich dies auf die Hostanzahl auswirkt.
  
Zeile 309: Zeile 308:
 
| style="width: 70px;" |  Dezimal
 
| style="width: 70px;" |  Dezimal
 
|-
 
|-
| <font color=darkgreen>11111111</font> || . || <font color=darkgreen>11111111</font> || . || <font color=darkgreen>111111</font><font color=darkred>00</font> || . || <font color=darkred>00000000</font> || Binär
+
| <font color= green>11111111</font> || . || <font color= green>11111111</font> || . || <font color= green>111111</font><font color= red>00</font> || . || <font color= red>00000000</font> || Binär
 
|-
 
|-
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
 
|}
 
|}
 +
Dies zeigt an, dass wir insgesamt 64 (2<sup>(Anzahl der Einsen im SN-Oktett)</sup>) Teilnetze mit jeweils 1.024 (2<sup>(Anzahl aller Nullen)</sup>) Hostadressen haben.
 +
 
=== Subnetzmaske anpassen ===
 
=== Subnetzmaske anpassen ===
Wie wir aus der vorausgegangenen Betrachtung schon gesehen haben, stehen die <font color=darkgreen>6 Einsen</font> für 2<sup>6</sup> = 64 Teilnetze.
+
Wie wir aus der vorausgegangenen Betrachtung schon gesehen haben, stehen die <font color= green>6 Einsen</font> für 2<sup>6</sup> = 64 Teilnetze.
  
Dies würde bedeuten, dass wenn nur noch 5 Einsen beteiligt wären hätten wir 32 Teilnetze und bei 4 Einsen würden nur noch 16 Teilnetze zur Verfügung stehen.<br>Letzteres wäre jedoch zu wenig, da wir ja 18 Teilnetze haben wollen. So bleibt uns keine andere Wahl, als auf 32 Teilnetze auszuweichen.
+
Dies würde bedeuten, dass wenn nur noch 5 Einsen beteiligt wären, hätten wir 32 Teilnetze und bei 4 Einsen würden nur noch 16 Teilnetze zur Verfügung stehen.<br>Letzteres wäre jedoch zu wenig, da wir ja 18 Teilnetze haben wollen. So bleibt uns keine andere Wahl, als auf 32 Teilnetze auszuweichen.
 
Dann würde die Subnetzmaske nun so aussehen:
 
Dann würde die Subnetzmaske nun so aussehen:
  
Zeile 330: Zeile 331:
 
| style="width: 70px;" |  Dezimal
 
| style="width: 70px;" |  Dezimal
 
|-
 
|-
| <font color=darkgreen>11111111</font> || . || <font color=darkgreen>11111111</font> || . || <font color=darkgreen>11111</font><font color=darkred>000</font> || . || <font color=darkred>00000000</font> || Binär
+
| <font color= green>11111111</font> || . || <font color= green>11111111</font> || . || <font color= green>11111</font><font color= red>000</font> || . || <font color= red>00000000</font> || Binär
 
|-
 
|-
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
 
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||  
Zeile 380: Zeile 381:
 
|}
 
|}
 
Im vierten Oktett steht nun eine 1, was bedeutet, das die Teilnetze 2<sup>1</sup> = 2 sind.<br>
 
Im vierten Oktett steht nun eine 1, was bedeutet, das die Teilnetze 2<sup>1</sup> = 2 sind.<br>
Die Hostanzahl ist nun 2<sup>7</sup> = 128 (-2) und die Broadcastadresse ist 192.168.0.255.
+
Die Hostanzahl ist nun 2<sup>7</sup> = 128 (-2). Damit Ergibt sich, dass es nun auch 2 NetzID's und 2 Broadcastadressen gibt:<br>
 +
NetzID 1: 192.168.0.0<br>
 +
Broadcast 1: 192.168.0.127<br>
 +
NetzID 2: 192.168.0.128<br>
 +
Broadcast 2: 192.168.0.255<br>
 +
 
 +
=== Betrachtung auf Bitebene ===
 +
Die Subnetzmaskenbetrachtung kann auch auf Bitebene erfolgen.<br>
 +
Gegeben sei hier:<br>
 +
NetzID: 192.168.0.0/24
 +
 
 +
Dieses Netz soll in 4 Teilnetze aufgeteilt werden.
 +
 
 +
Hierzu wandeln wir zuerst die Subnetzmaske vom CIDR Format ins binäre Format:
 +
{| style="text-align: center;" class="wikitable"
 +
|-
 +
| style="width: 70px;" | <code>11111111</code>
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code>11111111</code>
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code>11111111</code>
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code>00000000</code>
 +
| style="width: 150px;" | Subnetzmaske (Binär)
 +
|-
 +
| 255 || . || 255 || . || 255 || . || 0 || Subnetzmaske (Dezimal)
 +
|-
 +
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||
 +
|}
 +
Wie aus den vorangegangenen Kapiteln ersichtlich, haben wir 1 Subnetz (2<sup>0</sup> = 1) und 256 (2<sup>8</sup> = 256) - 2 Hosts, die wir mit dieser Subnetzmaske adressieren können.
 +
 
 +
Damit wir das Netz in 4 (2<sup>2</sup> = 4) Teile auftrennen können müssen wir die Subnetze von 1 auf 4 erweitern.
 +
 
 +
{| style="text-align: center;" class="wikitable"
 +
|-
 +
| style="width: 70px;" | <code>11111111</code>
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code>11111111</code>
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code>11111111</code>
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>11</font>000000</code>
 +
| style="width: 150px;" | Subnetzmaske (Binär)
 +
|-
 +
| 255 || . || 255 || . || 255 || . || 192 || Subnetzmaske (Dezimal)
 +
|-
 +
| <small>1. Oktett</small> || . || <small>2. Oktett</small> || . || <small>3. Oktett</small> || . || <small>4. Oktett</small> ||
 +
|}
 +
 
 +
Nun Betrachten wir die IP Adressen der einzelnen Subnetze
 +
 
 +
{| style="text-align: center;" class="wikitable"
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>00</font></code><code>000000</code>
 +
| style="width: 150px;" | NetzID 1. Subnetz<br>(.0)
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>00</font></code><code>111111</code>
 +
| style="width: 150px;" | Broadcast 1. Subnetz<br>(.63)
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>01</font></code><code>000000</code>
 +
| style="width: 150px;" | NetzID 2. Subnetz<br>(.64)
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>01</font></code><code>111111</code>
 +
| style="width: 150px;" | Broadcast 2. Subnetz<br>(.127)
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>10</font></code><code>000000</code>
 +
| style="width: 150px;" | NetzID 3. Subnetz<br>(.128)
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>10</font></code><code>111111</code>
 +
| style="width: 150px;" | Broadcast 3. Subnetz<br>(.191)
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>11</font></code><code>000000</code>
 +
| style="width: 150px;" | NetzID 4. Subnetz<br>(.192)
 +
|-
 +
| style="width: 70px;" | 192
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 168
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | 0
 +
| style="width: 10px;" | .
 +
| style="width: 70px;" | <code><font color=red>11</font></code><code>111111</code>
 +
| style="width: 150px;" | Broadcast 4. Subnetz<br>(.255)
 +
|-
 +
| <small>1. Oktett<br>dezimal</small> || . || <small>2. Oktett<br>dezimal</small> || . || <small>3. Oktett<br>dezimal</small> || . || <small>4. Oktett<br>binär</small> ||
 +
|}
 +
Am obigem Beispiel sieht man, dass zur Bildung der NetzID der Bereich für die Hosts (die letzten 6 Bit) jeweils auf "0" gesetzt werden, während zur Bildung der Broadcastadresse die Bits auf "1" gesetzt werden.<br>
 +
Die ersten 2 Bits (im 4. Oktett) geben in Kombination mit der Subnetzmaske die Subnetze an (00,01,10,11)
  
 
== Hilfstabelle für das Subnetting ==
 
== Hilfstabelle für das Subnetting ==
Zeile 391: Zeile 520:
 
Lokalisation CDIR /25 in Zeile 4. Oktett --> Dezimal 128<br>
 
Lokalisation CDIR /25 in Zeile 4. Oktett --> Dezimal 128<br>
 
Subnetzmaske: 255.255.255.128
 
Subnetzmaske: 255.255.255.128
NetzID: 192.
 
  
 
{| class="wikitable"
 
{| class="wikitable"

Aktuelle Version vom 21. November 2016, 17:56 Uhr


Beschreibung

Um für IPv4 Adressen die Subnetzmaskke, die NetzID oder die Broadcast-IP herauszubekommen, gibt es im Internet viele Anbieter, welche die Rechnungen übernehmen. Genannt seien z.B.

  • Heise Netzwerk-Rechner[1]

Teilnetz, NetzID und Broadcast ermitteln

Ermitteln, in welchem Teilnetz eine IP Adresse liegt und welche NetzID und Broadcast-Adresse dieser Bereich hat.

Beispieldaten

Zur Demonstration der Berechnung wird hier primär folgende Beispiel IP-Adresse herangezogen:

153 . 123 . 221 . 235 /22
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett CIDR

Alternative IP Adressen werden in den Beispielen zur Verdeutlichung herangezogen und sind als "Beispiel B" gekennzeichnet.

Subnetzmaske ermitteln

Aus der CIDR Notationsschreibweise "/22" folgt die Subnetzmaske:

255 . 255 . 252 . 0 Dezimal
11111111 . 11111111 . 11111100 . 00000000 Binär
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Ermittlung der Schrittweite

Die Schrittweite wird auch "Increment" oder "Sprungweite" genannt.

Variante A

Um die Schrittweite zu ermitteln, identifiziert man das Oktett in der Subnetzmaske (binär), in dem das erste auftreten der "0" erfolgt.
In unserem "Beispiel A" ist dies das dritte Oktett.

. 252 .
. 11111100 .
. 3. Oktett .

Die Anzahl der Nullen im Oktett (hier 2) gibt uns die Schrittweite an:

2(Anzahl der Nullen im SN-Oktett)
↓↓
22 = 4

Im nachfolgenden "Beispiel B" ist es das 4. Oktett.

. 255 . 0
. 11111111 . 00000000
. 3. Oktett . 4. Oktett
2(Anzahl der Nullen im SN-Oktett)
↓↓
28 = 256

Variante B

Ableitend aus Variante A ergibt sich, dass man ebenfalls den Wert des betreffenden Oktettes von 256 abziehen kann, also:

Für "Beispiel A" wird die dezimale Zahl des Oktetts genommen,in dem die erste "Null" auftritt (hier Oktett 3):

256 - (Dezimale Zahl im SN-Oktett)
↓↓
256 - 252 = 4

Für "Beispiel B" tritt die erste "Null" im 4. Oktett auf. Der dezimale Wert des Oktetts ist 0, also lautet die Rechnung:

256 - 0 = 256

Ermittlung des Hostanteils

Weiterhin stehen die 10 Nullen für den Hostanteil

2(Anzahl aller Nullen)
↓↓
210 = 1.024 (-2)

Der einfache Weg ist, die CIDR einfach von 32 abzuziehen und das Ergebnis als Exponent zu benutzen, also

2(32 - CIDR)
↓↓
232 - 22 (=10) = 1024 (-2)

Hier werden immer 2 abgezogen, um die IP-Adressanzahl zu ermitteln, die Hosts zugeteilt zu bekommen, da zwei von diesen Adressen für Broadcast und NetzID reserviert werden.

Ermittlung der Anzahl der Teilnetze

Die sechs Einsen im 3. Oktett der Subnetzmaske stehen für die Teilnetze.

. 252 .
. 11111100 .
. 3. Oktett .
2(Anzahl der Einsen im SN-Oktett)
↓↓
26 = 64

Ermittlung der NetzID

Variante A

Um die zur IP-Adresse zugehörige NetzID zu ermitteln, identifiziert man das Oktett in der Subnetzmaske (binär), in dem der Wechsel von 1 auf 0 erfolgt.
In unserem Fall ist es das dritte Oktett. Nun ermitteln wir im selben Oktett der IP-Adresse den dezimalen Wert. Im vorliegenden Fall also die „221“.

Diese Zahl teilt man durch die Schrittweite und erhält:

IP-Adressteil im Oktett / Schrittweite
↓↓
221 / 4 = 55,25

Wir nehmen vom Ergebnis nur den ganzzahligen Anteil und multiplizieren diesen mit der Schrittweite

Schrittweite * Ganzzahliger Anteil
↓↓
4 * 55 = 220

Also lautet unsere NetzID für das Teilnetz in dem sich unsere IP-Adresse befindet:

153 . 123 . 220 . 0
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Zudem kann man nun den nächst höheren Wert der Zahl 55,25 nehmen (also 56), womit man auch die Teilnetznummer hat.

Variante B

Eine andere Möglichkeit, die NetzID herauszufinden, ist die UND-Verknüpfungsvariante.

Hier werden die IP und die Subnetzmaske bitweise folgenderweise verknüpft:

IP-Bit SN-Bit NetzID Bit
0 0 0
0 1 0
1 0 0
1 1 1

Sehen wir uns dies an dem gegebenen Beispiel an:

153 . 123 . 223 . 235 IP (Dezimal)
10011001 . 01111011 . 11011101 . 11101011 IP (Binär)
11111111 . 11111111 . 11111100 . 00000000 Subnetzmaske (Binär)
10011001 . 01111011 . 11011100 . 00000000 UND Verknüpft
(=NetzID (Binär))
153 . 123 . 220 . 0 NetzID (Dezimal))
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Hierbei ist zu beachten, dass sich der Teil der IP-Adresse, der durch die Subnetzmaske mit "1" maskiert wurde, nicht geändert wurde. Der Teil, der mit "0" Maskiert ist, wurde konsequent auch auf "0" gesetzt.

Ermittlung der Broadcast-Adresse

Da die Broadcast-Adresse die letzte verfügbare Adresse im Teilnetz sein muss, ermittelt man zunächst die nächste NetzID, in dem auf die 220 die Schrittweite 4 addiert In unseren Fall wäre dies also die 153.123.224.0. Wenn wir von dieser Adresse wieder „ein Bit“ abziehen, erhalten wir die Broadcast-Adresse:

153 . 123 . 223 . 255
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Ergebnis

An nachfolgender Tabelle können wir nun unser Ergebnis nachvollziehen:

Teilnetz NetzID Host von - Host bis Broadcastadresse
1 153.123.0.0 153.123.0.1 - 153.123.3.254 153.123.3.255
2 153.123.4.0 153.123.4.1 - 153.123.7.254 153.123.7.255
...
56 153.123.220.0 153.123.220.1 - 153.123.223.254 153.123.223.255
...
64 153.123.252.0 153.123.252.1 - 153.123.255.254 153.123.255.255

Somit haben wir alle benötigten Daten zusammen:

IP 153.123.221.235
Subnetzmaske 255.255.252.0
NetzID 153.123.220.0
Broadcast 153.123.223.254

Abwandlungen der Rechnung

Finden einer Subnetzmaske

NetzID und gew. Anzahl Hosts pro Subnetz bekannt

Gegeben ist:

  • NetzID: 120.48.7.96
  • Anzahl der verwendbaren Subnetze: 5
  • Anzahl Hosts pro Subnetz: 10

Gesucht wird:

  • Subnetzmaske

Überlegung:
Wie wir wissen, ist die Anzahl an möglichen Hosts in der Anzahl der "Nullen" in der Subnetzmaske abgebildet.
Vorgehen:
Wir suchen also eine Potenz, die mindestens 10 (+2, wegen Broadcast und NetzID) ergibt.

  • 22 = 4 (-2) = 2 ← Zu klein!
  • 23 = 8 (-2) = 6 ← immer noch zu klein!
  • 24 = 16 (-2) = 14 ← Das ist die Potenz (X4), und damit gleichzeitig die Anzahl der "Nullen" (4), die wir benötigen!

Wir wissen weiterhin, dass die "Nullen" von hinten aufgefüllt werden, also sieht die Binärzahl folgenderweise aus:

11111111 . 11111111 . 11111111 . 11110000 Dezimal
255 . 255 . 255 . 240 Binär
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

In der CIDR Schreibweise ausgedrückt: /28
Anzumerken ist, das mit dieser Subnetzmaske in Wirklichkeit nicht nur 10 sondern 14 Hosts IP-Adressen beziehen können. Auch sind es nicht nur 5 Teilnetze die wir bilden können, sondern 16. Da jedoch 5 < 16 ist, kommen wir der Anforderung nach. Wenn wir mit der Subnetzmaske tatsächlich so nah an 5 Teilnetze herankommen möchten, wie möglich, dann würde die Subnetzmaske so aussehen:

11111111 . 11111111 . 11111111 . 11100000 Dezimal
255 . 255 . 255 . 224 Binär
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Nun können wir nur noch 23 = 8 Teilnetze haben, allerdings hat sich nun unser verfügbarer Hostanteil vergrößert (25 = 32).

Teilnetz vergrößern / verkleinern

Manchmal steht man vor der Aufgabe, ein vorhandenes Netz zu vergrößern, bzw. zu verkleinern

Eingangsdaten

Gegeben ist die NetzID:

153 . 123 . 0 . 0 /22
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett CIDR

Gefragt ist nun, wie wir die Subnetzmaske ändern müssen, um 18 Teilnetze zu bekommen und wie sich dies auf die Hostanzahl auswirkt.

Subnetzmaske ermitteln

Zuerst ermitteln wir aus der CIDR Notationsschreibweise "/22" die Subnetzmaske:

255 . 255 . 252 . 0 Dezimal
11111111 . 11111111 . 11111100 . 00000000 Binär
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Dies zeigt an, dass wir insgesamt 64 (2(Anzahl der Einsen im SN-Oktett)) Teilnetze mit jeweils 1.024 (2(Anzahl aller Nullen)) Hostadressen haben.

Subnetzmaske anpassen

Wie wir aus der vorausgegangenen Betrachtung schon gesehen haben, stehen die 6 Einsen für 26 = 64 Teilnetze.

Dies würde bedeuten, dass wenn nur noch 5 Einsen beteiligt wären, hätten wir 32 Teilnetze und bei 4 Einsen würden nur noch 16 Teilnetze zur Verfügung stehen.
Letzteres wäre jedoch zu wenig, da wir ja 18 Teilnetze haben wollen. So bleibt uns keine andere Wahl, als auf 32 Teilnetze auszuweichen. Dann würde die Subnetzmaske nun so aussehen:

255 . 255 . 248 . 0 Dezimal
11111111 . 11111111 . 11111000 . 00000000 Binär
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Die Schrittweite berechnet sich wie oben genannt und entspricht nun dem Wert 8.
Der Hostanteil ist nun auf 2.048 gestiegen.

Weitere Beispiele

Betrachten wir die oft benutze Kombination 192.168.0.0/24.
Diese wird man in vielen privaten Haushalten vorfinden.

192 . 168 . 0 . 0 NetzID (Dezimal)
255 . 255 . 255 . 0 Subnetzmaske (Dezimal)
11000000 . 10101000 . 00000000 . 00000000 NetzID (Binär)
11111111 . 11111111 . 11111111 . 00000000 Subnetzmaske (Binär)
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Anhand der binären Subnetzmaske sehen wir den Übergang von "1" auf "0" im 4. Oktett. Da es hier keine Einsen gibt, bedeutet das für die Teilnetze 20 = 1. Die Hostanzahl ist 28 = 256 (-2) und die Broadcastadresse ist 192.168.0.255.

Will man dieses Netz nun in 2 Teilnetze aufteilen, muss die Subnetzmaske geändert werden.

11111111 . 11111111 . 11111111 . 10000000 Subnetzmaske (Binär)
255 . 255 . 255 . 128 Subnetzmaske (Dezimal)
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Im vierten Oktett steht nun eine 1, was bedeutet, das die Teilnetze 21 = 2 sind.
Die Hostanzahl ist nun 27 = 128 (-2). Damit Ergibt sich, dass es nun auch 2 NetzID's und 2 Broadcastadressen gibt:
NetzID 1: 192.168.0.0
Broadcast 1: 192.168.0.127
NetzID 2: 192.168.0.128
Broadcast 2: 192.168.0.255

Betrachtung auf Bitebene

Die Subnetzmaskenbetrachtung kann auch auf Bitebene erfolgen.
Gegeben sei hier:
NetzID: 192.168.0.0/24

Dieses Netz soll in 4 Teilnetze aufgeteilt werden.

Hierzu wandeln wir zuerst die Subnetzmaske vom CIDR Format ins binäre Format:

11111111 . 11111111 . 11111111 . 00000000 Subnetzmaske (Binär)
255 . 255 . 255 . 0 Subnetzmaske (Dezimal)
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Wie aus den vorangegangenen Kapiteln ersichtlich, haben wir 1 Subnetz (20 = 1) und 256 (28 = 256) - 2 Hosts, die wir mit dieser Subnetzmaske adressieren können.

Damit wir das Netz in 4 (22 = 4) Teile auftrennen können müssen wir die Subnetze von 1 auf 4 erweitern.

11111111 . 11111111 . 11111111 . 11000000 Subnetzmaske (Binär)
255 . 255 . 255 . 192 Subnetzmaske (Dezimal)
1. Oktett . 2. Oktett . 3. Oktett . 4. Oktett

Nun Betrachten wir die IP Adressen der einzelnen Subnetze

192 . 168 . 0 . 00000000 NetzID 1. Subnetz
(.0)
192 . 168 . 0 . 00111111 Broadcast 1. Subnetz
(.63)
192 . 168 . 0 . 01000000 NetzID 2. Subnetz
(.64)
192 . 168 . 0 . 01111111 Broadcast 2. Subnetz
(.127)
192 . 168 . 0 . 10000000 NetzID 3. Subnetz
(.128)
192 . 168 . 0 . 10111111 Broadcast 3. Subnetz
(.191)
192 . 168 . 0 . 11000000 NetzID 4. Subnetz
(.192)
192 . 168 . 0 . 11111111 Broadcast 4. Subnetz
(.255)
1. Oktett
dezimal
. 2. Oktett
dezimal
. 3. Oktett
dezimal
. 4. Oktett
binär

Am obigem Beispiel sieht man, dass zur Bildung der NetzID der Bereich für die Hosts (die letzten 6 Bit) jeweils auf "0" gesetzt werden, während zur Bildung der Broadcastadresse die Bits auf "1" gesetzt werden.
Die ersten 2 Bits (im 4. Oktett) geben in Kombination mit der Subnetzmaske die Subnetze an (00,01,10,11)

Hilfstabelle für das Subnetting

Hier eine kleine Liste, mit der man sich das Subnetting deutlich erleichtern kann.

Zur Verwendung dieser Tabelle:

Wir haben die IP-Adresse 192.168.3.4 /25
Die Subnetzmaske wäre dann:
Lokalisation CDIR /25 in Zeile 4. Oktett --> Dezimal 128
Subnetzmaske: 255.255.255.128

/1 /2 /3 /4 /5 /6 /7 /8 1. Oktett CDIR
/9 /10 /11 /12 /13 /14 /15 /16 2. Oktett
/17 /18 /19 /20 /21 /22 /23 /24 3. Oktett
/25 /26 /27 /28 /29 /30 /31 /32 4. Oktett
128 192 224 240 248 252 254 255 Dezimal
128 64 32 16 8 4 2 1 Anzahl der IP Adressen

(IPeff = Anzahl - 2,Schrittweite)

2 4 8 16 32 64 128* 256* Anzahl der Subnetze

* = hier können keine Host-IP Adressen mehr vergeben werden, WENN es sich um das letzte Oktett handelt

Eine vereinfachte Tabelle:

Überschrift
128 64 32 16 8 4 2 1
| | | | | | | |
Netzanteil 2 4 8 16 32 64 128 256
| | | | | | | |
Hostanteil 256 128 64 32 16 8 4 2

Einzelnachweise, Weblinks und Anmerkungen