Комп’ютерні мережі

Номер вузла в протоколі IP призначається незалежно від локальної адреси вузла. Ділення IP-адреси на поле номера мережі й номера вузла – гнучке, і границя між цими полями може встановлюватися досить довільно. Вузол може входити в кілька IP-мереж. У цьому випадку вузол повинен мати кілька IP-адрес, по числу мережних зв’язків. Таким чином IP-адреса характеризує не окремий комп’ютер або маршрутизатор, а одне мережне з’єднання.

  • Символьний ідентифікатор-ім’я, наприклад, SERV1.IBM.COM. Ця адреса призначається адміністратором і складається з декількох частин, наприклад, імені машини, імені організації, імені домену. Така адреса, званий також DNS-ім’ям, використовується на прикладному рівні, наприклад, у протоколах FTP або telnet.

Три основні класи IP-адрес

IP-адреса має довжину 4 байти і звичайно записується у вигляді чотирьох чисел, що представляють значення кожного байта в десятковій формі, і розділених крапками, наприклад:

128.10.2.30 – традиційна десяткова форма представлення адреси,

10000000 00001010 00000010 00011110 – двійкова форма представлення цього ж адреси.

На рис.1 показана структура IP-адреси.

Клас Е 1 1 1 1 0 зарезервований

Рис. 3.1. Структура IР-адреси

Адреса складається з двох логічних частин – номера мережі й номера вузла в мережі. Яка частина адреси відноситься до номера мережі, а яка до номера вузла, визначається значеннями перших бітів адреси:

  • Якщо адреса починається з 0, то мережа відносять до класу А, і номер мережі займає один байт, інші 3 байти інтерпретуються як номер вузла в мережі. Мережі класу А мають номери в діапазоні від 1 до 126. (Номер 0 не використовується, а номер 127 зарезервований для спеціальних цілей, про що буде сказано нижче.) У мережах класу А кількість вузлів повинно бути більше 216, але не перевищувати 224.
  • Якщо перші два біти адреси рівні 10, то мережа належить до класу В і є мережею середніх розмірів з числом вузлів 28 – 216. У мережах класу В під адресу мережі і під адресу сайту відводиться по 16 бітів, тобто по 2 байти.
  • Якщо адреса починається з послідовності 110, то це мережа класу С з числом вузлів не більше 28. Під адресу мережі відводиться 24 біта, а під адресу сайту – 8 біт.
  • Якщо адреса починається з послідовності 1110, то він є адресою класу D і позначає особливий, групова адреса – multicast. Якщо в пакеті як адресу призначення вказана адреса класу D, то такий пакет повинні отримати всі вузли, яким присвоєно цю адресу.
  • Якщо адреса починається з послідовності 11110, то це адреса класу Е, він зарезервований для майбутніх застосувань.

У таблиці наведено діапазони номерів мереж, відповідних кожному класу мереж.

Угоди про спеціальні адрес и : broadcast, multicast, loopback

У протоколі IP існує кілька угод про особливу інтерпретації IP-адрес:

то він позначає адресу того вузла, який згенерував цей пакет;

то за замовчуванням вважається, що цей вузол належить тій же самій мережі, що й вузол, що відправив пакет;

то пакет з такою адресою призначення повинен розсилатися всім вузлам, що перебувають у тій же мережі, що й джерело цього пакета. Така розсилка називається обмеженим широкомовним повідомленням (limited broadcast);

то пакет, що має таку адресу розсилається всім вузлам мережі із заданим номером.

Така розсилка називається широкомовним повідомленням (broadcast);

адреса 127.0.0.1 зарезервований для організації зворотного зв’язку при тестуванні роботи програмного забезпечення вузла без реального відправлення пакета по мережі. Ця адреса має назва loopback.

Вже згадувана форма групового IP-адреси – multicast – означає, що даний пакет повинен бути доставлений відразу декільком вузлам, які утворюють групу з номером, зазначеним у поле адреси. Вузли самі ідентифікують себе, тобто визначають, до якої з груп вони відносяться. Один і той же вузол може входити в кілька груп. Такі повідомлення на відміну від широкомовних називаються мультівещательнимі. Груповий адреса не ділиться на поля номера мережі й вузла й обробляється маршрутизатором особливим чином.

У протоколі IP немає поняття широкомовного в тому сенсі, в якому воно використовується в протоколах канального рівня локальних мереж, коли дані повинні бути доставлені абсолютно усіх вузлів. Як обмежений широкомовний IP-адресу, так і широкомовна IP-адреса мають межі розповсюдження в інтермережі – вони обмежені або мережею, до якої належить вузол – джерело пакета, або мережею, номер якої вказаний у адресі призначення. Тому поділ мережі за допомогою маршрутизаторів на частини локалізує широкомовний шторм межами однієї зі складових загальну мережу частин просто тому, що немає способу адресувати пакет одночасно всім вузлам всіх мереж складовою мережі.

