Як перевірити запис DNS-клею?


24

Привіт. Щойно я створив DNS-сервер для свого домену example.org з двома серверами імен ns1.example.org та ns2.example.org. Я спробував встановити запис клею для ns1 та ns2 у мого реєстратора.

Здається, це працює зараз, коли я викопую example.org, але коли я роблю whois example.org, він містить список ns1.example.org і ns2.example.org, але не їх IP-адресу, яку слід встановити як клей-запис .

Тож мені цікаво, як я перевіряю наявність клею? Я це роблю з чимось? Я бачив .com і .net whois записи, які мають як доменне ім'я, так і IP-адресу серверів імен, відрізняється .org? Який правильний спосіб перевірити це?

Спасибі.

Відповіді:


44

Записи клею існують лише у батьківській зоні доменного імені.

Отже, що стосується вашого example.orgдоменного імені, спочатку знайдіть .orgсервери імен:

% dig +short org. NS
a0.org.afilias-nst.info.
a2.org.afilias-nst.info.
b0.org.afilias-nst.org.
b2.org.afilias-nst.org.
c0.org.afilias-nst.info.
d0.org.afilias-nst.org.

Потім, для стількох з них, як вам здається, тестуйте, явно запитайте ці сервери імен для NSзаписів для вашого домену:

% dig +norec @a0.org.afilias-nst.info. example.org. NS

Вам слід повернути правильний список NSзаписів у розділі "ВІДПОВІДЬ". На будь-яких серверах імен, які правильно налаштували клей, ви повинні побачити, що записи клею A(та / або AAAA) відображаються у розділі "ДОПОМОГА РОЗДІЛ".


Для мого домену додатковий розділ містить запис про клей, а також кілька інших записів NS, які не є частиною клею, який я встановив у реєстрі. Як мені це сказати?
Калімо

7

Щоб перевірити, чи встановлено запис GLUE:

dig +trace @a.root-servers.net ns0.nameserverhere.com

Якщо налаштування GLUE, ви повинні побачити запис, який закінчується на:

“Recevied XXX bytes from x.GTLD-SERVERS.NET.”

Також є сайти, які роблять це за вас, наприклад http://www.intodns.com/


Спасибі, інтдонс працював чудово, отримуючи всі зелені кліщі на клеї та NS речі. Я не отримую команду dig. Я отримав отримане повідомлення. Зокрема, я отримав таке: "Отримано 433 байти з 192.33.4.12 # 53 (c.root-servers.net) за 183 мс." Але потім закінчується так: "час з'єднання вичерпано; жодного сервера не вдалося досягти" Я також отримую подібні повідомлення, коли використовую випадкове число для ns частини, наприклад, ns384289.example.org.

9
що копати діагностичний тест зовсім неправильно ...
Альнітак

Я знаю, що це старе, але дуже корисно. Я скопіював результати в sed / awk, щоб порівняти кореневий та сервер імен для виявлення невідповідних записів NS.
jeffatrackaid

4

Ось невеликий скрипт оболонки, який реалізує відповідь Alnitak:

#!/bin/sh
S=${IFS}
IFS=.
for P in $1; do
  TLD=${P}
done
IFS=${S}

echo "TLD: ${TLD}"
DNSLIST=$(dig +short ${TLD}. NS)
for DNS in ${DNSLIST}; do
  echo "Checking ${DNS}"
  dig +norec +nocomments +noquestion +nostats +nocmd @${DNS} $1 NS
done

Передайте ім'я домену як параметр:

./checkgluerecords.sh example.org

3

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

dig +trace +additional example.com


Якщо ідея полягає в тому, щоб перевірити обґрунтованість ланцюга делегацій, ви, ймовірно, захочете побачити і авторитетні NSзаписи, у цьому випадку:

dig +trace +additional example.com NS

0

Ви також можете використовувати whois, де реєстр підтримує це, безпосередньо перевірити наявність клею для даного сервера імен. Наприклад, для перевірки одного з серверів імен serverfault.com:

whois ns-860.awsdns-43.net.

Для більш короткої відповіді:

whois ns-860.awsdns-43.net. | grep "No match\|IP" | xargs

Примітка. Це, безумовно, буде працювати для серверів імен у просторі імен .net та .com, але, мабуть, не для більшості інших реєстрів.


1
whois насправді не є правильним інструментом для запиту на наявність клею. digє більш доречним.
sendmoreinfo

Я не згоден: ви можете безпосередньо перевірити наявність клею за допомогою whois (тобто, не потребуючи домену, який був делегований на цей сервер імен), але тепер я перевірив, що це не так з .org TLD. Моя відповідь правильна для .net / .com, але це не те, що було в первісному питанні, тому я вважаю, що це не гарна відповідь на це питання.
користувач3166580

Я також думаю, що ключовим моментом до оригінальної публікації є те, що якби клей не існував у батьківській зоні організації, ви б не змогли делегувати домен серверам імен. тобто тому, що ви не можете мати безглузді сервери імен-bailiwick.
користувач3166580

Ваша відповідь правильна ні для TLD. whoisне має нічого спільного з операційним DNS і не є інструментом, який можна побачити клеї. Ви можете використовувати whois для пошуку серверів імен, що існують у регістрах, але той факт, що сервер імен зберігається на об’єкті тут, не означає, що він використовується доменом, у якому він є bailiwick, і це єдиний випадок, коли його потрібно опублікувати як клей.
Патрік Мевзек
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.