Визначення адреси призначення пакету. Шлюз по замовчуванню
Маска підмережі
Маска підмережі являє собою 32-розрядне бінарне число, яке використовується для виділення (маскування) із IP-адреси її частин: ідентифікаторів мережі та хоста. Така процедура необхідна для того, щоб вияснити, чи відноситься та чи інша IP-адреса до локальної чи віддаленої мережі.
Кожен хост TCP/IP повинен мати маску підмережі – чи таку, що задається по замовчуванню (в тому випадку, коли мережа не ділиться на підмережі), чи спеціальну (якщо мережа розбита на декілька підмереж). Значення маски підмережі по замовчуванню залежить від використовуваного в даній мережі класу IP-адрес.
Таблиця 6.5.1.1.
Значення масок по замовчуванню для IP-адрес класів А, В та С
Клас адрес | Біти, що використовуються для маски підмережі | Десятковий запис з точковими розділювачами |
Клас А | 11111111 00000000 00000000 00000000 | 255.0.0.0 |
Клас В | 11111111 11111111 00000000 00000000 | 255.255.0.0 |
Клас С | 11111111 11111111 11111111 00000000 | 255.255.255.0 |
У масці підмережі біти, що відповідають ідентифікатору мережі, встановлюються в 1. Таким чином, значення кожного октету буде рівне 255. Усі біти, що відповідають ідентифікатору хоста, встановлюються в 0.
Наприклад, для хоста 129.84.3.24 значення маски по замовчуванню рівне 255.255.0.0, що означає , що ідентифікатор мережі рівний 129.84.0.0, а ідентифікатор хоста в цій мережі рівний 0.0.3.24.
Протокол IP використовує операцію логічного “І” для визначення того, якому хосту призначений пакет – чи тому, що розташований у локальній мережі, чи у віддаленій. При ініціалізації підтримки TCP/IP IP-адреса хоста складається з його маскою підмережі за допомогою операції логічного “І”. Перед відправленням кожного IP-пакету IP-адреса призначення складається з тією ж маскою підмережі. Якщо результати двох перелічених вище операцій співпадають, то це означає, що одержувач пакету знаходиться в локальній мережі. В іншому випадку (якщо відправнику повідомлення не відомий маршрут до одержувача повідомлення) пакет відправляється на шлюз по замовчуванню (default gateway), що являє собою шлюз в інші мережі. Шлюзом по замовчуванню є маршрутизатор.
Для виконання операції логічного “І” TCP/IP порівнює попарно відповідні біти IP-адреси і маски. Якщо обидва біти рівні 1, то результат також рівний 1, а в інших випадках результуючий біт рівний 0.
Наведемо приклад виконання набором TCP/IP логічної операції “І” для згаданого вище випадку адреси 129.84.3.24:
IP-адреса 10000001 01010100 00000011 00011000
маска підмережі 11111111 11111111 00000000 00000000
результат 10000001 01010100 00000000 00000000
Якщо у Вас найпростіша маленька мережа, що складається усього лише з однiєї підмережі, то всi хости у нiй можуть передавати данi безпосередньо один одному - в маршрутизацiї немає необхiдностi. (Насправдi у такiй мережi TCP/IP – протокол не потрібен, i можна цiлком обiйтися, наприклад, протоколом NetBEUI – немаршрутизованим протоколом для хостів з операційними системами від Microsoft, базованим на широкомовних повідомленнях). З іншої сторони, ваша мережа може бути настiльки велика, що застосування широкомовної адресації зробить її непрацездатною. Буде потрiбно розбити її на менші підмережі.
Кожна пiдмережа має як мiнiмум один маршрутизатор. Якщо маршрутизатора немає, те спiлкування з iншими мережами є неможливе, i нiякої об’єднаної мережі не буде. Прийнято, що перша IP-адреса пiсля номера мережi – це IP-адреса шлюзу по замовчуванню, тобто маршрутизатора і це є просто рекомендація, а не правило як адреса мережi чи широкомовна адреса хостів цієї мережі. Наприклад, адреса мережі 193.194.5.0, маска цієї підмережі 255.255.255.0, широкомовна адреса усіх хостів мережі 193.194.5.255, адреса маршрутизатора може бути 193.194.5.1.