DNS-сервер

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

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-сервери

Література[ред. | ред. код]

  • 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.

Посилання[ред. | ред. код]