-
Notifications
You must be signed in to change notification settings - Fork 0
Prefixy a masky
Tohle je ta část, kterou většina lidí přeskočí a pak se diví. Přitom je za tím jediné pravidlo a jakmile ho jednou pochopíš, funguje beze změny pro IPv4, IPv6 i pro všechny ty divné případy typu /30 na spoji k poskytovateli.
IP adresa je jedno dlouhé binární číslo. Číslo za lomítkem říká, kolik bitů zleva určuje síť. Zbytek určuje konkrétní zařízení v té síti.
To je celé. Vážně. Zbytek téhle stránky je jen rozvedení téhle jedné věty.
IPv4 adresa má 32 bitů. Zapisují se po osmi, což je důvod, proč vidíš čtyři čísla v rozsahu 0–255 — osm bitů umí právě 256 kombinací. Skupinám po osmi bitech se říká oktety.
Vezmi 192.168.1.10/24. To /24 říká: prvních 24 bitů je síť, zbylých 8 je zařízení.
Protože 24 bitů jsou přesně tři oktety, vyjde to hezky na hranici teček: 192.168.1 je síť, .10 je zařízení. Tohle je náhoda daná tím, že /24 je běžná volba. U /26 už ti hranice spadne doprostřed posledního oktetu a začne to vypadat ošklivě.
255.255.255.0 a /24 nesou úplně stejnou informaci. Maska je starší způsob zápisu: napíšeš tolik jedniček, kolik má síť bitů, doplníš nulami a přeložíš zpátky do desítkové soustavy. Osm jedniček za sebou dá 255.
Proto v maskách nikdy neuvidíš něco jako 255.13.7.99. Jedničky musí být souvisle zleva, jinak by celý koncept nefungoval.
Dnes se používají oba zápisy vedle sebe. Routery a starší konfigurační formuláře chtějí masku, moderní dokumentace a všechno kolem IPv6 používá lomítko. Jsou zaměnitelné.
Když tvůj notebook s adresou 192.168.1.10/24 chce něco poslat, udělá jednu jedinou operaci: porovná prvních 24 bitů cílové adresy se svými.
Cíl 192.168.1.50? Prvních 24 bitů sedí, takže je to soused ve stejné síti a data jdou přímo do kabelu.
Cíl 147.32.80.5? Nesedí, takže to není místní, a data putují na výchozí bránu, ať se s tím popere router.
Tomuhle rozhodnutí se říká směrování a prefix je jediné, podle čeho se dělá. Když si na notebooku nastavíš špatnou masku, rozbiješ přesně tohle — počítač začne považovat za souseda někoho, kdo jím není, nebo naopak posílat na bránu i to, co má jít přímo.
Tady se to většině lidí obrátí v hlavě, protože intuice říká opak. Čím menší číslo za lomítkem, tím víc adres, protože tím víc bitů zbývá na zařízení.
| Prefix | Maska | Adres v síti |
|---|---|---|
/8 |
255.0.0.0 | 16 777 216 |
/16 |
255.255.0.0 | 65 536 |
/24 |
255.255.255.0 | 256 |
/25 |
255.255.255.128 | 128 |
/26 |
255.255.255.192 | 64 |
/30 |
255.255.255.252 | 4 |
/32 |
255.255.255.255 | 1 |
Každý krok o jedničku dolů síť zdvojnásobí, každý krok nahoru ji rozpůlí. Až narazíš na to, že někomu poskytovatel dal /30, teď víš, že dostal čtyři adresy — což je přesně to, co potřebuješ na spoj mezi dvěma routery.
/32 označuje jednu jedinou konkrétní adresu. Používá se ve firewallových pravidlech, když chceš mluvit o jednom stroji.
Malý detail, který stojí za zmínku: z každé IPv4 sítě nemůžeš použít úplně první a úplně poslední adresu. První označuje síť jako takovou, poslední je broadcast pro všechny. Z /24 tedy máš 256 adres, ale jen 254 použitelných pro zařízení, a z /30 jsou použitelné jen dvě.
IPv6 tuhle komplikaci nemá vůbec. Broadcast v něm neexistuje, nahradil ho multicast.
Nic nového se učit nemusíš. Adresa má 128 bitů místo 32 a zapisuje se po šestnácti, což vysvětluje těch osm skupin po čtyřech hexadecimálních číslicích. Dvě dvojtečky za sebou (::) jsou zkratka pro souvislý blok nul, aby se ty adresy daly vůbec psát.
Zásadní rozdíl není v tom, jak se prefix počítá, ale v tom, co od poskytovatele dostaneš. U IPv4 ti dá adresu. U IPv6 ti dá prefix, tedy celý blok, který si dál dělíš sám.
U IPv4 si velikost sítě volíš podle potřeby. Doma /24, na spoj /30, ve velké firmě /16. Šetří se adresami, protože jich je málo.
V IPv6 se tohle nedělá. Každá koncová síť má vždycky /64, bez ohledu na to, jestli v ní máš tři zařízení nebo tři tisíce.
Důvod je praktický: těch 64 bitů pro zařízení je přesně to, co umožňuje autokonfiguraci. Zařízení si adresu vygeneruje samo a spolehne se, že v tak obrovském prostoru s nikým nekoliduje. Kdybys dal /80 nebo /112, ušetříš adresy, kterých je stejně nekonečno, a rozbiješ automatiku, která na /64 spoléhá.
Takže v IPv6 se nešetří adresami. Šetří se prefixy.
Teď to dává smysl. Když ti poskytovatel dá /64, dostaneš přesně jednu síť a nemáš z čeho ukrojit další. Žádná oddělená VLAN pro IoT, žádná síť pro hosty, nic. Zbývá ti nula bitů na dělení.
Když dostaneš /56, jak dává Vodafone na kabelu, máš 64 − 56 = 8 volných bitů, tedy 256 samostatných sítí /64. To je doma číslo, které nikdy nevyčerpáš.
Proto ta hodnota ve formuláři UniFi není kosmetika. Když tam napíšeš /64, nebudeš mít co rozdělovat mezi VLANy. Když napíšeš /48, žádáš víc, než ti Vodafone dá, a nedostaneš vůbec nic.
Číslo za lomítkem říká, kolik bitů zleva je zamčených. Zbytek je tvůj hrací prostor. U IPv4 z něj děláš adresy zařízení, u IPv6 z něj děláš celé sítě a adresy zařízení dostaneš zadarmo.
Našel jsi chybu nebo něco chybí? Založ issue nebo pošli pull request. — Psáno 2026, licence CC BY-SA 4.0
Základy
- Cesta paketu
- Vrstvy a zapouzdření
- MAC, ARP a přepínání
- Prefixy a masky
- Směrování
- DHCP a DNS
- Porty a spojení
- NAT a port forwarding
Domácí síť
IPv6
Linux firewall
TLS a reverse proxy
- TLS a HTTPS
- HTTP, QUIC a WebSocket
- Reverse proxy
- Caddy
- Nginx
- Traefik
- Certifikáty a Let's Encrypt
- Vlastní certifikační autorita
Kryptografie
- Stavební kameny
- Veřejný a soukromý klíč
- Diffie-Hellman
- Hashe, HMAC a podpisy
- Náhodnost a entropie
- TLS handshake
- Postkvantová kryptografie
- Šifrování disků a souborů
Virtualizace a kontejnery
Diagnostika
Vzdálený přístup
Provoz a bezpečnost
Praxe