belial Опубликовано 28 октября, 2010 · Жалоба Добрый день, у меня возник небольшой вопрос по логике работы DNS а именно При установке на сервере регистраторе доменного имени(например example.com) NS адресов, допустим их 4: ns1.server.com ns2.reserv.com ns3.reserv2.com ns4.reserv3.com на сервере ns1.server.com я создаю зону своего домена example.com где указываю NS севрера для своей зоны, ns1.server.com ns2.server.com ns3.server.com ns4.server.com Вопрос! Когда я делаю nslookup и смотрю какие NS сервера у зоны, что происходит? Мой запрос идёт на один из корнеых DNS, далее какимто образом корневые домены DNS узнают что этот домен есть у моего регистратора, с этого регистратора берётся информация о том, где расположен мой NameServer (в моём случае ns1.server.com) и оттуда полностью берётся зона. Т.е на вопрос какие у моего домена NS сервер он ответит ns1.server.com ns2.server.com ns3.server.com ns4.server.com ? или ответит ns1.server.com ns2.reserv.com ns3.reserv2.com ns4.reserv3.com? Документацию по логике работы к сожалению не нашёл. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ipaddr.ru Опубликовано 28 октября, 2010 · Жалоба Когда регистратор берет с вас деньги, он отправляет запрос на регистрацию домена в реестр. В запросе кроме данных whois указываются в том числе и NS для вашего домена. В результате в вышестоящую зону данные вносятся так, как вы их указали. А цепочка резолвинга выглядит просто: (.) -> .com -> example.com NSset Т.е. в зоне .com содержатся записи NS для вашего домена. Более того, если эти один или несколько из NS для example.com находятся в домене example.com (ns1.example.com), то в зоне .com содержатся также и A/AAAA-записи для ns1.example.com, т.н. glue records. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
belial Опубликовано 28 октября, 2010 · Жалоба Т.е в реестр регистратор отправит данные о серверах, а именно: ns1.server.com ns2.reserv.com ns3.reserv2.com ns4.reserv3.com (те которые я указад на регистраторе) в то время как в зоне на сервере ns1.server.com прописано ns1.server.com ns2.server.com ns3.server.com ns4.server.com и мне по запросу возвратиться то что прописано в зоне: ns1.server.com ns2.server.com ns3.server.com ns4.server.com Если мой сервер ns1.server.com будет не доступен, то будет взята зона с сервера ns2.reserv.com на котором параметры NS: ns2.reserv.com и по запросу о NS будет возвращён только ns2.reserv.com. А весь список NS серверов, которые регистратор отдаёт в реестр в принципе узнать командой nslookup не получиться, только то, что лежит в файле зоны. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ipaddr.ru Опубликовано 28 октября, 2010 (изменено) · Жалоба Резолвер будет посылать запросы, пока не получит ответа с выставленным битом AA (authoritative server). Т.е. если в зоне указаны NS-ы: A,B,C,D - запрос об авторитетной записи NS будет послан на любой из этих серверов. Но вообще несинхронизация зоны - это копание ямы для самого себя. А весь список NS серверов, которые регистратор отдаёт в реестр в принципе узнать командой nslookup не получиться, только то, что лежит в файле зоны. То, что регистратор отдает в реестр - то и лежит в зоне. Посмотрите, например, трассировку запроса на mail.ru: $ dig +trace NS mail.ru ; <<>> DiG 9.6-ESV-R1 <<>> +trace NS mail.ru ;; global options: +cmd . 51218 IN NS f.root-servers.net. . 51218 IN NS l.root-servers.net. . 51218 IN NS h.root-servers.net. . 51218 IN NS a.root-servers.net. . 51218 IN NS g.root-servers.net. . 51218 IN NS j.root-servers.net. . 51218 IN NS e.root-servers.net. . 51218 IN NS d.root-servers.net. . 51218 IN NS m.root-servers.net. . 51218 IN NS b.root-servers.net. . 51218 IN NS i.root-servers.net. . 51218 IN NS c.root-servers.net. . 51218 IN NS k.root-servers.net. ;; Received 228 bytes from 8.8.8.8#53(8.8.8.8) in 9 ms ru. 172800 IN NS e.dns.ripn.net. ru. 172800 IN NS f.dns.ripn.net. ru. 172800 IN NS ns.ripn.net. ru. 172800 IN NS ns2.nic.fr. ru. 172800 IN NS ns2.ripn.net. ru. 172800 IN NS ns5.msk-ix.net. ru. 172800 IN NS ns9.ripn.net. ;; Received 453 bytes from 2001:7fd::1#53(k.root-servers.net) in 10 ms mail.ru. 345600 IN NS ns.mail.ru. mail.ru. 345600 IN NS ns1.mail.ru. mail.ru. 345600 IN NS ns2.mail.ru. mail.ru. 345600 IN NS ns3.mail.ru. mail.ru. 345600 IN NS ns4.mail.ru. mail.ru. 345600 IN NS ns5.mail.ru. ;; Received 235 bytes from 2001:660:3005:1::1:2#53(ns2.nic.fr) in 20 ms mail.ru. 3600 IN NS ns5.mail.ru. mail.ru. 3600 IN NS ns.mail.ru. mail.ru. 3600 IN NS ns1.mail.ru. mail.ru. 3600 IN NS ns2.mail.ru. mail.ru. 3600 IN NS ns3.mail.ru. mail.ru. 3600 IN NS ns4.mail.ru. ;; Received 228 bytes from 94.100.178.64#53(ns4.mail.ru) in 59 ms 8.8.8.8 - это мой сервер, прописанный в сетевых настройках. Дальше запрос отправлялся до тех пор, пока не был получен авторитетный ответ. Изменено 28 октября, 2010 пользователем ipaddr.ru Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 28 октября, 2010 · Жалоба http://www.netlab.linkpc.net/download/software...l/DNSLookup.exe Покажет вам все ответы по мере резолвинга имени в ип. Когда я делаю nslookup и смотрю какие NS сервера у зоны, что происходит?Мой запрос идёт на один из корнеых DNS, далее какимто образом корневые домены DNS узнают что этот домен есть у моего регистратора, с этого регистратора берётся информация о том, где расположен мой NameServer (в моём случае ns1.server.com) и оттуда полностью берётся зона. Т.е на вопрос какие у моего домена NS сервер он ответит ns1.server.com ns2.server.com ns3.server.com ns4.server.com ? или ответит ns1.server.com ns2.reserv.com ns3.reserv2.com ns4.reserv3.com? Вся документация - RFC начиная чуть ли не с 8хх или что то в начале тысячи, именно резолвинг с тех пор не менялся, только фичи добавляли. Резолвер может: - послать запрос на другой сервер, с флагом RD (запрос рекурсии), и если тот сервер допускает такие запросы, то он сам всех кого надо опросит и отдаст конечный результат - самому резолвить В начале опрашиваются сервера из списка, до первого ответа одного из них. Если эти сервера не поддерживают рекурсию или клиент не запрашивал и не отвечают за зону к которой относится запрос, то они почти всегда отдают список корневых днс серверов (если опрашивали не сами корневые сервера). Корневые сервер, отвественные за зону "." знают списки днс серверов отвественных за первый уровень, типа com, ru, org и пр. Дальше резолвер обращается к ним а они перенаправляют его запросы к следующим серверам. По пути бывает что в ответе со списком днс серверов нет их адресов, и тогда резолверу приходится резолвить их имена в адреса, а потом возвращаться к первоначальному запросу. Бывает что из списка днс серверов один не отвечает, другой возвращает ошибку или вообще перекидывает обратно на корневые - образуя петлю, бывает что из 3-6 только 1-2 дают то что нужно... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
belial Опубликовано 29 октября, 2010 · Жалоба http://www.rozhuk.org.ru/download/software...l/DNSLookup.exe-полезная утилита! Спасибо за подбробные ответы, с теорией вроде как прояснилось. Но вопрос про соответствие списка NS на регистратороре домена и списке NS в зоне домена - остаётся открытым, по тестам(разных чужих доменов) я вижу что перечень NS серверов на регистраторе домена и в зоне домена одинаков, т.е администраторы всегда их делают одинаковыми Чем черевато то, что перечень будет разным, и можно ли прописать список NS на регистраторе домена и не прописывать список NS в зоне. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 29 октября, 2010 · Жалоба Сам писал, сам пользуюсь :) В общем то без разницы что у вас написано, до тех пор пока резолверы вас не спрашивают и получают то что им нужно. Соответственно нужно чтобы те сервера что прописаны у регистратора отдавали всё что нужно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
ipaddr.ru Опубликовано 29 октября, 2010 · Жалоба можно ли прописать список NS на регистраторе домена и не прописывать список NS в зоне. Нельзя. В этом случае на запрос NS-ов для вашего домена никогда не будет получен авторитетный ответ. И все остальные запросы (A, AAAA, MX, TXT) посылать будет некуда. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...