# Netzmaske

Die Netzmaske, Netzwerkmaske oder Subnetzmaske legt in Rechnernetzen in Verbindung mit der IP-Adresse fest, welche IP-Adressen ein Gerät im eigenen Netz ohne die Zuhilfenahme eines Routers erreichen kann und für welche Zielnetze das Gerät Datenpakete an einen Router zwecks weiterer Vermittlung in andere Netze zustellen muss.

## Erläuterung

Die Netzmaske ist eine Bitmaske, die im Netzprotokoll IPv4 bei der Beschreibung von IP-Netzen angibt, welche Bit-Position innerhalb der IP-Adresse für die Adressierung des Netz- bzw. Host-Anteils genutzt werden soll. Der Netzanteil erstreckt sich innerhalb der IP-Adresse lückenlos von links nach rechts; der Hostanteil von rechts nach links. Der für die Adressierung des Netzanteils innerhalb der IP-Adresse genutzte Bereich wird auch Präfix genannt. Anstelle einer Subnetzmaske kann dieser für IPv4 und IPv6 auch mit der Angabe einer Präfixlänge spezifiziert werden.
Der Netzteil muss bei allen Geräten des jeweiligen Netzes gleich sein und damit verwenden alle Kommunikationsteilnehmer dieses IP-Netzes in der Regel auch dieselbe Subnetzmaske (bzw. Präfixlänge). Der Geräteteil der IP-Adresse wird für jedes Gerät innerhalb des Netzes individuell vergeben.
Unabhängig von vergebenen IP-Adressen werden Netzmasken bzw. Präfixlängen bei der Darstellung von IP-Netzen in Routingtabellen und Filterdefinitionen sowohl in Routingprotokollen als auch in Paketfiltern benutzt. Einige Hersteller von Netzkomponenten verwenden hier jedoch die invertierte Form der Subnetzmaske. Der obige Geräteteil wird hierbei in allen binären Stellen mit Null angegeben oder weggelassen.
Analogie: Bei einer landesweit gültigen Telefonnummer, bestehend aus Ortsvorwahl und Anschlussnummer, wenn alle Ziffern hintereinander geschrieben werden, fehlt die Information, wo die Vorwahl endet und die Anschlussnummer beginnt. Darum werden die beiden Teile meist durch einen Separator (z. B. Leerzeichen) voneinander getrennt oder die Vorwahl wird in Klammern gefasst. Diese Art Information steckt bei der Angabe eines IP-Netzes in der Netzmaske bzw. Präfixlänge. Die Darstellung eines IP-Netzes entspricht in dieser Analogie der Angabe der bloßen Ortsvorwahl.

## Darstellung
### Bits

Eine IPv4-Netzmaske ist genau so lang wie eine IPv4-Adresse, also 32 Bit. Eine 1 in der Netzmaske kennzeichnet die Verwendung des Bits an derselben Position in der IP-Adresse für die Adressierung von Netzen. Eine 0 an derselben Position in der IP-Adresse kennzeichnet Adressinformationen für den Geräteanteil. Der Netzteil einer IPv4-Adresse ergibt sich damit aus ihrer bitweisen logischen UND-Verknüpfung mit der Netzmaske. Nach der bitweisen Negation der Netzmaske wird der Geräteteil ebenso abgetrennt.
Beispiel
| | IPv4-Adresse | 11000000 10101000 00000001 10000001 | 192.168.1.129 |
| UND | Netzmaske | 11111111 11111111 11111111 00000000 | 255.255.255.0 |
| = | Netzwerkteil | 11000000 10101000 00000001 00000000 | 192.168.1.0 |
| | IPv4-Adresse | 11000000 10101000 00000001 10000001 | 192.168.1.129 |
| UND | NOT Netzmaske | 00000000 00000000 00000000 11111111 | 0.0.0.255 |
| = | Geräteteil | 00000000 00000000 00000000 10000001 | 0.0.0.129 |
Bei einer solchen 32 Bit breiten Netzmaske mit 24 gesetzten Bits verbleiben 8 Bits und damit 2$^8$ = 256 Adressen für Geräteteile. Man spricht von einem 24-Bit-Netz. Weil die kleinste Adresse (alle Bits im Geräteteil sind null) das Netz selbst beschreibt und die größte Adresse (alle Bits im Geräteteil sind eins) für den Broadcast reserviert ist, zählen sie nicht zu den Adressen, die durch Geräte als Host-Adresse genutzt werden. Mit einer 24-Bit-Maske stehen also 254 Adressen für die Adressierung von Geräten in diesem Netz zur Verfügung.