Відображення фізичних адрес на IP-адреси: протоколи ARP і RARP

У протоколі IP-адресу сайту, тобто адреса комп’ютера або порту маршрутизатора, призначається довільно адміністратором мережі й прямо не пов’язаний з його локальною адресою, як це зроблено, наприклад, у протоколі IPX. Підхід, використовуваний в IP, зручно використовувати у великих мережах і через його незалежності від формату локальної адреси, і через стабільності, тому що в противному випадку, при зміні на комп’ютері мережного адаптера ця зміна повинні б були враховувати всі адресати всесвітньої мережі Internet ( в тому випадку, звичайно, якщо мережа підключена до Internet’у).

Локальний адреса використовується в протоколі IP тільки в межах локальної мережі при обміні даними між маршрутизатором і вузлом цієї мережі. Маршрутизатор, одержавши пакет для вузла однієї з мереж, безпосередньо підключених до його портів, повинен для передачі пакета сформувати кадр відповідно до вимог прийнятої в цій мережі технології і вказати в ньому локальна адреса вузла, наприклад його МАС-адресу. У прийшов пакеті ця адреса не вказано, тому перед маршрутизатором встає задача пошуку його по відомому IP-адресою, яка зазначена в пакеті як адреси призначення. З аналогічною задачею зіштовхується й кінцевий вузол, коли він хоче відправити пакет у вилучену мережу через маршрутизатор, підключений до тієї ж локальної мережі, що і цей вузол.

Для визначення локальної адреси по IP -адресою використовується протокол дозволу адреси Address Resolution Protocol , ARP . Протокол ARP працює різним образом залежно від того, який протокол канального рівня працює в даній мережі – протокол локальної мережі (Ethernet, Token Ring, FDDI) з можливістю широкомовного доступу одночасно до всіх вузлів мережі, або ж протокол глобальної мережі (X.25, frame relay), як правило не підтримуючий широкомовний доступ. Існує також протокол, що вирішує зворотну задачу – знаходження IP-адреси за відомим локального адресою. Він називається реверсивний ARP – RARP (Reverse Address Resolution Protocol) і використовується при старті бездискових станцій, що не знають у початковий момент свого IP-адреси, але знаючих адресу свого мережного адаптера.

У локальних мережах протокол ARP використовує широкомовні кадри протоколу канального рівня для пошуку в мережі вузла із заданим IP-адресою.

Вузол, якому потрібно виконати відображення IP-адреси на локальну адресу, формує ARP запит, вкладає його в кадр протоколу канального рівня, указуючи в ньому відомий IP-адресу, і розсилає запит широкомовно. Всі вузли локальної мережі одержують ARP запит і порівнюють зазначений там IP-адресу із власним. У разі їх збігу вузол формує ARP-відповідь, в якій вказує свій IP-адресу і свій локальний адресу і відправляє його вже направлено, тому що в ARP запиті відправник зазначає свою локальну адресу. ARP-запити і відповіді використовують один і той же формат пакета. Так як локальні адреси можуть у різних типах мереж мати різну довжину, то формат пакета протоколу ARP залежить від типу мережі. На малюнку 3.2 показаний формат пакета протоколу ARP для передачі по мережі Ethernet.

Тип протоколу

Довжина мережево ї адреси

IP-адресація в мережах TCP/IP: класова і безкласова модель адресації, особливі IP-адреси

IP-адреса є унікальним 32-бітним ідентифікатором IP-інтерфейсу в Інтернет. Часто кажуть, що IP-адреса присвоюється вузлу мережі (наприклад хосту); це вірно в разі, якщо вузол є хостом з одним IP-інтерфейсом, інакше слід уточнити, про адресу якого саме інтерфейсу даного вузла йде мова. Далі для стислості там, де це не викличе невірного тлумачення, замість адреси IP-інтерфейсу вузла мережі йдеться про IP-адресу хоста.

IP-адреси прийнято записувати розбивкою за все адреси по октетам, кожен октет записується у вигляді десяткового числа, числа розділяються крапками. Наприклад, адреса

IP-адреса хоста складається з номера IP-мережі, який займає старшу область адреси, і номери хоста в цій мережі, який займає молодшу частину. Положення кордону мережевої та хостової частин (звичайно воно характеризується кількістю біт, відведених на номер мережі) може бути різним, визначаючи різні типи IP-адрес, які розглядаються нижче.

Класова модель

У класової моделі IP-адреса може належати до одного з чотирьох класів мереж. Кожен клас характеризується певним розміром мережної частини адреси, кратним восьми; таким чином, межа між мережевою і хостової частинами IP-адреси в класовій моделі завжди проходить по межі октету. Належність до того чи іншого класу визначається за старшим бітам адреси (рис. 2.2.1).

