Это канонический вопрос о DNS клеевых записях.
Что именно (но кратко) является DNS-клеевой записью? Зачем они нужны и как они работают?
Это канонический вопрос о DNS клеевых записях.
Что именно (но кратко) является DNS-клеевой записью? Зачем они нужны и как они работают?
Ответы:
Склеенная запись - это термин для записи, обслуживаемой DNS-сервером, который не является полномочным для зоны, чтобы избежать условия невозможных зависимостей для зоны DNS.
Скажем, у меня есть зона DNS для example.com
. Я хочу иметь DNS - сервера that're хостинга авторитетную зоны для этого домена , так что я могу реально использовать его - добавление записи для корневого домена, www
, mail
и т.д. Таким образом, я поставил имя сервера в регистрации делегировать они - это всегда имена, поэтому мы вставим ns1.example.com
и ns2.example.com
.
Здесь есть хитрость. Серверы TLD будут делегировать DNS-серверам в записи whois, но они находятся внутри example.com
. Они пытаются найти ns1.example.com
, спросите .com
сервера и получить называют обратно ... ns1.example.com
.
Что делает склеивание записей, так это позволяет серверам ДВУ отправлять дополнительную информацию в своем ответе на запрос для example.com
зоны - отправлять IP-адрес, который также настроен для серверов имен. Это не авторитетно, но это указатель на авторитетные серверы, позволяющий разрешить цикл.
Я попросил объединить этот ответ с дублирующим вопросом, так как существующие ответы не объясняют роль этого ADDITIONAL
раздела.
Чтобы увидеть, как это работает, введите:
dig +trace +additional google.com SOA
Это отследит полномочия сервера имен, начиная с корневых серверов ( +trace
). Добавление +additional
также покажет вам ADDITIONAL
раздел каждого ответа DNS-сервера. Обычно большинство людей думают о DNS в терминах QUESTION
и ANSWER
разделах, но ADDITIONAL
также играют важную роль: если сервер имен знает ответы на любые вопросы, связанные с ответом, он может преимущественно предоставить эти ответы в ADDITIONAL
разделе, не требуя дополнительные запросы от вашего клиента.
Обратите внимание, что авторитетные серверы имен для google.com
находятся в домене, для которого они являются полномочными. ( ns1.google.com
, ns2.google.com
И т.д.)
Когда вы просите сервер имен предоставить список серверов имен для домена, они часто будут предоставлять список A
записей -типа (IP-адресов) в ADDITIONAL
разделе, а не только NS
ответы -типа: они называются склеивающими записями , используемыми для предотвращения циклического зависимостей. В этом случае эти A
записи обслуживаются серверами имен TLD (.com, .org и т. Д.) На основе IP-адресов, которые кто-то предоставил регистратору DNS, ответственному за домен. Обычно их можно изменить, войдя в веб-интерфейс администратора, который они вам предоставляют.
(отказ от ответственности: AAAA
записи, содержащие адреса IPV6, также могут быть предоставлены как часть клея, но я упустил это для простоты.)
+trace
. Вот почему это там.
dig +trace
тестах добавление +additional
не меняет вывод вообще)
В википедии есть точное (и краткое) объяснение .
Цитировать:
Круговые зависимости и клеевые записи
Серверы имен в делегациях идентифицируются по имени, а не по IP-адресу. Это означает, что разрешающий сервер имен должен выполнить другой DNS-запрос, чтобы выяснить IP-адрес сервера, на который он ссылался.
Если имя, данное в делегировании, является поддоменом домена, для которого предоставляется делегирование, существует циклическая зависимость. В этом случае сервер имен, предоставляющий делегирование, должен также предоставить один или несколько IP-адресов для доверенного сервера имен, упомянутого в делегировании. Эта информация называется клеем., , ,
Например, если официальным сервером имен для example.org является ns1.example.org, компьютер, пытающийся разрешить www.example.org, сначала разрешает ns1.example.org. Поскольку ns1 содержится в example.org, для этого сначала необходимо разрешить example.org, который представляет циклическую зависимость.
Чтобы разорвать зависимость, сервер имен для домена верхнего уровня org включает в себя клей вместе с делегированием для example.org. Клеевые записи - это записи адресов, которые предоставляют IP-адреса для ns1.example.org. Средство распознавания использует один или несколько из этих IP-адресов для запроса одного из доверенных серверов домена, что позволяет ему выполнять DNS-запрос.
Пройдя поиск навсегда и прочитав много о клейких записях и все еще не понимая, что они были или как их можно сделать, я наконец нашел ответ, и он очень прост.
Как я понимаю, никакой волшебной дополнительной информации, отправляемой откуда-то, именно так она и работает.
Допустим, ваш домен - example.com, и вы хотите использовать свои собственные серверы имен ns1.example.com и ns2.example.com, вам нужно как минимум два DNS-сервера.
Чтобы это работало сейчас, вам нужно, чтобы владелец домена верхнего уровня поместил следующие записи в свой DNS.
example.com NS ns1.example.com
example.com NS ns2.example.com
ns1.example.com A 192.0.2.10
ns2.example.com A 192.0.2.20
Эти две записи А являются связующими записями, и они должны находиться в верхнем домене, в данном случае .com, и не все регистраторы могут сделать это за вас.
Если это не так, пожалуйста, поправьте меня. Я просто подумал, что пытаюсь объяснить простым способом для тех, кто не может найти правильный ответ.
sub.example.com
делегирование в зону ns1.sub.example.com
и ns2.sub.example.com
в example.com
нее. Серверы имен для com
делегируются example.com
от себя и не могут предоставить клей никому из своих детей.
sub.example.com
-> example.com
-> ns1.example.com
-> example.com
-> ns1.example.com
... и и так далее