### IPv4

Die Notation von Netzmasken wie IPv4-Adressen erfolgt in der Regel nicht im Dualsystem, sondern im Dezimalsystem. Dann lautet die IP-Adresse des obigen Beispiels 192.168.1.129 und die Netzmaske 255.255.255.0 oder kurz /24. Somit ist der Netzteil 192.168.1 und der Geräteteil 129. Das IP-Netz kann man auch als 192.168.1.0/24 beschreiben.
Während die CIDR-Notation /24 die Anzahl der in der Netzmaske gesetzten Bits angibt, wird die Netzmaske bei der dotted decimal notation in vier Oktette zerlegt, die durch Dezimalzahlen dargestellt werden. Die Dezimalzahl 255 hat den gleichen Wert wie die Dualzahl 11111111, die 8 gesetzten Bits entspricht. So ergeben sich im Beispiel 8+8+8+0=24 gesetzte Bits. Eine Übersicht über alle IPv4-Netzmasken größer als /8 in verschiedenen Notationen befindet sich im Artikel CIDR.
Beispiel 1: Untersucht werden soll die IP-Adresse 192.168.1.188/27, in anderer Schreibweise 192.168.1.188/255.255.255.224. Die Netzmaske ist eine 27-Bit-Maske. Zuerst soll die Frage geklärt werden, wie viele IP-Adressen zu einem 27-Bit-Netz gehören. Antwort: Eine IPv4-Adresse besteht aus 32 Bits. 32 minus 27 ist 5. Die 27-Bit-Maske lässt also $2^{5}$ Adressen zur freien Verfügung, d. h. 32. Zu einem 27-Bit-Netz gehören somit 32 Adressen. Nun soll die Frage geklärt werden, wie das Netz heißt, zu dem die Adresse gehört. Antwort: Die kleinste Adresse aus dem vorbestimmten Umfang gibt dem Netz seinen Namen. Das bedeutet, alle Bits im Geräteteil der betrachteten IP-Adresse werden zu null gewählt (und damit nur der verbleibende Netzwerkteil berücksichtigt). Betrachtet man 192.168.1.188/27, ergibt sich damit der Name 192.168.1.160/27 nach Anwendung der Netzmaske 255.255.255.224 auf die IP-Adresse 192.168.1.188. Zum Netz gehören die $2^{5}=32$ Adressen von 192.168.1.160 bis einschließlich 192.168.1.191. Die Adresse 192.168.1.160 bezeichnet das Netz selbst, 192.168.1.191 ist die Broadcast-Adresse. Für Geräte nutzbar bleiben die 30 IP-Adressen von 192.168.1.161 bis einschließlich 192.168.1.190.
Beispiel 2: 172.16.0.0/16 und 172.16.0.0/24 unterscheiden sich dadurch, dass das erste Netz die IP-Adressen 172.16.0.1 bis 172.16.255.254 umfasst, während das zweite nur den Bereich 172.16.0.1 bis 172.16.0.254 beinhaltet.

### IPv6

