Här beskrivs vad en nätmask är, vad den
används till och hur den skall konfigureras i TCP/IP baserade nätverk.
Nätmasken
Nätmasken är en 32 bitars adress bestående av 4 oktetter
som används för att ange vilken del av IP-adressen som är
nätverks-ID och vilken del som är värd-ID. Den anges, precis
som IP-nummer, i 4 grupper (oktetter) åtskilda med en punkt mellan.
Nätmasken behövs egentligen inte för att skilja en klass
A adress från en klass B adress, däremot används den av
TCP/IP protokollet för att räkna ut om paketen skall skickas
till det lokala nätverket eller till ett annat segment/fjärrnätverk.
TCP/IP tar helt enkelt IP-adressen från den sändande
datorn och slår ihop den med nätmasken. Sedan tar den IP-adressen
från mottagande datorn och gör samma sak. Om summorna stämmer
överens så vet protokollet att paketen skall skickas till det
lokala nätverket, annars skickas paketen vidare till närmsta
router för vidarebefordring till rätt segment. Proceduren som
styr denna uträkning kallas för ANDing och är
en typ av binär operation där 1+1 blir 1, men alla andra kombinationer
resulterar i 0.
Standard nätmask för olika klasser:
- Klass A = 255.0.0.0
- Klass B = 255.255.0.0
- Klass C = 255.255.255.0
Den som är uppmärksam ser att de oktetter som är satta
till 255 motsvaras av det antal oktetter som används till nätverks-ID
i varje klass. På samma sätt motsvarar nollorna de oktetter
som används till värd-ID. Med andra ord används de bitar
som sätts till ettor för nätverks-ID och övriga
bitar till värd-ID.
Vi tittar i följande exempel på en klass C adress:
IP-adress
| 192
| 168
| 10
| 100 |
Nätmask |
255
| 255
| 255
| 0 |
I detta fall är de tre första oktetterna nätverks-ID
(192.168.10) medan den sista oktetten används till värd-ID
(100).
Subnetting
Ibland stämmer behovet av antalet nätverk och värdar
inte överens med hur ditt nätverk ser ut i verkligheten. Låt
oss anta att du fått en klass C adress som ger dig 1 nätverks-ID
med 254 datorer, men ditt nätverk består istället av
6 segment med 20 datorer i varje. Ett sätt att lösa detta
vore att skaffa sig 6 st klass C adresser vilket skulle fylla kravet
på 6 segment. Däremot skulle 6 st C klasser klara upp till
1524 (6x254) datorer vilket vore slöseri när ditt nätverk
endast har 120 datorer.
Det bästa sättet att lösa detta är helt enkelt
att använda oss av nätmasken för att ta bitar från
värd-ID och ge till nätverks-ID. Detta kallas för
subnetting. Om vi tar 3 av de 8 bitar som används för
värd-ID i en klass C adress så får vi 6 st nätverks-ID
samtidigt som vi lämnar 5 bitar kvar till värd-ID.
Se följande tabell för exakt uträkning (klass C):
Antal tagna bitar
| 8
| 7
| 6
| 5
| 4
| 3
| 2
| 1
|
Binärt tal
| 128
| 64
| 32
| 16
| 8
| 4
| 2
| 1 |
Antal nätverk
| 254
| 126
| 62
| 30
| 14
| 6
| 2
| 1 |
Antal värdar
| 0
| 1
| 2
| 6
| 14
| 30
| 62
| 254 |
Ogiltiga värden markerade i grått.
Observera att sista ettan i antal nätverk inte räknas (vi
har ju redan ett segment utan att använda oss av subnetting). 254
och 126 som antal segment fungerar inte heller med en klass C adress
(ett nätverk med ingen eller 1 dator vore ganska meningslöst).
Genom att ta 3 bitar får vi alltså 6 stycken (0+2+4) nätverk/segment,
eller subnät som det även kallas.
Hur många värd-ID får vi då i våra
6 nya subnät?
Eftersom vi tog 3 bitar från de 8 som klass C använder till
nätverks-ID så får vi 5 bitar kvar till värdarna.
Dessa 5 bitar ger oss 30 stycken värdar per segment (0+2+4+8+16).
Observera att vi inte heller här räknar med den första
ettan i antalet värd-ID. Som ni ser så går siffrorna
för antal värdar i motsatt riktning mot antalet nätverk
i tabellen. Med andra ord, ju fler segment (subnät) desto färre
värdar och tvärtom. I vårat fall så motsvarar
3 tagna bitar att vi får 30 värd-ID kvar vilket gott och
väl räcker till de 20 datorer vi hade i på varje segment
i exemplet ovan.
Hur räknar vi då ut vilken nätmask vi skall använda?
Eftersom vi tog 3 bitar till nätverks-ID så skall dessa 3
bitar slås på, det vill säga sättas till ettor
binärt (kom ihåg att nätverks-ID alltid motsvaras av
satta bitar, ettor). I vårt fall skulle vi få nätmasken
11100000 vilket efter omräkning till decimal form ger värdet
224 (128+64+32+0+0+0+0+0) vilket därför blir värdet på
sista oktetten i vår nya nätmask. 255.255.255.0 byts alltså
ut mot 255.255.255.224 för att dela nätverket i 6 segment
med 30 datorer i varje.
Den kompletta listan för klass C blir således:
Antal nätverk
| 254
| 126
| 62
| 30
| 14
| 6
| 2
| 1 |
Antal värdar
|
| 1
| 2
| 6
| 14
| 30
| 62
| 254 |
Nätmask
| 255
| 254
| 252
| 248
| 240
| 224
| 192
| 0 |
Hur får vi då fram start och slut -adresser på
våra näverks-ID ?
Enkelt! Ta antalet värdar och lägg till 2. Den siffra du då
får anger startvärdet för ditt första nätverks-ID.
Det anger också hur stort ”hoppet” är mellan varje nätverks-ID.
I vårt exempel hade vi räknat ut att vi fick 30 värdar
vilket betyder att första nätverks-ID blir 32. Då vi
vet att ”hoppet” är 32 blir det lätt att räkna ut att
nästa nätverks-ID får startvärdet 64. Våra
6 subnät får alltså 32, 64, 96, 128, 160 och 192 som
nätverks-ID.
Om vi i vårt exempel låtsas att vi fick klass C adressen
192.155.10 så får vi följande nätverks-ID:
- 192.155.10.32
- 192.155.10.64
- 192.155.10.96
- 192.155.10.128
- 192.155.10.160
- 192.155.10.192
Varför kan vi bara använda 30 värdar när det
är 32 hopp mellan varje subnät?
I vårt exempel fick vi 5 bitar kvar till värd-ID. Med
dom 5 bitarna kan vi beskriva talen 0 till 31 vilket borde
innebära att vi har 32 stycken tillgängliga värd-ID.
Men eftersom varken nätverks-ID eller värd-ID får innehålla
bara nollor eller ettor så faller talen 0 och 31 bort vilket lämnar
oss med 30 stycken värd-ID (0=00000, 31=11111 binärt). Vi
kan helt enkelt inte använda det första och sista värdet
i varje segments IP-nummer. I det första subnätet kan vi alltså
inte använda 192.155.10.32 eller 192.155.10.63 som värd-ID.
Detta innebär att vi får följande lista över användbara
värd-ID:
- 192.155.10.33-62
- 192.155.10.65-94
- 192.155.10.97-126
- 192.155.10.129-158
- 192.155.10.161-190
- 192.155.10.193-222
Antalet värd-ID i nätverket
För varje router måste varje port tilldelas ett unikt värd-ID
för att värdarna skall kunna hitta vägen till nästa
segment. Denna adress ställs på klienterna in som ”Default
Gateway”. Vidare måste varje nätverkskort på klienter,
servrar och skrivare också ha ett unikt värd-ID.
Övningar:
Ditt företag har fått tilldelat 1 klass C adress med nätverks-ID
192.190.10. Du skulle hellre vilja dela upp nätverket i 10 st subnät
med minst 10 datorer i varje segment eftersom ert nätverk består
av 10 avdelningar med mellan 5-10 datorer i varje avdelning. Du bestämmer
dig för att använda subnetting för att lösa detta
problem.
- Vilket nätmask skall du använda?
- Lämnar detta plats för framtida utbyggnad?
- Lista alla nätverks-ID du får.
- Lista vilka värd-ID som ingår i alla subnät.
©Copyright: Lars Sjunnevik