DNS-сервер

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

DNS-сервер — програма, призначена для відповідей на DNS-запити за відповідним протоколом. Також DNS-сервером можуть називати хост, на якому запущено відповідну програму.

Типи DNS-серверів

За виконуваними функціями DNS-сервери поділяються на декілька груп. Залежно від конфігурації, конкретний сервер може відноситися до декількох типів;

  • авторитетний DNS-сервер — сервер, що відповідає за свою зону.
    • Головний або первинний сервер (в термінології BIND) — сервер, що має право на внесення змін в окремі зони. Зазвичай для зони буває тільки один головний сервер. У випадку Microsoft DNS-сервера і його інтеграції з Active Directory, головних серверів може бути декілька (так як реплікація змін здійснюється не засобами DNS-сервера, а засобами Active Directory, за рахунок чого забезпечується рівноправність серверів і актуальність даних);
    • Підлеглий або вторинний сервер, що не має права на внесення змін в дані зони і отримує повідомлення про зміни від головного сервера. На відміну від головного сервера їх може бути (практично) необмежена кількість. Підлеглий так само є авторитетним сервером (і користувач не може розрізнити головний і підлеглий сервери, різниця з'являється тільки на етапі конфігурування/внесення змін до налаштувань зони);
  • Кеш-сервер DNS — сервер, який обслуговує запити клієнтів, (отримує рекурсивний запит, виконує його за допомогою нерекурсивних запитів до авторитетних серверів, або передає рекурсивний запит DNS-серверу, що стоїть вище в ієрархії);
  • Локальний DNS-сервер; використовується для обслуговування DNS-клієнтів, які працюють на локальній машині. Фактично, це різновид кешувального DNS-сервера, сконфігурованого для обслуговування локальних додатків;
  • Перенапрямний DNS-сервер (англ. forwarder внутрішній DNS-сервер); сервер, що перенаправляє отримані рекурсивні запити кеш-серверу, що стоїть вище в ієрархії, у вигляді рекурсивних запитів. Використовується переважно для зниження навантаження на сервер кешу DNS;
  • Кореневий DNS-сервер — сервер, який є авторитетним у кореневій зоні. Загальновживаних кореневих серверів у світі всього 13, їх доменні імена знаходяться в зоні root-servers.net і називаються a.root-servers.net, b.root-servers.net, …, m.root-servers.net. У певних конфігураціях локальної мережі можлива ситуація налаштування локальних кореневих серверів;
  • Реєстраційний DNS-сервер. Сервер, що приймає динамічні оновлення від користувачів. Часто поєднується з DHCP-сервером. У Microsoft DNS-сервер при роботі на контролері домену сервер працює в режимі реєстраційного DNS-сервера, приймаючи від комп'ютерів домену інформацію про відповідність імені та IP комп'ютера і оновлюючи відповідно дані зони домену;
  • DNSBL-сервер (сервер з чорними списками адрес та імен). Формально, такий сервер не входить в ієрархію DNS, однак використовує той же механізм і протокол для роботи, що і DNS-сервери.

Види DNS-запитів

Прямий запит

Прямий (forward) запит — запит на перетворення імені (символьної адреси) хоста в числову IP-адресу.

Зворотний запит

Зворотний (reverse) запит — запит на перетворення IP-адреси в ім'я хоста.

Режим "View"

Деякі сервери підтримують можливість роботи в різних режимах для різних сегментів мережі. У Bind цей режим називається «view». Наприклад, сервер може для локальних адрес (наприклад, 10.0.0.0/8) віддавати локальні адреси серверів, для користувачів зовнішньої мережі — зовнішні адреси. Також сервер може бути авторитетним для заданої зони тільки для вказаного діапазону адрес (наприклад, у мережі 10.0.0.0/8 сервер оголошує себе авторитетним для зони internal, при цьому для зовнішніх адрес у відповідь на запит імені із зони internal буде віддаватися відповідь «невідомий»).

Використовувані порти

Усі DNS-сервери за стандартом RFC 1035 працюють на 53 порту TCP і UDP. При відправленні запитів ранні версії BIND використовували 53 порт, новіші поводять себе як DNS-клієнти, використовуючи вільні незареєстровані адреси.

Див. також

DNS-сервери
  • BIND
  • NSD
  • Dnsmasq

Література

  • RFC 1034, Domain Names—Concepts and Facilities, P. Mockapetris, The Internet Society (November 1987)
  • RFC 1035, Domain Names — Implementation and Specification, P. Mockapetris, The Internet Society (November 1987)
  • Wu, Hao; Dang, Xianglei; Wang, Lidong; He, Longtao (2016). Information fusion‐based method for distributed domain name system cache poisoning attack detection and identification. IET Information Security (англ.). 10 (1): 37—44. doi:10.1049/iet-ifs.2014.0386. ISSN 1751-8717.
  • Paul Hoffman; Andrew Sullivan; Kazunori Fujiwara (January 2019). DNS Terminology. IETF. BCP 219. Retrieved 17 December 2015.
  • Yakov Rekhter; Susan Thomson; Jim Bound; Paul Vixie (April 1007). Dynamic Updates in the Domain Name System (DNS Update). IETF. DOI:10.17487/RFC2136. RFC 2136. Retrieved 17 December 2015.

Посилання

Ця стаття потребує додаткових посилань на джерела для поліпшення її перевірності. Будь ласка, допоможіть удосконалити цю статтю, додавши посилання на надійні (авторитетні) джерела. Зверніться на сторінку обговорення за поясненнями та допоможіть виправити недоліки.
Матеріал без джерел може бути піддано сумніву та вилучено.
(Червень 2023)
Ця стаття є заготовкою. Ви можете допомогти проєкту, доробивши її. Це повідомлення варто замінити точнішим.