Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Безпека.docx
Скачиваний:
132
Добавлен:
31.08.2019
Размер:
6.2 Mб
Скачать

15.2.2. Адресація

Загалом у стеку протоколів TCP/IP використовують три типи адрес [113]:

  1. локальні, або апаратні, адреси, що застосовують для адресації в межах підмережі (частіше це МАС-адреси);

  2. мережні, або IP- адреси, які однозначно ідентифікують вузол у межах усієї ІР-мережі;

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

Отже, коли користувачі та прикладні програми звертаються до Інтернету, здійснюються перетворення адрес двох типів:

  1. визначення IP- адреси за доменним іменем;

  2. визначення локальної адреси за ІР- адресою.

Обидва перетворення можуть спричинити порушення безпеки, оскільки створюють умови для зловмисного підмінювання адрес. Насправді вузлів в Ін­тернеті так багато, що підтримувати актуальні таблиці адрес на кінцевих вузлах і вузлах комутації неможливо. Тому для перетворення доменних імен на ІР- адреси (та навпаки) створено так звану систему доменних імен (Domain Name System, DNS).

IP- адреси в Інтернеті

Протокол мережного рівня, який застосовують в Інтернеті, — це протокол IP

версії 4 (IPv4). Далі мова йтиме про адресацію, яку використовують саме у цьому протоколі.

ІР- адреса має довжину 4 байти (октети) і записується у вигляді чотирьох де ситкових чисел, розділених крапками. IP-адресу поділяють на дві логічні частини: старша — номер мережі, молодша — номер вузла в мережі. Завдяки цьому здійснюється передавання пакета в об'єднаній мережі; спочатку аналізується старша частина адреси і лише на останньому етапі, всередині мережі призначення, пакет спрямовується конкретному адресату.

Поділ IP- адреси на номер мережі та номер вузла здійснюється на підставі значень кількох старших бітів IP-адреси. За ними визначається так званий клас мережі. У мережі класу А номер мережі становить 1 октет, а номер вузла — 3 октети. При цьому є всього 126 мереж класу А з номерами від 1 до 126, кожна з яких мо­же містити до 224 - 2 = 16 777 214 вузлів. У мережі класу В для номеру мережі та номеру вузла відведено по 2 октети. У мережі класу С помер мережі займає 3 ок­тети, а номер вузла — 1 (кожна така мережа може містити лише 28 - 2 = 254 вуз­ли). У табл. 15.4 наведено основні характеристики різних класів адрес [113].

Таблиця 15.4. Характеристики IP-адрес різних класів

Ані номер мережі, ані номер вузла не можуть складатися лише з самих нулів або одиниць. Якщо поле номера вузла заповнене одиницями, то такий пакет є ши­рокомовним (рос. — широковещательным, англ. — broadcast); його отримують усі вузли із заданої мережі. Є ще й спеціальні номери мереж. Наприклад, якщо стар­ший октет адреси дорівнює 127, ця адреса (Loopback) вказує на інтерфейс тієї ма­шини, яка відправила пакет. Найпоширеніша з таких адрес — 127.0.0.1, хоча мож­на використовувати й інші. За стандартами Інтернету виділено діапазони адрес для локальних мереж, і пакети з такими адресами за жодних обставин не можна обробляти маршрутизаторами Інтернету. Для мереж класу А — це одна мережа 10.0.0.0, для мереж класу В — 16 номерів мереж від 172.16.0.0 до 172.31.0.0, а у класі С - це 256 мереж від 192.168.0.0 до 192.168.255.0.

Поділ IP- адреси на чотири байти та інтерпретація кожного з них як окремого числа — це лише форма запису, насправді ж IP-адреса — це єдине 32-розрядне двійкове число. Для раціональнішого використання адресного простору замість стандартних визначених класів мереж використовують так звані маски підмереж. Маска має вигляд неперервної послідовності одиниць, які відповідають розрядам IP- адреси, що задають номер мережі, за якою йде неперервна послідовність нулів, що відповідають розрядам IP- адреси, які задають номер вузла. Маску записують так само, як і IP-адресу. Наприклад, для мережі класу С маску записують як 255.255.255.0. Але у масці кількість одиниць не обов'язково має бути кратною 8. Гак, коректною є маска 255.255.240.0 (20 одиниць і 12 нулів). З такою маскою

Клас

Старші біти

Найменший номер мережі

Найбільший номер мережі

Примітка

А

0

1.0.0.0

126.0.0.0

В

10

128.0.0.0

191.255.0.0

С

110

192.0.1.0

223.255.255.0

D

1110

224.0.0.0

239.255.255.255

Групові адреси

Ε

11110

240.0.0.0

247.255.255.255

Зареєстровані

адресу 77.122.125.113 буде інтерпретовано як помер мережі 77.122.112.0 і номер вузла 0.0.13.113, а без цієї маски — як адреса класу А, тобто номер мережі 77.0.0.0 і номер вузла 0.122.125.113. Маски широко застосовують у маршрутизації для структурування мереж і виділення старшої частини адреси, так званого префікса, а також для зменшення об'ємів таблиць і підвищення продуктивності маршрутизаторів.

Нестача простору IP-адрес для Інтернету почала даватися взнаки вже досить давно. Тому в наступній версії протоколу IP, а саме IPv6, адресний простір було радикально розширено, а саму адресу структуровано. Детальніше нові можли­вості протоколу IPv6 розглянуто в розділі 16.

Доменні імена

