Was der Subnetz-Rechner ausrechnet
Eine IPv4-Adresse besteht aus 32 Bit. Das Präfix hinter dem Schrägstrich (CIDR-Schreibweise) sagt, wie viele Bit von links das Netz bestimmen. Der Rest adressiert die einzelnen Geräte. Bei 192.168.1.10/24 sind die ersten 24 Bit das Netz 192.168.1.0, die letzten 8 Bit erlauben 256 Adressen.
- Netzadresse: alle Hostbits auf 0. Bezeichnet das Netz selbst und wird nicht an Geräte vergeben.
- Broadcast: alle Hostbits auf 1. Pakete an diese Adresse gehen an alle Geräte im Netz.
- Netzmaske: dieselbe Information wie das Präfix, als vier Zahlen geschrieben. /24 entspricht 255.255.255.0.
- Wildcard: die umgekehrte Maske. Sie wird in Cisco-ACLs und manchen Firewalls verwendet.
- Nutzbare Hosts: alle Adressen minus Netzadresse und Broadcast. Ausnahmen: Bei /31 sind nach RFC 3021 beide Adressen nutzbar (Punkt-zu-Punkt-Verbindungen), /32 bezeichnet genau eine einzelne Adresse.
Die Klassen A, B und C stammen aus der Zeit vor CIDR und spielen für das Routing keine Rolle mehr. Sie stehen hier nur, weil sie in älteren Anleitungen noch auftauchen.
CIDR-Tabelle /8 bis /32
| Präfix | Netzmaske | Wildcard | Adressen | Nutzbare Hosts |
|---|---|---|---|---|
| /8 | 255.0.0.0 | 0.255.255.255 | 16.777.216 | 16.777.214 |
| /9 | 255.128.0.0 | 0.127.255.255 | 8.388.608 | 8.388.606 |
| /10 | 255.192.0.0 | 0.63.255.255 | 4.194.304 | 4.194.302 |
| /11 | 255.224.0.0 | 0.31.255.255 | 2.097.152 | 2.097.150 |
| /12 | 255.240.0.0 | 0.15.255.255 | 1.048.576 | 1.048.574 |
| /13 | 255.248.0.0 | 0.7.255.255 | 524.288 | 524.286 |
| /14 | 255.252.0.0 | 0.3.255.255 | 262.144 | 262.142 |
| /15 | 255.254.0.0 | 0.1.255.255 | 131.072 | 131.070 |
| /16 | 255.255.0.0 | 0.0.255.255 | 65.536 | 65.534 |
| /17 | 255.255.128.0 | 0.0.127.255 | 32.768 | 32.766 |
| /18 | 255.255.192.0 | 0.0.63.255 | 16.384 | 16.382 |
| /19 | 255.255.224.0 | 0.0.31.255 | 8.192 | 8.190 |
| /20 | 255.255.240.0 | 0.0.15.255 | 4.096 | 4.094 |
| /21 | 255.255.248.0 | 0.0.7.255 | 2.048 | 2.046 |
| /22 | 255.255.252.0 | 0.0.3.255 | 1.024 | 1.022 |
| /23 | 255.255.254.0 | 0.0.1.255 | 512 | 510 |
| /24 | 255.255.255.0 | 0.0.0.255 | 256 | 254 |
| /25 | 255.255.255.128 | 0.0.0.127 | 128 | 126 |
| /26 | 255.255.255.192 | 0.0.0.63 | 64 | 62 |
| /27 | 255.255.255.224 | 0.0.0.31 | 32 | 30 |
| /28 | 255.255.255.240 | 0.0.0.15 | 16 | 14 |
| /29 | 255.255.255.248 | 0.0.0.7 | 8 | 6 |
| /30 | 255.255.255.252 | 0.0.0.3 | 4 | 2 |
| /31 | 255.255.255.254 | 0.0.0.1 | 2 | 2 |
| /32 | 255.255.255.255 | 0.0.0.0 | 1 | 1 |
Private und besondere Adressbereiche
| Bereich | Verwendung |
|---|---|
| 10.0.0.0/8 | privat, große interne Netze |
| 172.16.0.0/12 | privat, unter anderem Docker-Netze (172.17.0.0/16 und folgende) |
| 192.168.0.0/16 | privat, typisch für Heim- und Büronetze |
| 100.64.0.0/10 | Carrier-Grade-NAT bei Providern, auch von Tailscale genutzt |
| 127.0.0.0/8 | Loopback, der Rechner selbst |
| 169.254.0.0/16 | Link-Local, wenn kein DHCP antwortet |
Anwendungen auf dem Webserver
Fail2ban: eigene Netze nie sperren
Mit ignoreip in /etc/fail2ban/jail.local verhinderst du, dass Fail2ban dein Büro oder deinen Monitoring-Server aussperrt. Gib ganze Netze in CIDR-Schreibweise an, mehrere Einträge durch Leerzeichen getrennt. Danach systemctl reload fail2ban. In Plesk pflegst du dieselbe Liste in den Fail2Ban-Einstellungen unter Tools & Einstellungen als vertrauenswürdige IP-Adressen.
Firewall-Regeln
SSH oder Datenbankports öffnest du am besten nur für bekannte Netze, statt für die ganze Welt. Ein zu großes Präfix ist ein häufiger Fehler: /16 statt /24 öffnet 65.536 statt 256 Adressen. Prüfe den Bereich vorher hier im Rechner.
ufw allow from 203.0.113.0/24 to any port 22 proto tcp
iptables -A INPUT -s 203.0.113.0/24 -p tcp --dport 22 -j ACCEPTPlesk: Zugriff auf das Panel beschränken
Plesk kann den Zugang zur Oberfläche auf bestimmte Adressen oder Netze beschränken (in den Sicherheitseinstellungen unter Tools & Einstellungen). Dort werden Netze als Adresse plus Maske eingetragen. Der Rechner liefert dir beides. Trage unbedingt zuerst dein eigenes Netz ein, sonst sperrst du dich selbst aus.
nginx und Apache
Für geschützte Bereiche wie /wp-admin/ oder ein Status-Dashboard reichen in nginx die Direktiven allow 203.0.113.0/24; und deny all;, in Apache 2.4 Require ip 203.0.113.0/24. Hinter einem Proxy oder CDN siehst du allerdings dessen Adresse, dann muss vorher die echte Client-IP übernommen werden (nginx real_ip, Apache mod_remoteip).