DNS

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Протокол DNS (Domain Name Service - служба доменних імен) забезпечує пошук імен хостів, використовуючи розподілену по мережних серверах імен базу даних.

Протокол DNS виконує дві основні функції. Він дозволяє клієнтським комп'ютерам запитувати DNS-сервер про IP-адресу або ім'я якого-небудь хоста в мережі, а також дозволяє робити обмін інформацією між базами даних серверів DNS. У цьому протоколі використовується стандартний формат типу "запит-відповідь", де клієнт посилає пакет запиту, і сервер відповідає або пакетом з інформацією, отриманоюз бази даних, або повідомленням про помилку, у якому вказується причина відмови в обробці запиту. У своїй роботі цей протокол використовує порт 53 і добре відомі протоколи — TCP або UDP. Причому останнім часом UDP став більш розповсюдженим методом транспортування пакетів по мережі Internet. Пакет DNS складається з п'яти полів: заголовка, питання, відповіді, повноважень і поля додаткової інформації.

Формат повідомлень DNS показаний на малюнку.

DNS.jpg

Ідентифікатор - 16-бітове поле для позначення відповідності між запитами і відгуками.

Q - 1-бітовий прапор запиту (query).

Запит - 4-бітовий опис типу повідомлення:

   0 стандартний запит (адреса по імені).
   1 зворотний запит (ім'я за адресою).
   2 запит стану сервера.

A (Authoritative Answer) - 1-бітовий прапор, що показує відгук від уповноваженого (authoritative) сервера імен.

T (Truncation) - відкидання. 1-бітовий прапор, що говорить про відкидання повідомлення.

R - 1-бітовий прапор, який встановлюэться для дозволу запиту рекурсивним шляхом.

V - 1-бітовий прапор підтримки рекурсивного сервісу.

B - 3-бітове поле, зарезервоване для використання в майбутньому (0).

Rcode -

       Код відгуку - 4-бітове поле, що встановлюэться сервером імен для позначення стану запиту:
      0 немає помилок.
      1 неможливо інтерпретувати запит через формальну помилку. 
      2 обробка неможлива через збій на сервері. 
      3 запитане ім'я не існує.  
      4 непідтримуваний тип запиту. 
      5 відмова від виконання запиту.

Лічильник питань - 16-бітове поле, що містить число записів у розділі питань.

Лічильник відповідей - 16-бітове поле, що містить число записів про ресурси в розділі відповідей.

Лічильник Authority - 16-бітове поле, що визначає число записів про ресурси сервера імен у розділі authority (повноваження).

Лічильник доповнень - 16-бітове поле, що визначає число записів про ресурси сервера імен у додатковому розділі.


TCP/IP