3.4. Сервери DHCP і DNS

 

DHCP (англ. Dynamic Host Configuration Protocol – протокол динамічної конфігурації вузла) – це мережний протокол, що дозволяє комп’ютерам автоматично одержувати IP-адресу й інші параметри, необхідні для роботи в мережі TCP/IP. Для цього комп’ютер звертається до спеціального серверу, під назвою сервер DHCP. Мережевий адміністратор може задати діапазон адрес, що розподіляють серед комп’ютерів. Це дозволяє уникнути ручного налаштування комп’ютерів мережі й зменшує кількість помилок. Протокол DHCP використовується в більшості великих мереж TCP/IP.

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

Стандарт протоколу DHCP був прийнятий у жовтні 1993 року. Остання версія протоколу (березень 1997 року) описана в RFC 2131. Нова версія DHCP, призначена для використання в середовищі IPv6, названа DHCPv6 і визначена в RFC 3315 (липень 2003 року).

 

Режими DHCP

Протокол DHCP працює у відповідності клієнт-сервер. Під час запуску системи комп’ютер, який є DHCP-клієнтом, відправляє в мережу запит на отримання IP-адреси. DHCP-сервер відповідає і відправляє повідомлення-відповідь, яка містить IP-адресу і деякі інші конфігураційні параметри. При цьому сервер DHCP може працювати в різних режимах, включаючи:

1)        ручне призначення статичних адрес;

2)        автоматичне призначення статичних адрес;

3)        автоматичне розподілення динамічних адрес.

 

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

 

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

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

ü     Авторитативний DNS-сервер – сервер, що відповідає за будь-яку зону:

o      Мастер або первинний сервер (в термінології BIND) – сервер, що має право на внесення змін у дані зони. Зазвичай для зони буває тільки один мастер-сервер. У випадку Microsoft DNS-сервера і його інтеграції з Active Directory, мастер-серверів може бути декілька (так як реплікація змін здійснюється не засобами DNS-сервера, а засобами Active Directory, за рахунок чого забезпечується рівноправність серверів і актуальність даних).

o      Слейв або вторинний сервер, що не має права на внесення змін у дані зони і отримує повідомлення про зміни від мастер-сервера. На відміну від мастер-сервера їх може бути (практично) необмежена кількість. Слейв так само є авторитативним сервером (і користувач не може розрізнити мастер і слейв, різниця з’являється тільки на етапі конфігурування/внесення змін до налаштувань зони).

ü     Кешуючий 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-клієнти, використовуючи вільні незареєстровані адреси.