Загальні положення
Мережа може бути розділена на менші мережи, а звані підмережами (subnets). Використовуючи ділення мережі на підмережі (сегменти), можна добитися ефективнішого використання адресного простору. У великих організаціях таке ділення використовується з метою розділити одну велику мережу на декілька менших.
Наприклад, мережа 172.16.0.0 може бути розділена на чотири сегменти:
; 172.16.1.0 ; 172.16.2.0 ; 172.16.3.0 ; 172.16.4.0
Якщо ваша мережа підключена до Internet, NIC видасть вам унікальну адресу мережі. Ця адреса представляє вашу мережу в цілому, навіть якщо вона розділена на декілька сегментів. Сегменти повинні використовувати одну і ту ж мережеву адресу, тому щоб розрізняти їх, потрібна додаткова інформація. Адресу сегменту доповнює адреса мережі. Процес ділення мережі на сегменти полягає у використанні частки адреси вузла як адреса сегменту.
Використання маски підмережі - це спосіб адаптувати IP-адреса Internet для вживання в підмережах. Мережеві пристрої, наприклад, маршрутизатори, використовують маску підмережі для визначення, яка частка адреси описує мережу, а яка - конкретний вузол в мережі. Вирішення про перенаправлення потоку даних приймаються, грунтуючись на номерах мережі і сегменту.
Процес призначення адрес в мережі, яка ділиться на сегменти, складається з трьох етапів:
визначення маски підмережі; призначення адреси кожної підмережі; призначення адреси кожному вузлу в кожному сегменті.
Маска підмережі - це 32-розрядне число, яке побітно складається з IP-адресом, для перевизначення вживаного за умовчанням ділення адреси на мережеву і вузлову складові. Маска підмережі указує, які біти використовуються для виділення підмережі з цілої мережі. У масці підмережі ви призначаєте значення 1 кожному біту, який відповідає частці IP-адреса, підмережі, що відноситься до адреси.
32-розрядна маска підмережі може бути записана як чотири октети. Розміщення полів маски наступне:
• двійкова 1 для бітів, що визначають мережу
• двійкова 1 для бітів, що визначають підмережу
• двійковий 0 для бітів, що визначають вузол.
Таблиця.3.1
Мережа | Вузол | ||||||||
IP | |||||||||
адреса | |||||||||
Мережа | Вузол | ||||||||
Маска за умовчанням | |||||||||
для класу B | |||||||||
Мережа | Підмережа | Вузол | |||||||
32-бітна | |||||||||
маска підмережі | |||||||||
Адреси класів A, B і C мають задані за умовчанням маски підмережі, які відображають задане за умовчанням розділення адреси підмережі / вузла. Ці задані за умовчанням маски мають 1 в кожній позиції, відповідній заданому за умовчанням компоненту мережевої адреси відповідного класу IP адрес. Біти підмережі починаються з першого біта старшого октету поля адреси вузла.
У адресі класу А тільки перший октет складає мережева адреса. Це еквівалентно масці підмережі 255.0.0.0. Аналогічно, задана за умовчанням маска для адреси класу B має вигляд 255.255.0.0, а адреса класу С - маску 255.255.255.0.
Задана за умовчанням маска підмережі для кожного класу мережі обробляє відповідну адресу IP, неначе і немає ніяких підмереж. Якщо ви захочете розділити вашу мережу на підмережі, ви повинні будете змінити вашу маску підмережі. Точніше, ви повинні будете замінити деякі з 0 в масці на 1. Це означатиме, що частка вузлового компоненту кожної IP-адреса оброблятиметься як додаткова інформація про адресацію в мережі.
Розгледимо приклад накладення маски підмережі.
Організація получила одиночну мережеву адресу класу B (172.16.0.0). Ця організація бажає розділити мережу на окремі підмережі. Щоб зробити це, треба змінити задану за умовчанням маску підмережі класів B 255.255.0.0. Найпростіше рішення, яке може прийняти Argo, - визначити весь третій октет адреси як мережеву адресу для підмереж. Міняємо третій октет маски підмережі на 11111111. Тепер маска підмережі в компанії Argo виглядає таким чином: 255.255.255.0. Звернете увагу, що вона така ж, як задана за умовчанням маска підмережі для мереж класу C.
Коли нова маска підмережі буде накладена, IP-адреса вузлів в мережі Argo матимуть три компоненти. Перші два октети залишаються як стандартній мережевій адресі класу B. Третій октет буде номером підмережі в мережі компанії. Четвертий октет функціонуватиме як адреса вузла в кожній підмережі.
З точки зору зовнішніх маршрутизаторів, мережа Argo є, як би, одиночною мережею класу B. Проте, власні маршрутизатори Argo розрізняють підмережі, як окремі мережі класу C. Коли дані посилаються ззовні в мережу компанії (наприклад на адресу 172.16.2.160), маршрутизатор витягує IP-адрес вузла-одержувача з пакету і відновлює внутрішню маску підмережі. Потім він виконує логічну операцію AND, щоб отримати номер мережі. При виконанні операції AND, частка адреси, що позначає вузол-одержувач, віддаляється. Це тому, що будь-який біт, перемножений за допомогою операції AND з 0 дасть 0.
Якщо в мережі компанії не були б визначені підмережі, то вийшла б адреса мережі - 172.16.0.0. Але, оскільки мережа компанії була розділена на підмережі, то після операції AND з початкової IP-адреса витягуватиметься як адреса мережі, так і адреса підмережі - в нашому прикладі це 172.16.0.2. Таким чином, рішення про маршрутизацію засновані тільки на номерах мережі і підмережі.
Правила для адресації підмереж визначені специфікацією протоколу Internet RFC 791 і специфікацією підмереж RFC 950. По цих правилах, адреси підмережі, які складаються повністю з або 1, або 0, зарезервовані для ідентифікації локальної мережі і широкомовних передач. Використання всього третього октету адреси для ідентіфіцикациі підмереж дозволяє розділити мережу 254 (два у восьмому ступені, мінус два) окремих підмереж.
Розгледимо випадок з мережею класу C.
Задана за умовчанням маска для мережі класу C - 255.255.255.0. Установка останнього октету маски підмережі в 11111111 приведе до маски 255.255.255.255. Це дозволило б створити 254 підмережі, але не має сенсу, оскільки не залишається мета для інформації про адресу вузла.
Використання семи маскуючих бітів (11111110 в останньому октеті, тобто 254) також не має сенсу, тому що один біт, що залишився, в адресі вузла, повинен мати значення або 0, або 1. Проте, адреси вузлів, що складаються повністю з 1 або 0 зарезервовані і не можуть бути призначені хостам. Таким чином, хоча маска 255.255.255.254 і підтримує 126 допустимих підмереж, вона не залишає ніякого адресного простору для вузлів.
Так само використання тільки одного біта для маски також безцільно, оскільки це не приводить ні до яких підмереж. Причиною цього є те, що є тільки два можливі значення для адреси підмережі - 0 і 1.
Звернете увагу, що 1-розрядна маска (1000000) - не еквівалентна 0-розрядній, заданій за умовчанням масці (00000000), навіть при тому, що обидві не приводять ні до яких підмереж. Це тому, що 1-розрядна маска має тільки сім біт, доступних для адресації вузла і може підтримувати тільки 126 хостов. Задана за умовчанням маска використовує все вісім біт для адресації вузла і може підтримувати 254 хоста.
Таблиця показує зв'язок між числом підмереж і забезпечуваних адрес вузлів для всіх можливих масок в мережі класу C.
Таблиця 3.2
Кількість маскуючих біт | Двійкова маска | Десяткова Маска | Кількість можливих підмереж | Кількість можливих хостов в кожній підмережі | ||
н/о |
Як бачите, обмеження на число хостов, що підключаються, зменшують ваші можливості розділяти мережу класу C на підмережі.
Існує зворотна залежність між кількістю доступних адрес підмереж і кількістю вузлів, які можуть підключатися до кожної підмережі. При установці міжмережевих з'єднань, ви повинні визначити число підмереж і вузлів в кожній підмережі, які вам необхідно підключити.
Кількість можливих підмереж залежить від числа біт, відведених адресі підмережі. Воно дорівнює кількості одиниць в масці підмережі мінус кількість одиниць в заданій за умовчанням масці для конкретного класу мережі. Точне число підмереж обчислюється як 2 в ступені кількості біт, призначених адресі підмережі, і мінус два (не можуть бути призначені адреси, отримані зі всіх 0 або 1).
Число вузлів, що підключаються в підмережу виходить з числа немаскуючих біт (0) в масці підмережі. Точне число вузлів дорівнює 2 в ступені кількості немаскуючих біт, мінус два (не можуть бути призначені адреси, отримані зі всіх 0 або 1).
Розгледимо цю маску підмережі - 255.255.224.0.
Число підмереж, які вона може підтримувати, залежить від того, чи має мережу адреса класу B або класу A.
Якщо мережа має адресу класу A, то адреса підмережі займає одинадцять біт, тобто весь другий октет і три біта в третьому. Таким чином є 2 в ступені 11, мінус 2, можливих підмереж. Виходить 2046.
Якщо використовується адреса класу B, отже адреса підмережі займає тільки три біта в третьому октеті. Тобто мережа ділиться на 2 в ступені 3, мінус 2 можливих підмережі. Виходить 6.
І незалежно від того, якого класу адреса привласнена мережі (класу A або класу B), останні тринадцять біт адреси відведені адресам вузлів. Отже, є можливість підключити 2 в ступені 13, мінус 2 вузлів в кожну підмережу. Тобто, 8190.
Передбачимо, що NIC (або RIPE в Європі) призначила вашій мережі адресу класу C 192.168.5.0. Вам потрібно 20 підмереж з 5 вузлами в кожній. Тобто ви повинні вибрати розмір поля підмережі, який дозволить отримати таку кількість підмереж.
Вибір 5-розрядній маски дає вам можливість організувати 30 підмереж, і перекриває число підмереж, необхідних вам. Адреси підмережі кратні 8, тобто 192.168.5.16, 192.168.5.32, 192.168.5.48. Допустимі значення адрес підмережі залежать від числа бітів, відведених для адреси підмережі. Ви використовуєте біти, що залишилися, в останньому октеті для номера вузла. У нашому прикладі для цього можна використовувати три біта. Призначення трьох немаскуючих (0) біт для адреси вузла дозволить вам підключити 6 вузлів в кожну підмережу. Це вистачає, щоб покрити необхідну кількість - 5 вузлів на підмережу.
У наведеному прикладі перша підмережа починається з адреси 192.168.5.8 - ця адреса визначається як ідентифікатор підмережі і не може використовуватися як адреса вузла. Адреси з 192.168.5.9 по 192.168.5.14 (їх 6 як і розраховано) можуть використовуватися як адреси вузлів. Адреса 192.168.5.15 - широкомовна адреса підмережі, яку ви не можете використовувати як адреса вузла.
Наступна підмережа зачинається з 192.168.5.16 - це ідентифікатор підмережі, і вона має адреси вузлів від 192.168.5.17 до 192.168.5.22. Широкомовна адреса підмережі - 192.168.5.23.
Ареса мережі і підмережі мають бути однаковими біля всіх хостів однієї підмережі. Проте, оскільки всі адреси IP мають бути унікальні, то ви не можете призначити одну і ту ж адресу вузла двом хостам однієї підмережі. Як і у випадку з підмережами, частка адреси, що містить номер вузла не може складатися тільки з одиниць або тільки з нулів. Ви можете призначати будь-які значення, що відповідають цим вимогам, як адреси хостів. Повні адреси хостів - це комбінація адрес мережі, підмережі, а також номери вузла в підмережі.
Коли ви вперше сполучаєте мережі між собою, важко сказати, яка кількість підмереж вам знадобитися в майбутньому. Це робить скрутним визначення відповідної маски підмережі. RFC 1219 пропонує стратегію призначення IP-адрес, яка дозволяє змінювати маску підмережі без перепризначення існуючих IP-адрес.
Стратегія заснована на заповненні бітів вузловий компоненти адреси справа наліво. Перша адреса вузла, призначена в підмережі має бути 1 (1 в молодшому розряді). Наступна адреса вузла має бути 2 (10 в двійковому записі), наступний має бути 3 (11), наступний - 4 (100), і так далі. Біти номера підмережі в масці мають бути заповнені зліва направо, тобто в протилежному напрямі по відношенню до біт адреси вузла. Наприклад одному біту відповідає число 128, двом бітам - 192, трьом бітам - 224, і чотирьом бітам - 240. Ідеєю стратегії адресації RFC 1219 є те, що біти, найближчі до розділу між підмережами і вузлами повинні розподілятися останніми.
На будь-якому етапі ви можете перепризначувати один або більше цих бітів між вузлами і підмережами, змінюючи маску підмережі.
Дата добавления: 2015-02-16; просмотров: 1064;