Kalkulačka podsietí IP: CIDR, maska a rozsah hostiteľov
Vypočítajte podrobnosti podsiete IPv4 zo zadanej adresy a prefixu CIDR: sieťovú a broadcastovú adresu, rozsah použiteľných hostiteľov, masku podsiete a wildcard masku.
IP Subnet Calculator
Results
Subnet Mask in Binary
Results follow RFC 791 (IPv4 addressing), RFC 4632 (CIDR notation), RFC 950 with RFC 919 and RFC 922 (network and broadcast reservation), and RFC 3021 (/31 point-to-point links).
Dokumentácia
Kalkulačka podsietí IP
Kalkulačka podsietí IP vypočíta podrobnosti siete ukryté za adresou IPv4 a dĺžkou prefixu. Z týchto dvoch vstupov určí sieťovú adresu, broadcastovú adresu, rozsah použiteľných hostiteľských adries, masku podsiete a zástupnú masku.
Čo kalkulačka robí
Nástroj prijíma adresu IPv4 zapísanú ako štyri číselné oktety oddelené bodkami, napríklad 192.168.1.10, a dĺžku prefixu od 0 do 32. Funguje aj spoločný zápis v tvare CIDR, napríklad 192.168.1.10/24: časť /24 sa sama presunie do poľa prefixu.
Kalkulačka vracia:
- Zápis CIDR: sieť v tvare adresa/prefix, napríklad 192.168.1.0/24.
- Sieťová adresa: prvá adresa v bloku. Označuje samotnú sieť.
- Broadcastová adresa: posledná adresa v bloku. Správa odoslaná na túto adresu sa dostane ku každému hostiteľovi v podsieti.
- Rozsah použiteľných hostiteľských adries: prvá a posledná adresa, ktorú zariadenie môže skutočne používať.
- Použiteľní hostitelia a celkový počet adries: koľko adries blok obsahuje a koľko z nich je voľných pre zariadenia.
- Maska podsiete a zástupná maska: maska v bodkovanom tvare, napríklad 255.255.255.0, a jej inverzia, 0,0.0,255.
- Maska podsiete rozpísaná po jednotlivých bitoch, osem bitov na každý oktet.
Výsledky sa riadia RFC 791 (adresovanie IPv4), RFC 4632 (zápis CIDR), RFC 950 spolu s RFC 919 a RFC 922 (rezervácie sieťovej a broadcastovej adresy) a RFC 3021 (/31 spojenia bod-bod).
Ako funguje podsieťovanie
Adresa IPv4 je číslo s veľkosťou 32 bitov. Zapisuje sa ako štyri oktety, pričom každý oktet má 8 bitov a obsahuje hodnotu od 0 do 255. Dĺžka prefixu rozdeľuje týchto 32 bitov na dve časti. Prvé bity, ktorých počet určuje prefix, označujú sieť. Zostávajúce bity označujú hostiteľa v tejto sieti.
Sieť /24 si ponecháva 24 bitov pre sieťovú časť a ponecháva 8 bitov pre hostiteľov. Osem hostiteľských bitov poskytuje 2⁸ = 256 adries. Sieť /26 ponecháva iba 6 hostiteľských bitov, takže obsahuje 2⁶ = 64 adries.
Maska podsiete zapisuje rovnaké rozdelenie ako adresa: 1 bit pre každý sieťový bit a 0 bit pre každý hostiteľský bit. Pre /24 je to 255,255.255,0. Zástupná maska prevracia každý bit masky podsiete. Prístupové zoznamy smerovačov, najmä na zariadeniach Cisco, porovnávajú adresy pomocou zástupných masiek, preto nástroj zobrazuje obe.
Vzorec podsiete
Pre dĺžku prefixu p od 0 do 30 kalkulačka používa tieto pravidlá definované v RFC 950 a RFC 4632:
- Maska podsiete = horných p bitov slova s dĺžkou 32 bitov nastavených na 1.
- Sieťová adresa = IP adresa AND maska podsiete (bitová operácia AND ponechá bit iba vtedy, keď majú oba vstupy hodnotu 1).
- Broadcastová adresa = sieťová adresa OR zástupná maska (každý hostiteľský bit je nastavený na 1).
- Celkový počet adries = 2⁽³²⁻ᵖ⁾.
- Použiteľní hostitelia = 2⁽³²⁻ᵖ⁾ − 2. Odčítanie odstraňuje sieťovú a broadcastovú adresu, ktoré rezervujú RFC 950 a RFC 919.
- Prvý použiteľný hostiteľ = sieťová adresa + 1. Posledný použiteľný hostiteľ = broadcastová adresa − 1.
Dĺžky dvoch prefixov sa riadia inými pravidlami. Prefix /31 obsahuje presne 2 adresy a RFC 3021 umožňuje používať obe ako hostiteľské adresy na spojení bod-bod, bez broadcastovej adresy. Prefix /32 označuje jednu adresu: 1 celková, 1 použiteľná, bez broadcastu. V týchto dvoch prípadoch nástroj označuje prvú adresu ako „Základ prefixu“ namiesto „Sieťová adresa“, pretože ani jeden blok nerezervuje adresu na označenie siete.
Každý výsledok vychádza z aritmetiky s jedným číslom s veľkosťou 32 bitov. Nástroj nevypisuje adresy jednu po druhej, takže prefix /0 pokrývajúci všetky 4 294 967 296 adries IPv4 sa vypočíta rovnako rýchlo ako prefix /32.
Príklad s riešením
Pre adresu 10.128.7.33 s dĺžkou prefixu /26:
- Maska podsiete: 26 jednotkových bitov nasledovaných 6 nulovými bitmi dáva 11111111,11111111.11111111,11000000, čo zodpovedá zápisu 255,255.255,192.
- Sieťová adresa: adresa sa skombinuje s maskou pomocou AND. Prvé tri oktety zostanú nezmenené. V poslednom oktete je 33 v binárnom tvare 00100001; operácia AND s 11000000 dá 00000000, čo je 0. Sieťová adresa je 10.128.7.0, takže zápis CIDR je 10.128.7.0/26.
- Broadcastová adresa: všetkých 6 hostiteľských bitov sa nastaví na 1. Posledný oktet bude 00111111, čo je 63. Broadcastová adresa je 10,128.7,63.
- Počty: 2⁶ = 64 adries celkovo a 64 − 2 = 62 použiteľných hostiteľov.
- Rozsah hostiteľov: od 10.128.7.1 po 10,128.7,62.
- Zástupná maska: inverzia masky podsiete, 0,0.0,63.
Druhý príklad s predvoleným vstupom nástroja, 192.168.1.10/24: sieť 192.168.1.0, broadcast 192.168.1.255, hostitelia od 192.168.1.1 po 192.168.1.254, 254 použiteľných hostiteľov z 256 adries celkovo, maska podsiete 255.255.255.0, zástupná maska 0,0.0,255.
Konvencie, ktoré nástroj používa
Oktety s úvodnými nulami sa odmietajú. Nástroj odmietne 010.1.1.1 namiesto toho, aby ho prečítal ako 10,1.1,1. Je to zámerné. Funkcia POSIX inet_aton, ktorá sa používa v príkazoch ping a curl a vo väčšine prekladačov operačných systémov, interpretuje oktet s úvodnou nulou ako osmičkové číslo, takže 010.1.1.1 pre tieto programy znamená 8.1.1.1. Keďže žiadny desiatkový ani osmičkový výklad sa nemôže zhodovať so všetkými čítačmi, nástroj neprijíma ani jeden. Z rovnakého dôvodu odmietne aj prefix zapísaný ako /08.
Počet hostiteľov sa znižuje o dva. Niektoré kalkulačky uvádzajú ako počet hostiteľov nespracovanú veľkosť bloku. Tento nástroj sa riadi RFC 950: v každom bloku od /0 do /30 hostiteľská časť pozostávajúca zo samých núl označuje sieť a hostiteľská časť pozostávajúca zo samých jednotiek je broadcast, takže obe sú vylúčené a prefix /24 má 254 použiteľných hostiteľov, nie 256.
Prefix /31 má dvoch použiteľných hostiteľov. Staršie texty, napísané pred RFC 3021 (publikovaným v roku 2000), označujú prefix /31 za nepoužiteľný, pretože po odčítaní dvoch rezervovaných adries zostane nula. RFC 3021 zrušilo obe rezervácie pre spojenia bod-bod a smerovače to podporujú už desaťročia, takže nástroj uvádza 2 použiteľných hostiteľov a žiadnu broadcastovú adresu.
Akýkoľvek prefix od /0 do /32 je prijateľný. Prefix /0 je platný blok pokrývajúci celý priestor IPv4, čo zodpovedá tomu, ako sa 0.0.0.0/0 objavuje v smerovacích tabuľkách ako predvolená trasa.
Iba IPv4. IPv6 (RFC 4291) používa adresy s veľkosťou 128 bitov a odlišný zápis, preto nespadá do rozsahu tohto nástroja. Nástroj tiež neoznačuje rozsahy na osobitné účely, napríklad privátne adresy alebo adresy spätnej slučky (RFC 6890); uvádza iba aritmetiku adries.
Najčastejšie otázky
Koľko použiteľných hostiteľov má prefix /24? 254. Prefix /24 ponecháva 8 hostiteľských bitov, čo dáva 2⁸ = 256 adries. Dve sú rezervované: sieťová adresa a broadcastová adresa. Pre zariadenia tak zostáva 254 adries.
Čo je zástupná maska? Inverzia masky podsiete po jednotlivých bitoch. Tam, kde má maska podsiete 1, má zástupná maska 0, a naopak. Pre masku 255.255.255.0 je zástupná maska 0,0.0,255. Prístupové zoznamy na mnohých smerovačoch používajú zástupné masky na určenie adries, na ktoré sa pravidlo vzťahuje.
Prečo sa pri prefixe /31 nezobrazuje broadcastová adresa? Prefix /31 obsahuje iba dve adresy. Rezervovanie jednej pre sieť a druhej pre broadcast by nenechalo žiadnu adresu, preto RFC 3021 definuje prefix /31 ako spojenie bod-bod, na ktorom sú obe adresy hostiteľské a broadcastová adresa neexistuje. Kalkulačka uvádza 2 použiteľných hostiteľov a označuje broadcast ako neuplatniteľný.
Prečo je 010.1.1.1 odmietnutá namiesto načítania ako 10.1.1.1? Pretože operačné systémy sa nezhodujú na obyčajnom desiatkovom výklade. POSIX inet_aton číta oktet s úvodnou nulou ako osmičkové číslo, takže 010 pre väčšinu systémov znamená 8. Odmietnutie vstupu je jediné riešenie, ktoré sa nemôže potichu líšiť od správania počítača používateľa.
Aký je rozdiel medzi celkovým počtom adries a použiteľnými hostiteľmi? Celkový počet adries je celá veľkosť bloku, 2 umocnené na (32 mínus dĺžka prefixu). Počet použiteľných hostiteľov je toto číslo znížené o dve rezervované adresy, okrem prefixu /31 (obe adresy sú použiteľné) a prefixu /32 (jediná adresa je hostiteľská).
Čo znamená sieťová adresa 192.168.1.10/24? Je to 192.168.1.0, získaná ponechaním prvých 24 bitov adresy a nastavením hostiteľských bitov na nulu. Identifikuje podsieť ako celok a nemožno ju priradiť zariadeniu.
Referencie
- Postel, J. „RFC 791: Internetový protokol.“ IETF, 1981.
- Mogul, J. a J. Postel. „RFC 950: Štandardný postup podsieťovania v internete.“ IETF, 1985.
- Mogul, J. „RFC 919: Vysielanie internetových datagramov.“ IETF, 1984.
- Fuller, V. a T. Li. „RFC 4632: Beztriedne smerovanie medzi sieťami (CIDR).“ IETF, 2006.
- Retana, A. a kol. „RFC 3021: Používanie prefixov s dĺžkou 31 bitov na spojeniach IPv4 bod-bod.“ IETF, 2000.