Інтернет-протокол. Адресація в Інтернеті. Служба DNS.

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

Схему дій для передачі дейтаграммы від однієї прикладної програми до іншої можна проілюструвати таким чином (см. рис. 6.14).

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

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

Модуль передає цю дейтаграмму і адресу в локальній мережі в розпорядження інтерфейсу локальної мережі.

Інтерфейс локальної мережі створює відповідний цій мережі заголовок і сполучає з ним дейтаграмму. Потім він передає по локальній мережі отриманий таким чином результат.

Дейтаграмма достигает хост-компьютер, играющий роль шлюза и расположенный в вершине сети. Интерфейс локальной сети отделяет этот заголовок и передает дейтаграмму на модуль Internet. Модуль Internet определяет из Internet адреса, что дейтаграмма должна быть направлена на хост-компьютер во второй сети. Модуль Internet определяет адрес хоста-получателя в локальной сети. Он обращается к интерфейсу локальной сети с тем, чтобы она переслала данную дейтаграмму по назначению.

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

Модуль Internet визначає, що дейтаграмма, що розглядається вище, призначена для прикладної програми на цей хосте. Модуль передає дані прикладній програмі у відповідь на системний виклик. Як результат цього виклику передаються адреса одержувача і інші параметри.

Мал. 6.14 Шлях передачі дейтаграммы

З вищесказаного ясно, що одним з найважливіших понять IP -протокола являється Інтернет-адреса (IP -адрес).

Кожен комп'ютер в мережі TCP/IP має IP -адрес, що складається з номера мережі і номера вузла. Усе IP -адреса мають довжину 32 біта і використовуються в полях Адреса одержувача і Адреса відправника IP -пакетов (дейтаграмм). IP -адрес зазвичай записується у вигляді чотирьох чисел (октетів), що представляють значення кожного байта в десятковій формі, і розділених точками, наприклад, 192.10.24.100

Номер мережі може бути вибраний адміністратором довільно, або призначений за рекомендацією спеціального підрозділу Internet (Network Information Center, NIC), якщо мережа повинна працювати як складова частина Internet. Зазвичай провайдери послуг Internet отримують діапазони адрес у підрозділів NIC, а потім розподіляють їх між своїми абонентами.

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

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

 

  1 байт 2 байт 3 байт 4 байт
Класс A № сети № узла
Класс B № сети № узла
Класс C № сети № узла
Класс D Адрес группы широковещания (multicast)
Класс E Зарезервировано для будущего использования
                 

 

Структура IP -адресів.

З таблиці видно:

· Мережа класу A має номери в діапазоні 1 - 126. Під адресу мережі відводиться 1 байт, під адресу вузла - 3 байти.

· Мережа класу B має номери в діапазоні 128 - 191. Під адресу мережі відводиться 2 байти, під адресу вузла - 2 байти.

· Мережа класу C має номери в діапазоні 192 - 223. Під адресу мережі відводиться 3 байти, під адресу вузла - 1 байт.

· Адреса класу D означає особливу, групову адресу. Якщо в пакеті як адреса призначення вказана адреса класу D (перший октет має діапазон 224 - 239), то такий пакет повинні отримати усі вузли, яким присвоєна ця адреса.

· Адреси з першим октетом в діапазоні 240 - 247 зарезервовані для майбутнього застосування.

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

· Адреса 0.0.0.0 визначає адреса вузла, який згенерував пакет.

· IP -адрес з нульовим номером мережі означають поточну мережу. Ці адреси дозволяють спілкуватися хостам власної мережі, не знаючи номера мережі, а знаючи тільки клас мережі.

· Адреса 255.255.255.255 використовується для широкомовної передачі в межах власної мережі (limited broadcast).

· IP -адрес з певним номером мережі і одиницями в номері вузла використовується для широкомовної передачі в межах певної мережі (broadcast).

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

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

Для відображення доменного імені на IP -адрес використовується DNS (Domain Name System) - доменна служба імен. DNS - це розподілена база даних, підтримувальна ієрархічну систему імен для ідентифікації вузлів в мережі Internet. Служба DNS призначена для автоматичного пошуку IP -адреса по відомому символьному імені вузла. Специфікація DNS визначається стандартами RFC 1034 і 1035. DNS вимагає статичної конфігурації своїх таблиць, що відображують імена комп'ютерів в IP -адрес.

Протокол DNS є службовим протоколом прикладного рівня. Цей протокол несиметричний - в нім визначені DNS -серверы і DNS -клиенты. DNS -серверы зберігають частину розподіленої бази даних про відповідність символьних імен і IP -адресов. Ця база даних розподілена по адміністративних доменах мережі Internet. Клієнти сервера DNS знають IP -адрес сервера DNS свого адміністративного домена і по протоколу UDP передають запит, в якому повідомляють відоме символьне ім'я і просять повернути відповідний йому IP -адрес.

• Якщо дані про запитану відповідність зберігаються в базі цього DNS -сервера, то він відразу посилає відповідь клієнтові, якщо ж немає - те він посилає запит DNS -серверу іншого домена, який може сам обробити запит, або передати його іншому DNS -серверу. Усе DNS -серверы сполучені ієрархічно, відповідно до ієрархії доменів мережі Internet. Клієнт опитує ці сервери імен, поки не знайде потрібні відображення. Цей процес прискорюється через те, що сервери імен постійно кэшируют інформацію, що надається по запитах. Клієнтські комп'ютери можуть використовувати у своїй роботі IP -адреса декількох DNS -серверов, для підвищення надійності своєї роботи.

• База даних DNS має структуру дерева, званого доменним простором імен, в якому кожен домен (вузол дерева) має ім'я і може містити піддомени. Ім'я домена ідентифікує його положення в цій базі даних по відношенню до батьківського домена, причому точки в імені відділяють частини, відповідні вузлам домена.

• Корінь бази даних DNS управляється центром Internet Network Information Center. Домени верхнього рівня розділяються на дві групи - родові домени і домени держав. Для позначення країн використовуються трьохбуквені і двохбуквені абревіатури, а для різних типів організацій (родових імен) використовуються наступні абревіатури:

- com - комерційні організації (наприклад, microsoft.com);

- edu - освітні (наприклад, mit.edu);

- gov - урядові організації (наприклад, nsf.gov);

- org - некомерційні організації (наприклад, fidonet.org);

- net - організації, підтримувальні мережі (наприклад, nsf.net).

Повне ім'я домена подібно до повного імені файлу, складається з шляху від цього домена до вершини дерева. Крайнє праве поле означає домен верхнього рівня, далі, справа наліво, слідують піддомени в порядку ієрархічної вкладеності, крайнє ліве поле означає ім'я хоста. Наприклад, ім'я abcdef.hotmail.ru означає - хост abcdef знаходиться в домені hotmail, який у свою чергу знаходиться в домені ru.