Клас А. Старший біт адреси дорівнює нулю. Розмір мережної частини дорівнює 8 бітам. Таким чином, може існувати всього приблизно 27 мереж класу А, але кожна мережа має адресним простором на 224 хостів. Так як старший біт адреси нульовий, то всі IP-адреси цього класу мають значення старшого октету в діапазоні 0-127, який є також і номером мережі.

Клас В. Два старших біта адреси рівні 10. Розмір мережної частини дорівнює 16 бітам. Таким чином, може існувати всього приблизно 214 мереж класу В, кожна мережа має адресним простором на 216 хостів. Значення старшого октету IP-адреси лежать в діапазоні 128-191, при цьому номером мережі є два старших октету.

Клас С. Три старших біта адреси рівні 110. Розмір мережної частини дорівнює 24 бітам. Кількість мереж класу С приблизно 221, адресний простір кожної мережі розраховано на 254 хоста. Значення старшого октету IP-адреси лежать в діапазоні 192-223, а номером мережі є три старші октету.

Клас D. Мережі зі значеннями старшого октету IP-адреси 224 і вище. Зарезервовані для спеціальних цілей. Деякі адреси використовуються для мультікастінга – передачі дейтаграм групі вузлів мережі, наприклад:

224.0.0.1 – всім хостам даної мережі;

224.0.0.2 – всім маршрутизаторам даної мережі;

224.0.0.5 – всім OSPF-маршрутизаторам;

224.0.0.6 – всім виділеним (designated) OSPF-маршрутизаторам.

У класі А виділені дві особливі мережі, їх номери 0 і 127. Мережа 0 використовується при маршрутизації як вказівку на маршрут за замовчуванням (див. п. 2.3) і в інших особливих випадках.

IP-інтерфейс з адресою в мережі 127 використовується для адресації вузлом себе самого (loopback, інтерфейс зворотного зв’язку). Інтерфейс зворотного зв’язку не обов’язково має адресу в мережі 127 (особливо у маршрутизаторів), але якщо вузол має IP-інтерфейс з адресою 127.0.0.1, то це – інтерфейс зворотнього зв’язку. Звернення за адресою loopback-інтерфейсу означає зв’язок з самим собою (без виходу пакетів даних на рівень доступу до середовища передачі); для протоколів на рівнях транспортному і вище таке з’єднання не відрізняються від з’єднання з віддаленим вузлом, що зручно використовувати, наприклад, для тестування мережевого програмного забезпечення.

У будь-якій мережі (це справедливо і для безкласової моделі, яку ми розглянемо нижче) усі нулі в номері хоста позначають саму мережу, всі одиниці – адреса широкомовної передачі (broadcast).

Наприклад, 194.124.84.0 – мережа класу С, номер хоста в ній визначається останнім октетом. При відправленні широкомовного повідомлення воно відправляється за адресою 194.84.124.255. Номери, дозволені для присвоювання хостам: від 1 до 254 (194.84.124.1 – 194.84.124.254), всього 254 можливих адреси.

Інший приклад: у мережі 135.198.0.0 (клас В, номер хоста займає два октету) широкомовний адресу 135.198.255.255, діапазон номерів хостів: 0.1 – 255.254 (135.198.0.1 – 135.198.255.254).

Безкласова модель (CIDR)

Припустимо, в локальній мережі, яка підключається до Інтернет, знаходиться 2000 комп’ютерів. Кожному з них потрібно видати IP-адресу. Для отримання необхідного адресного простору потрібні або 8 мереж класу C, або одна мережа класу В. Мережа класу В вміщує 65534 адреси, що багато більше необхідної кількості. При загальному дефіциті IP-адрес таке використання мереж класу В марнотратно. Проте якщо ми будемо використовувати 8 мереж класу С, виникне наступна проблема: кожна така IP-мережа повинна бути представлена ​​окремим рядком у таблицях маршрутів на маршрутизаторах, тому що з точки зору маршрутизаторів – це 8 абсолютно ніяк не пов’язаних між собою мереж, маршрутизація дейтаграм в які здійснюється незалежно, хоча фактично ці IP-мережі і розташовані в одному фізичному локальної мережі та маршрути до них ідентичні. Таким чином, економлячи адресний простір, ми багато разів збільшуємо службовий трафік у мережі і витрати по підтримці і обробці маршрутних таблиць.

