Що таке делегація DNS?


22

У відповіді на моє попереднє запитання я помітив ці рядки:

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

Що таке делегація DNS? Як це працює? Повне пояснення гіпотетичної області abc.comбуло б корисним.

Відповіді:


24

У фізичному плані делегування дуже схоже на те, як менеджер делегує відповідальність за виконання завдань своєму персоналу. Результати однакові, проте в процесі було залучено більше однієї людини. Керівник отримує запит на роботу, передає відповідальність іншому члену персоналу і або працівник, або керівник повертається з результатами роботи. Це все за умови, що робота, яку виконує співробітник, насправді правильна і це те, про що попросив оригінальний запитувач (або що запитувач насправді попросив щось, що було дійсно в першу чергу!).

З делегацією DNS це дуже схоже. Коли comсервери імен запитують місце для пошуку повноважень зони example.com, вони часто делегують цю роботу окремим серверам імен (адже в переважній більшості випадків вони фактично делегують відповідь іншим серверам імен). Коли ви вперше реєструєте домен, скажімо, наш example.comдомен, це часто робиться через третю сторону, яку називають реєстратором. Зазвичай практика реєстраторів розміщувати на своїх серверах імен для делегування та обслуговувати зону за замовчуванням з цих серверів імен. Ця зона по замовчуванням включає в себе основні вимоги для обслуговування цієї зони в Інтернеті (в SOA, NSі Aзапис , пов'язану з цим NS записи).

Очевидно, що якщо ви самі хочете взяти під контроль повноваження домену, вам доведеться попросити реєстратора замість цього домену своєму серверу імен. Різні реєстратори посилаються на це в процесі по-різному: "зміни серверів імен", "використання сторонніх DNS", "Додати записи клею" тощо. Механізм під ним залишається колишнім. Ви надаєте, як правило, 2 або більше "імен серверів імен" (наприклад, ns0.example.comі ns1.example.com) та IP-адреси, за якими ns0і ns1знаходяться. Потім вони обробляють запит, і делегація спрямовується від вашого реєстратора до наданих вами серверів імен.

З технічної точки зору, це на даний момент , ви повинні забезпечити ваші сервера імен і працює, які обслуговують домен example.com, з мінімумом в SOA(початок запису повноважень), 1 або більше NSзаписи і Aзапису (ІПС) , що ці NS записи вирішено з:

example.com.   IN SOA ns0.example.com. hostmaster.example.com. ( 10 3600 900 604800 7200 )
           IN NS  ns0.example.com.
           IN NS  ns1.example.com.
ns0        IN A   192.0.2.8
ns1        IN A   192.0.2.44

(Я вибрав декілька загальних довільних значень для значень SOA, імен для записів NS та IP-адрес, на які вирішуються сервери імен). Усі вони повинні відображати зону, для якої ви обслуговуєте.

Ця служба DNS повинна бути видимою з будь-якого місця в Інтернеті, а не підлягати фаєверляції (тобто порт 53 udp та вхідний tcp повинні бути дозволені). Також ваш постачальник послуг також не повинен блокувати цей порт (що деякі провайдери блокують вхідний трафік, призначений для цих портів).

З огляду на моє початкове порівняння, то comнеймсервери є менеджерами DNS, які делегують зону example.comна сервера імен (співробітники) , щоб зробити роботу з надання базової інформації про зону ( SOA, NS, A). Ви також можете обслуговувати будь-які додаткові записи, такі як записи поштового сервера MXабо можуть бути Aзаписами для вашої www.example.comадреси.

Якщо цей сервер імен не виконує роботу, повертає неправильні результати або має сторонню сторону (брандмауер / провайдер), що блокує роботу, у вас не буде робочого DNS і перерви делегації.

Це може бути також варто відзначити , що домен не повинен бути делегована серверів імен в тому ж домені, так ns0.example.netі ns0.example.orgобидва могли бути дійсними сервера імен , які могли б example.comїм делеговані. За умови, що обидва ці сервери імен обслуговували example.comдомен.


дякую @Dav Sloan, за пояснення такою простою мовою
Нішан

2
+1. Я також додам, що в останньому випадку, коли сервер імен не є частиною одного домену, немає необхідності в "клеїть" запис, а просто звичайний запис ns в реєстраторі / gTLD. Це часто бентежить людей.
GnP

+1 у відповідь! Клей @GnP потрібен лише тоді, коли існує кругова залежність. З тих пір, коли сервер імен не є частиною одного домену, немає кругової залежності, і тому клей не потрібен? Чи правильний цей висновок?
Crazy Psychild

5

Делегування з точки зору DNS означає, що сервер імен у вищевказаній ієрархії відповість на кожен запит у вашому домені у NSвідповідь.

Тож у випадку, якщо abc.comви зробите це:

$ dig com.
=>
com.        896 IN  SOA a.gtld-servers.net.  ...

Потім запитайте цей сервер імен спеціально для abc.com:

$ dig abc.com @a.gtld-servers.net.
=>
;; AUTHORITY SECTION:
abc.com.    172800  IN  NS  sens01.dig.com.
abc.com.    172800  IN  NS  sens02.dig.com.
abc.com.    172800  IN  NS  orns01.dig.com.
abc.com.    172800  IN  NS  orns02.dig.com.

Записи клею означають, що крім імен хостів ваших серверів імен, .comорган також знає про їх IP-адреси.

Якщо налаштовано записи клею, наведений вище запит також дасть A/AAAAвідповіді для кожного із серверів імен.


5

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

Звуки, складні, але саме для цього ми використовуємо "повноцінне доменне ім'я" (FQDN). Якщо ви визначите хост mymailserverу своєму домені abc.com., він має FQDN mymailserver.abc.com.. За допомогою цієї інформації я можу вирішити це ім'я на правильну IP-адресу.

Вам не потрібно створювати всіх хостів форми <hostname>.abc.com., ви також можете розгалужуватися за своїм бажанням. servers.abc.com.Наприклад, ви можете мати і розмістити всі свої сервери mymailserver.servers.abc.com.. Ви можете це зробити, оскільки домен abc.com.був делегований вам. Це означає, що ви маєте право запитувати будь-який домен та доменне ім’я, яке закінчується abc.com.. Тому ви можете визначити хости та підрозділи філій для вмісту ваших сердець.

Делегування означає, що власник домену забезпечує повний контроль над філією комусь іншому. Так само, як власник com.делегованого вам піддомену abc.com., ви можете розгалужувати піддомени, наприклад, def.abc.com.і делегувати його мені. У межах свого домену я можу робити / визначати все, що хочу / подобається, без того, щоб просити або розповідати вам або навіть com.власникам.

Як це працює? Ви просто помістіть частину інформації у свої записи DNS, де написано "для отримання інформації про def.abc.comзапит сервера DNS hisdnsserver.def.abc.com.". Звичайно, для запиту цього сервера потрібно знати IP-адресу hisdnsserver.def.abc.com.. Ось для чого і записи клею. Ви фактично поміщаєте 2 частини інформації, одну - щойно заявлену, а іншу - IP-адресу hisdnsserver.def.abc.com.. Таким чином ви надаєте кому-небудь запитання щодо def.abc.com.достатньої кількості інформації, щоб вказати їм на повноваження цього субдомену.

Чому програми запитували вас def.abc.com.в першу чергу? Оскільки ви є владою abc.com.та надаєте com.запитувачу дві інформації про yourdnsserverта abc.com....


+1 для закінчення "." у FQDN. що помилково часто опускається.
nass
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.