7. diel - Siete - IPv4 - Tvorba podsietí v praxi
V minulej lekcii, Siete - IPv4 a IPv6 - Tvorba podsietí , sme si vysvetlili proces tvorby podsietí, tzv. subnetting.
V nasledujúcom tutoriále základov sietí si prehĺbime znalosti tvorby podsietí. Zameriame sa na protokol IPv4 a vysvetlíme si subnetting na praktickom príklade. Naučíme sa vypočítať rozsahy adries podsietí.
Modelová situácia
V úlohe správcu siete máme za úlohu vytvoriť dve nové vetvy firemnej
siete s adresou 172.31.13.40/22
. Jedna vetva bude mať 13
zariadení (počítačov, kopírok, IP telefónov etc.) a druhá 64. Ako sme si
už vysvetlili v lekcii Siete - IPv4 a IPv6 - Tvorba
podsietí, máme na výber z dvoch možných prístupov -
CIDR a VLSM. Najprv je ale nutné určiť
sieťovú a broadcastovú adresu pôvodnej siete. Táto informácia je potrebná
pre ďalšie kroky, kedy sieť rozdelíme na podsiete.
Zistenie adresy siete a broadcastu
Najprv si prevedieme masku na binárny formát. V našom príklade je maska
/22
, čo znamená, že prvých 22 bitov je nastavených na
1
a zvyšok na 0
. Keď prevedieme /22
na
štyri oktety v binárnej sústave, získame:
11111111.11111111.11111100.00000000
Potom sa pozrieme na IP adresu siete, v našom prípade
172.31.13.40
. Prevedieme tretí oktet (posledný oktet, kde sa v
maske jednotky mení na nuly) do binárnej sústavy:
172.31.00001101.40
Teraz porovnáme binárne formáty masky a tretieho oktetu IP adresy, aby sme zistili, kde dochádza k zmene z jednotiek na nuly (miesto je vyznačené zvislítkom):
111111|00 (maska) 000011|01 (síť)
Keď už vieme, kde dochádza k zmene, zistíme adresu siete. To urobíme tak, že v sieti dosadíme nuly za označeným miestom:
172.31.000011|00.00000000 -> 172.31.12.0/22
Nakoniec zistíme adresu broadcastu tým, že dosadíme za označeným miestom jednotky:
172.31.000011|11.11111111 -> 172.31.15.255/22
Pozor, adresu brány, siete a broadcast nemôžeme využiť pre počítače v sieti, v každej vetve teda budeme musieť pridať k počtu počítačov tri adresy navyše!
Teraz sme teda zistili adresu siete a broadcastu pre našu pôvodnú sieť a môžeme pristúpiť k deleniu na podsiete, najprv pomocou CIDR a potom VLSM.
CIDR - Classless Inter-Domain Routing
CIDR je ako už vieme metóda routovania bez triedneho systému. To znamená, že sieť môže byť delená na podsiete podľa potrieb. Pretože CIDR vyžaduje, aby boli všetky podsiete rovnako veľké, budeme musieť alokovať rovnaký počet adries pre obe podsiete. Napriek tomu, že ľavá vetva potrebuje iba 13 adries, budeme jej musieť alokovať rovnaký počet adries, ako pre pravú vetvu, ktorá potrebuje 64 adries.
Pre CIDR teda budeme musieť zvoliť masku siete tak, aby počet možných adries v podsieti bol dostatočný pre najväčší počet počítačov v ktorejkoľvek vetve. V našom prípade to bude pre 64 počítačov.
Výpočet adries
Povedali sme si, že potrebujeme rozdeliť sieť na dve podsiete. Preto
najskôr vytvoríme rovnicu, kde počet podsietí je rovný 2^x
. V
našom prípade má teda rovnica tvar 2^x = 2
. Jej výsledok je
x=1
.
Keď poznáme x
, pripočítame ho k pôvodnej maske siete. V
našom príklade je pôvodná maska /22
, takže pridáme
1
a dostaneme /23
.
Týmto spôsobom sme rozdelili našu pôvodnú sieť na dve podsiete s maskou
/23
. Teraz musíme určiť rozsah IP adries pre každú podsieť.
Urobíme to tak, že k prvému oktetu IP adresy pripočítame 2^x
,
kde x
je počet nulových bitov v maske podsiete. V našom prípade
je to 2 1 = 2.
Pri použití 32-bitových IPv4 adries platí, že počet
nulových bitov v maske je rovný 32 mínus počet jednotiek (tj hodnota masky).
My sme si spočítali masku /23
. Z toho vyplýva, že počet
nulových bitov je 32 - 23 = 9. V tomto konkrétnom príklade sa k prvému
oktetu IP adresy pripočíta 2^x
, kde x
je počet
nulových bitov v poslednom oktete masky podsiete. Pre masku /23
teda platí, že v poslednom oktete je 7 jednotiek a 1 nula. V tomto prípade sa
teda x
rovná 1 (počtu nulových bitov v poslednom oktete), takže
2^x
je 2
.
Ako už vieme, maska /23
znamená, že prvé 23 bitov IP adresy
sú vyhradené na identifikáciu siete, zatiaľ čo zostávajúce bity sú
použité na identifikáciu jednotlivých počítačov v sieti. V našom
prípade to znamená, že prvé 2 oktety a 7 bitov tretieho oktetu identifikujú
sieť, zatiaľ čo zvyšné bity identifikujú počítače.
Po vykonaní tohto výpočtu potom získame rozsah IP adries v oboch vetvách siete:
- podsieť A:
172.31.12.0/23
-172.31.13.255/23
, - podsieť B (začína, kde sa prvá podsieť končí):
172.31.14.0/23
-172.31.15.255/23
.
VLSM - Variable Length Subnet Mask
V minulých lekciách sme si už povedali, že VLSM je pokročilejšia metóda, ktorá umožňuje vytvárať podsiete rôznych veľkostí. To je veľmi užitočné pre našu situáciu, keď máme siete s rôznym počtom počítačov. Pri použití VLSM teda dokážeme vytvoriť jednu podsieť pre 13 počítačov a druhú podsieť pre 64 počítačov s výrazne nižším počtom alokovaných adries. To znamená, že namiesto toho, aby sme plytvali adresami pri použití CIDR, využijeme adresný priestor výrazne efektívnejšie.
Výpočet adries
Najprv si zoradíme počet staníc zostupne. V našom prípade máme len dve
vetvy (64 a 13 staníc). Zaujíma nás najskôr vetva s najväčším počtom
hostí, pretože logicky bude potrebovať najväčší adresný priestor. Teda
číslo 64
. Teraz k počtu staníc pripočítame 3
(pre východiskovú bránu, adresu siete a broadcast), a potom hľadáme
najbližší násobok dvoch, ktorý je väčší alebo rovný tomuto súčtu.
Najbližší násobok dvoch, ktorý je väčší alebo rovný 67
,
je 128
. Pre 13 staníc pripočítame 3
a dostaneme
16
. Najbližší násobok dvoch, ktorý je väčší alebo rovný
16, je práve 16:-)
Teraz vieme, že naše dve podsiete budú mať rozsah pre 128 a 16 staníc. K
našej vyššie vypočítanej sieťovej adrese 172.31.12.0
postupne
pripočítame násobky. Najprv pripočítame 128
a dostaneme
172.31.12.127
. Potom pripočítame 16
k adrese
nasledujúcej po tejto, teda k 172.31.12.128
, a dostaneme
172.31.12.144
.
Teraz máme rozsahy pre naše dve podsiete:
- podsieť A:
172.31.12.0/25
-172.31.12.127/25
(pre 64 staníc), - podsieť B:
172.31.12.128/28
-172.31.12.143/28
(pre 13 staníc).
/25
a /28
sme získali spätným výpočtom
počtu hostiteľov v podsieti. Maska /25
umožňuje 128 adries
(sedem nulových bitov, teda 2 7) a maska /28
umožňuje
16 adries (štyri nulové bity, teda 2 4). Pretože je z každého
rozsahu odpočítaná jedna adresa pre adresu siete a jedna pre broadcastovú
adresu, dostaneme maximálny počet 126 a 14 hostiteľov v každej podsieti, čo
stačí na počty 64 a 13, ktoré sme mali v zadaní na začiatku.
Prostým porovnaním adresných priestorov variantov CIDR a VLSM je teda úplne zrejmé, o koľko je metóda VLSM efektívnejšia.