З іншого боку, немає ніяких формальних причин проводити кордон мережа-хост в IP-адресу саме по межі октету. Це було зроблено виключно для зручності подання IP-адрес і розбиття їх на класи. Якщо вибрати довжину мережної частини в 21 біт, а на номер хоста відвести відповідно 11 біт, ми отримаємо мережу, адресний простір якої містить 2046 IP-адрес, що максимально точно відповідає поставленому вимогу. Це буде одна мережа, яка визначається своїм унікальним 21-бітним номером, отже, для її обслуговування буде потрібно тільки один запис у таблиці маршрутів.

Єдина проблема, яку залишилося вирішити: як визначити, що на мережеву частину відведено 21 біт? У випадку класової моделі старші біти IP-адреси визначали приналежність цієї адреси до того чи іншого класу і, отже, кількість біт, відведених на номер мережі.

У випадку адресації поза класів, з довільним становищем кордону мережа-хост всередині IP-адреси, до IP-адресоюдодається 32-бітова маска, яку називають маскою мережі (netmask) або маскою підмережі (subnet mask). Мережева маска конструюється за наступним правилом:

• на позиціях, що відповідають номера мережі, біти встановлені;

• на позиціях, що відповідають номером хоста, біти скинуті.

Описана вище модель адресації називається безкласової (CIDR – Classless Internet Direct Routing, пряма безкласовамаршрутизація в Інтернет). В даний час класова модель вважається застарілою і маршрутизація і (здебільшого) видача блоків IP-адрес здійснюються за моделлю CIDR, хоча класи мереж ще міцно утримуються в термінології.

Запис адрес в безкласовій моделі

Для зручності запису IP-адреса в моделі CIDR часто представляється у вигляді abcd / n, де abcd – IP адреса, n – кількість біт в мережної частини.

Маска мережі для цієї адреси: 17 одиниць (мережева частина), за ними 15 нулів (хостовую частина), що в октетном поданні одно

Представивши IP-адреса в двійковому вигляді і побітно помноживши його на маску мережі, ми отримаємо номер мережі (всі нулі в хостової частини). Номер хоста в цій мережі ми можемо отримати, побітно помноживши IP-адресу на перевернутій маску мережі.

Приклад: IP = 205.37.193.134/26 або, що те ж,

IP = 205.37.193.134 netmask = 255.255.255.192.

Розпишемо в двійковому вигляді:

IP = 11001101 00100101 11000111 10000110

маска = 11111111 11111111 11111111 11000000

Помноживши побітно, отримуємо номер мережі (у хостової частини – нулі):

network = 11001101 00100101 11000111 11000000

або, в октетном поданні, 205.37.193.128/26, або, що те ж, 205.37.193.128 netmask 255.255.255.192.

Хостовую частина розглянутого IP-адреси дорівнює 000110, або 6. Таким чином, 205.37.193.134/26 адресує хост номер 6 у мережі 205.37.193.128/26. У класової моделі адресу 205.37.193.134 визначав би хост 134 в мережі класу С 205.37.193.0, однак вказівка ​​маски мережі (або кількості біт в мережної частини) однозначно визначає приналежність адреси до безкласової моделі.

Вправа. Покажіть, що адреса 132.90.132.5 netmask 255.255.240.0 визначає хост 4.5 в мережі 132.90.128.0/20 (в класовій моделі це був би хост 132.5 в мережі класу В 132.90.0.0). Знайдіть адресу broadcast для цієї мережі.

Очевидно, що мережі класів А, В, С у безкласової моделі представляються з допомогою масок відповідно 255.0.0.0 (або / 8), 255.255.0.0 (або / 16) і 255.255.255.0 (або / 24).

Особливі IP-адреси

Протокол IP припускає наявність адрес, які трактуються особливим чином. До них належать такі:

1. Адреси, значення першого октету яких дорівнює 127. Пакети, спрямовані за такою адресою, реально не передаються в мережу, а обробляються програмним забезпеченням вузла-відправника. Таким чином, вузол може направити дані самому собі. Цей підхід дуже зручний для тестування мережевого програмного забезпечення в умовах, коли немає можливості підключитися до мережі.

2. Адреса 255.255.255.255. Пакет, в призначенні якого стоїть адресу 255.255.255.255, повинен розсилатися всім вузлам мережі, в якій знаходиться джерело. Такий вид розсилки називається обмеженим широкомовлення. У двійковій формі ця адреса має вигляд 11111111 11111111 11111111 11111111.

3. Адреса 0.0.0.0. Він використовується в службових цілях і трактується як адресу того вузла, який згенерував пакет. Двійкове подання цієї адреси 00000000 00000000 00000000 00000000

Додатково особливим чином інтерпретуються адреси:

містять 0 у всіх двійкових розрядах поля номера вузла; такі IP-адреси використовуються для запису адрес мереж в цілому;

містять 1 у всіх двійкових розрядах поля номера вузла; такі IP-адреси є широкомовними адресами для мереж, номери яких визначаються цими адресами.