Подмрежовата маска (Subnet Mask) показва кои битове от IP адреса се отнасят за мрежата и кои битове оказват адреса на хоста в тази мрежа.
В тази глава:
- Какво е подмрежова маска
- Двете части на подмрежовата маска
- Определяне дали получателя е локален или отдалечен
- Стандартни подмрежови маски
Какво е подмрежова маска (Subnet mask)?
Подмрежовата маска е число, което изглежда като IP адрес. Тя показва на TCP/IP колко бита се използват за мрежовата част от IP адреса като покрива (маскира) мрежовата част от IP адреса. Както научихте в глава 6, IP адреса се състои от две части мрежова част и част за хоста.
За всеки излизащ пакет, IP трябва да определи дали хоста към който пакета е насочен се намира в локалната мрежа или в отдалечена мрежа.
Локална мрежа - Всички хостове, които се намират от една и съща страна на рутера се смята че са от една локална мрежа. Два хоста от една и съща локална мрежа имат една и съща подмрежова маска.
Отдалечена мрежа - Хостове които са разделени от рутер се смята, че се намират в отдалечени мрежи. Хостовете в отдалечени мрежи имат различни подмрежови маски.
Подобно на телефонните номера които използват код за населеното място, TCP/IP ползва подмрежова маска. Телефонните номера с еднакъв код са от едно населено място или телефонна мрежа, така и IP адресите с една и съща подмрежова маска са от една и съща мрежа.
Ако получаващия хост е локален IP ползва ARP броудкаст, за да намери хардуерния адрес на получателя. Ако получателя не е хост от локалната мрежа, ARP броудкаста търси хардуерния адрес на рутера. Така IP изпраща всички пакети насочени към отдалечени мрежи към рутера още наречен основен щлюз (default gateway). После рутера изпраща пакета към следващата мрежа по пътя му към целта.
Когато определя дали пакета е насочен към локалната мрежа или отдалечена мрежа, IP сравнява мрежовата част от IP адреса на изпращача със същия брой битове от IP адреса на получателя. Ако битовете съвпадат напълно, тогава предназначението на пакета се определя като локално. Ако има някакви разлики в битовете тогава предназначението на пакета се определя като отдалечено. За да разбере колко бита да сравни, IP изследва подмрежовата маска на изпращащия хост. В подмрежовата маска има серия от 1-ци и после останалите битове са 0-ли. Когато IP изследва подмрежовата маска, той гледа колко точно битове са 1-ци, след като разбере колко битове са 1-ци IP вече знае колко бита от IP адреса на изпращача и получателя да сравни. Ако има 8 бита със стойност 1-ца в подмрежовата маска, IP ще сравни първите 8 бита от IP адресите на изпращача и получателя. Ако има 16 бита 1-ци в подмрежовата маска то IP ще сравнява първите 16 бита от IP адреси на изпращача и получателя.
Подмрежовата маска е задължителен елемент за всеки IP адрес. Когато искате да запишете IP адреса на хост единствените два задължителни елемента за подмрежовата маска и самия IP адрес.
На следващите страници ще видите, че IP гледа на всичко в двуичен вид. Подмрежовите маски и маршрутизирането ще станат по-ясни ако мислите за IP адресите и подмрежовите маски в двуичен вид, така че опитайте да мислите за тях като за 32 бита. Когато ги разглеждате в двуичен вид не обръщаите внимание на точките, които ползваме в десетичния запис. IP не се интересува от тях също!
Мрежа и Хост
Ето един начин да разберете подмрежовите маски по-лесно; 1 = М (мрежа), 0 = Х (хост).
Погледнете тази подмрежова маска 255.0.0.0 = 1111 1111.0000 0000.0000 0000.0000 0000 = ММММ ММММ.ХХХХ ХХХХ.ХХХХ ХХХХ.ХХХХ ХХХХ
Първите 8 бита са адреса на мрежата а останалите 24 адреса на хоста.
Или например тази погмрежова маска 255.255.255.0 = 1111 1111.1111 1111.1111 1111.0000 0000 = ММММ ММММ.ММММ ММММ.ММММ ММММ.ХХХХ ХХХХ
Първите 24 бита са адреса на мрежата а останалите 8 адреса на хоста.
Определяне, локална или отдалечена мрежа
Големия въпрос за всеки пакет изпратен по мрежата е, какъв е адреса на получателя локален или отдалечен? Получателя е локален хост ако мрежовата порция от битове на IP адреса на изпращача е същата като мрежовата порция на IP адреса на получателя.
Ако някои битове се различават един от друг, тогава получателя е отдалечен хост. Но както казахме по-нагоре преди IP да може да определи дали получателя е локален или отдалечен, IP трябва да определи колко бита са в мрежовата част на IP адреса на източника. IP ползва подмрежовата маска, за да определи мрежовата част от адреса.
Подмрежовата маска е дълга 32 бита, но хората използват десетично точков вид за да я представят също както и IP адресите. Подмрежовата маска в двуичен вид представлява серия от 1-ци, които представляват мрежовата част от IP адреса и всички останали битове са 0-ли. Когато определя колко бита са в мрежовата част на IP адреса IP гледа в подмрежовата маска за последователни 1-ци. Броя на битовете със стойност 1 в подмрежовата маска, показва броя на битовете които ще бъдат сравнявани, за да се определи дали получателя е локален или отдалечен. Единственото предназначение на подмрежотава маска е да определи какъв е получателя на всеки пакет, локален или отдалечен хост.
Например ако първите 16 бита на подмрежовата маска са 1-ци, тогава IP сравнява първите 16 бита от IP адреса на изпращача с първите 16 бита от IP адреса наполучателя. Ако тези битове съвпадат напълно, получателя е локален, ако има някакви разлики тогава получателя се намира в отдалечена мрежа. Ако първите 24 бита са 1-ци, IP сравнява първите 24 бита от IP адресите, ако съвпадат напълно получателя е локален, ако ли не той е отдалечен.
Намиране на локален адрес
Подмрежовата маска 255.0.0.0 в десетичен запис, представлява това в двуичен вид:
1111 1111.0000 0000.0000 0000.0000 0000
Това казва на IP, че първите 8 бита са използвани за мрежовата част от адреса, а останалите 24 за адреса на хоста.
Например ако IP адреса на източника е 10.1.2.3 с подмрежова маска 255.0.0.0 и IP адреса на получателя е 10.3.4.5 то IP изследва адреса така:
| Десетично | Двуично | |
| Подмрежова маска | 255.0.0.0 | 1111 1111.0000 0000.0000 0000.0000 0000 |
| Източник | 10.1.2.3 | 0000 1010.0000 0001.0000 0010.0000 0011 |
| Получател | 10.3.4.5 | 0000 1010.0000 0011.0000 0100.0000 0101 |
| РЕЗУЛТАТ | Съвпада = Локален |
Понеже подмрежовата маска има в първите 8 бита 1-ци, IP сравнява първите 8 бита от адресите на източника и получателя. В този случай пътвите 8 бита и в двата IP адреса съвпадат, така че получателя е локален. Знаейки това, IP може да броудкастне ARP пакет, за да получи хардуерния адрес.
Намиране на отдалечен адрес
При друг пример, ако IP адреса на източника е 10.1.2.3 с подмрежова маска 255.0.0.0 и IP адреса на получателя е 11.3.4.5, тогава IP преглежда IP адресите така:
| Десетично | Двуично | |
| Подмрежова маска | 255.0.0.0 | 1111 1111.0000 0000.0000 0000.0000 0000 |
| Източник | 10.1.2.3 | 0000 1010.0000 0001.0000 0010.0000 0011 |
| Получател | 11.3.4.5 | 0000 1011.0000 0011.0000 0100.0000 0101 |
| РЕЗУЛТАТ | Различават се = Отдалечен |
При сравнението на първите 8 бита IP открива разлики и това означава, че получателя е отдалечен. Знаейки това IP броудкаства ARP пакет за получаване хардуерния адрес на рутера. IP трябва да изпрати пакета до IP адреса на рутера, който ще изнесе пакета от мрежата.
Друг пример, ако адреса на изпращача е 176.16.2.3 и адреса на получателя е 176.16.4.5. И ви попитам “Получателя локален или е отдалечен?” отговора, който трябва да дадете е “Незнам, нямам достатъчно информация”. Без подмрежовата маска можете само да гадаете какъв е адреса. Ако подмрежотата маска е 255.255.0.0? Сега можете да отговорите, че получателя е локален защото сравнението на първите 16 бита показва пълно съвпадение. Но ако подмрежовата маска е 255.255.255.0? Сега трябва да сравните първите 24 бита, лесно се вижда че има разлика в третия октет, така че получателя е отдалечен.
Стандартни подмрежови маски
В глава 6 научихте за петте класа IP адреси. За всеки от петте класа има стандартна подмрежова маска.
Клас А адрес
Стандартната мрежова маска за клас А адресите е 255.0.0.0 Това казва на IP, че първите 8 бита се ползват за мрежовата част от IP адреса, а останалите 24 са частта за хоста. IP гледа 32-та бита и ползва подмрежовата маска, за да маскира мрежовата част от адреса:
ММММ ММММ.ХХХХ ХХХХ.ХХХХ ХХХХ.ХХХХ ХХХХ
Защото остават 24 бита за хост частта на адреса, има почти 17 милиона уникални IP адреса за всяка клас А мрежа.
Клас B адреси
Клас B адресите имат стандартна подмрежова маска 255.255.0.0. По аналогия маската казва на IP, че 16 бита се използват за мрежовата част на адреса, а останалите 16 бита са за хост частта:
ММММ ММММ.ММММ ММММ.ХХХХ ХХХХ.ХХХХ ХХХХ
16-те бита използвани за генериране на уникален хост адрес дават повече от 16000 хоста в клас B мрежата.
Клас C адреси
Клас C адресите имат стандартна подмрежова маска 255.255.255.0, което означава 24 бита за мрежовата част и 8 за адреса на хоста:
ММММ ММММ.ММММ ММММ.ММММ ММММ.ХХХХ ХХХХ
8-те бита използвани за хост адрес правят 254 уникални адреса във всяка клас C мрежа.
Обобщение:
| Клас | Стандартна маска (десетичен вид) | Стандартна маска (двуичен вид) |
| A | 255.0.0.0 | 1111 1111.0000 0000.0000 0000.0000 0000 |
| B | 255.255.0.0 | 1111 1111.1111 1111.0000 0000.0000 0000 |
| C | 255.255.255.0 | 1111 1111.1111 1111.1111 1111.0000 0000 |
В повечето случаи използването на стандартни мрежови маски не е оптималното решение за дизайн на мрежовия план. В повечето случаи се използва вариант на стандартните подмрежови маски, наречни клиентски подмрежови маски, които са разгледани в следващата глава 9 "Използване на клиентски подмрежови маски".
Снимката в ляво показва използването на клиентска подмрежова маска. Понеже IP адреса започва с 10 в първия октет, това е клас A адрес а стандартната подмрежова маска е 255.0.0.0 Обаче администратора е дефинирал своя подмрежова маска 255.255.255.240, което му позволява да създаде много мрежи с по-малко хостове в тях.
| Глава 7 Адресиране на IP хостове< Предишна | Следваща >Глава 9 Използване на клиентски подмрежови маски |
|---|


Щеше да е много по-полезно за всички да посочите конкретно какво е неверно и некомпетентно написано, за да може всички (и аз) да се поучим от вас! Опитайте да помогнете на всички тези които четат това, както се опитвам да помогна аз. Научете ни на нещо, публикувайте статия. Нека оценим и вашите знания.
Правописни, пунктуационни, граматични и всякакъв друг род езикови грешки има във вяроятно всяка една моя статия. Кои са допуснати от бързане кои не... ами до толкова знам езика.. и все пак сайта не е насочен към тези които искат да учат български език, в тази област аз не мога да помогна!
Опитвам се да помогна в друга област и го правя до колкото мога, посочете грешка на самия материал (ще можете ли? има ли такива?), да не е езикова грешка.. вече казах, че такива има предостатъчно..
Нека да продължим с коментарите, дайте почва на обвиненията си, с коя терминология не съм на ясно? Внесете малко яснота, за да не останете поредната безпочвена зложелателка!
Който за първи път чете материал по тази тема може и да не забележи грешките ви и да не разбере, че статията не струва.