IPv6 verwendet eine andere Netzmaske als IPv4. Die wesentlichen Unterschiede sind in RFC 5942 (IPv6 Subnet Model) zusammengefasst. Bei der Präfixlänge für IPv6 wird schlicht wie im CIDR die Anzahl der Bits im Netzwerkteil getrennt durch „/“ hinter die IPv6-Adresse geschrieben, zum Beispiel 2001:0db8:85a3:08d3:1319:8a2e:0370:7347/64. Die Präfixlänge ist in diesem Falle /64, das Netz 2001:0db8:85a3:08d3:0000:0000:0000:0000/64 und der Geräteteil oder Interface-Identifier ist 1319:8a2e:0370:7347. Diese Schreibweise setzt sich auch für IPv4 immer mehr durch.
Ein weniger eingängiges Beispiel ist 2001:0db8:85a3:08d3:1319:8a2e:0370:7347/57, das zugehörige Netz ist 2001:0db8:85a3:0880:0000:0000:0000:0000/57 und enthält die Adressen 2001:0db8:85a3:0880:0000:0000:0000:0000 bis 2001:0db8:85a3:08ff:ffff:ffff:ffff:ffff, von denen auch einige für Sonderfunktionen bestimmt sind. Den Umgang mit wenig übersichtlichen IPv6-Netzen erleichtert das frei verfügbare Werkzeug sipcalc:

## Präfixlängen als Netzgrößen

Die Netzmaske (IPv4) oder Präfixlänge (IPv6) kann man auch als Größenangabe eines IP-Netzes verstehen, wobei größere Präfixlängen kleinere Netze bedeuten, da nicht so viele Bits für Geräteteile zur Verfügung stehen.
Beispiele
| Netzmaske | Netzmaske | Anzahl nutzbarer IPv4-Adressen | Maske als Bit-Muster |
| /0 | 0.0.0.0 | max. 4.294.967.294 (Nur ein großes Netz ohne Router) | 0000’0000.0000’0000.0000’0000.0000’0000 |
| /4 | 240.0.0.0 | max. 268.435.454 | 1111’0000.0000’0000.0000’0000.0000’0000 |
| /8 | 255.0.0.0 | max. 16.777.214 | 1111’1111.0000’0000.0000’0000.0000’0000 |
| /12 | 255.240.0.0 | max. 1.048.574 | 1111’1111.1111’0000.0000’0000.0000’0000 |
| /16 | 255.255.0.0 | max. 65.534 | 1111’1111.1111’1111.0000’0000.0000’0000 |
| /17 | 255.255.128.0 | max. 32.766 | 1111’1111.1111’1111.1000’0000.0000’0000 |
| /18 | 255.255.192.0 | max. 16.382 | 1111’1111.1111’1111.1100’0000.0000’0000 |
| /19 | 255.255.224.0 | max. 8190 | 1111’1111.1111’1111.1110’0000.0000’0000 |
| /20 | 255.255.240.0 | max. 4094 | 1111’1111.1111’1111.1111’0000.0000’0000 |
| /21 | 255.255.248.0 | max. 2046 | 1111’1111.1111’1111.1111’1000.0000’0000 |
| /22 | 255.255.252.0 | max. 1022 | 1111’1111.1111’1111.1111’1100.0000’0000 |
| /23 | 255.255.254.0 | max. 510 | 1111’1111.1111’1111.1111’1110.0000’0000 |
| /24 | 255.255.255.0 | max. 254 | 1111’1111.1111’1111.1111’1111.0000’0000 |
| /25 | 255.255.255.128 | max. 126 | 1111’1111.1111’1111.1111’1111.1000’0000 |
| /26 | 255.255.255.192 | max. 62 | 1111’1111.1111’1111.1111’1111.1100’0000 |
| /27 | 255.255.255.224 | max. 30 | 1111’1111.1111’1111.1111’1111.1110’0000 |
| /28 | 255.255.255.240 | max. 14 | 1111’1111.1111’1111.1111’1111.1111’0000 |
| /29 | 255.255.255.248 | max. 6 | 1111’1111.1111’1111.1111’1111.1111’1000 |
| /30 | 255.255.255.252 | max. 2 | 1111’1111.1111’1111.1111’1111.1111’1100 |
| /31 | 255.255.255.254 | 2 als Punkt-zu-Punkt-Verbindung | 1111’1111.1111’1111.1111’1111.1111’1110 |
| /32 | 255.255.255.255 | genau 1 (nicht nutzbar) | 1111’1111.1111’1111.1111’1111.1111’1111 |
Mehr Beispiele: Sämtliche Werte.