Тепер розглянемо доменні імена. їх використання пов'язане не лише з особливо­стями сприйняття імен користувачами, яким значно легше запам'ятовувати і ви­користовувати слова, ніж набори чисел. Ще одна перевага доменних імен полягає в тому, що вони утворюють логічно структурований простір імен, за допомогою яких можна отримати інформацію про належність того чи іншого ресурсу Інтер­нету до певної організації або країни.

Доменні імена не завжди однозначно відповідають IP-адресам. Одній ІР - адресі може відповідати кілька різних доменних імен, наприклад, коли різні ресур­си фізично розміщені на одному сервері. Може статися, що одне доменне ім'я відповідає кільком IP-адресам, наприклад, коли для деякого ресурсу здійснюєть­ся розподіл навантаження між кількома серверами.

Доменні імена утворюють ієрархію у вигляді деревоподібної структури. Ко­рінь дерева позначається символом крапки (.). Доменне ім'я містить щонайменше дві символьні частини (які називають мітками). Мітки відокремлюються одна від одної крапками. Ім'я записується від наймолодшої мітки (ліворуч) до найстаршої (праворуч). Найстарша мітка позначає так званий домен верхнього рівня. У сис­темі доменних імен доменом (Domain) називають зону, виділену певній країні, організації тощо. Кожна наступна мітка (справа наліво) позначає домен, ієрар­хічно підпорядкований попередньому. У цьому контексті такий домен називають піддоменом (Subdomain). Загалом структура доменних імен подібна до ієрархіч­ної файлової системи, де кожний каталог може мати свої підкаталоги.

Ієрархічна структура доменних імен відіграє важливу роль у забезпеченні уні­кальності імен в Інтернеті. Кореневим доменом керує центр InterNIC. Домени верхнього рівня призначають для кожної країни (наприклад, ua — для України, ru — для Російської Федерації), а також для певних типів організацій (наприк­лад, com — для комерційних структур, edu — для навчальних закладів, gov — для урядових організацій, org — для некомерційних організацій, net — для органі­зацій, що підтримують мережі). Кожний домен адмініструє певна призначена для нього організація, яка, у свою чергу, розбиває його на піддомени і передає функції та відповідальність за адміністрування цих піддоменів іншим організаціям. Під адмініструванням тут слід розуміти, насамперед, розподіл доменних імен.

Теоретично поділ на піддомени може досягати углиб 127 рівнів, а будь-яка мітка може містити до 63 символів, але загальна довжина повного доменного імені

(Fully Qualified Domain Name, FQDN) разом із точками не може перевищувати 254 символів. На практиці ж реєстратори доменних імен застосовують більш суворі обмеження.

Служба доменних імен

С початку перетворення доменних імен на IP- адреси здійснювалося за допомогою спеціального файлу DHOSTS.TXT, який підтримувався централізовано і копії я кого вручну завантажувалися на кожну машину. Через зростання кількості хостів у Інтернеті такий механізм став неефективним, і на заміну йому прийшла централізована служба доменних імен, DNS.

DNS базується на розподіленій базі відображень доменне ім'я -ІР -адреса. Для кожного домену імен створюється свій DNS-сервер. Він може зберігати відображення імен для всього домену з піддоменами, але найчастіше зберігає лише імена, що знаходяться на наступному за ним (знизу) рівні ієрархії. Відповідальність за піддомени делегується іншим серверам. Для підвищення стійкості систе­ми використовують дублювання серверів. Є 13 розміщених по всьому світі коре­невих серверів, адреси яких ніколи не змінюються.

Запити на відображення імен здійснюються за протоколом DNS типу клієнт- сервер. Цей протокол використовує па серверах TCP- або UDP-порт 53. Тра­диційно запити і відповіді надсилаються у вигляді однієї UDP- дейтаграми. TCP рекомендується використовувати, щоб запобігти підробленню відповіді зловмисниками. Запити бувають двох типів: ітеративні та рекурсивні.

Ітеративні запити здійснюються таким чином. Клієнт здійснює запит до найближчого DNS-сервера (як правило, адреса DNS-сервера задається у параметрах мережного з'єднання). Якщо сервер не знає відповіді на запит, він надсилає від­повідь, яка містить адресу того сервера, до якого слід звернутися з цим запитом. Якщо той сервер також не знає відповіді, він теж надсилає адресу наступного DNS- cepвepa. Якщо сервер відповідає за домен, що не є піддоменом вказаного у запиті домену, він переадресує клієнта до сервера, розташованого рівнем вище в тому самому домені. Зрештою, запит може бути здійснений до одного з корене­вих серверів. Кореневий сервер також може не знати відповіді, але він переадре­сує клієнта у необхідний домен верхнього рівня, а там запит буде переадресовано нижче й нижче за ієрархією, аж доки той не потрапить до сервера, що є авторитет­ним для вказаного у запиті домену.

Рекурсивні запити здійснюються до серверів у тій самій послідовності, що й ітеративні, але у відповідь на рекурсивний запит сервер не переадресовує клі­єнта до інших серверів, а повертає йому остаточну відповідь (IP-адресу або по­відомлення про помилку). У разі рекурсивного запиту від клієнта сервер має взя­ти па себе зобов'язання послідовно здійснювати ітеративні запити або, що також імовірно, передати наступному DNS-серверу рекурсивний запит. Убудовані DNS- клієнти прикладних програм (наприклад, браузерів) здійснюють лише рекурсив­ні запити.

Для прискорення пошуку ІР- адрес DNS- сервери застосовують процедуру кешування відповідей. Тому запит, як правило, не йде далі кеша DNS, який пам'ятає відповіді на запити, що проходили через нього раніше. Записи у кеші

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