@duo456

Как узнать IP-адрес DNS-сервера, который использует сам провайдер?

Как узнать IP-адрес DNS-сервера, который использует сам провайдер? Вернее какой IP-адрес у настоящего DNS-сервера, где происходит хранение, регистрация доменов и т.д., т.е. не кэширующего DNS-сервера?
Например, ведь у провайдера DNS-сервер всего лишь кэширует DNS-записи полученные от другого такого же кэширующего DNS-сервера, и эта цепочка в итоге приводит к настоящему DNS-серверу, хранящему настоящую базу DNS-записей (по своей зоне конечно, например зона ".ru"). Может я ошибаюсь, прошу подсказать как тогда устроена система.
Судя по википедии, я понял, что есть 13 корневых DNS-серверов, управляются 13-ю организациями. При этом они дали права организации ICANN управлять DNS-записями. А ICANN передал эти права организации IANA. А IANA передала права 5 региональным регистраторам (RIR). Один из них (RIPE.NCC) отвечает за Европу(Россию в т.ч.). RIPE.NCC передал права локальному регистратору (LIR) РосНИИРОС. РосНИИРОС имел права до 2001. Потом обладателем прав стал "Координационный центр национального домена сети Интернет" который стал передавать права аккредитованным регистраторам.
Но сами DNS-записи то храняться в 13 корневых DNS-серверах (и в их slave-серверах). Но я в этом не уверен. Потому что некоторые говорят что корневые DNS-сервера просто хранят информацию о зонах и закрепленными за ними другими DNS-серверами.
Значит может эти другие DNS-сервера и есть DNS-сервера самих RIR? (про это информацию не нашел, прошу подсказать кто знает).
Если так, то как узнать DNS-сервер регионального регистратора RIR RIPE.NCC? на их сайте инфу не нашел.
  • Вопрос задан
  • 3566 просмотров
Решения вопроса 1
saboteur_kiev
@saboteur_kiev Куратор тега Компьютерные сети
software engineer
Например, ведь у провайдера DNS-сервер всего лишь кэширует DNS-записи полученные от другого такого же кэширующего DNS-сервера, и эта цепочка в итоге приводит к настоящему DNS-серверу, хранящему настоящую базу DNS-записей (по своей зоне конечно, например зона ".ru")


Нет, там нет длинной цепочки.
ДНС сервер или использует вышестоящий сервер для запросов, если у него нет закешированного ответа, то он не ждет пока там отработает "цепочка", а сразу обращается к "рутовым серверам" (точнее серверам конкретной зоны), чтобы выяснить какой нейм сервер отвечает за конкретный домен.

При регистрации домена, наверх (в сервер отвечающий за зону) отправляется запись про NS сервера, которые будут отвечать за этот конкретный домен - именно этим занимается регистратор. То, что многие регистраторы еще и предлагают свои NS сервера для хранения записи это уже другой вопрос. Ты можешь свои собственные NS сервера для этого использовать.

Если ты обращаешься к DNS серверу провайдера, а тот не знает ответа, он может обратиться к вышестоящему серверу, если так настроено (может быть какой-то централизованный DNS сервер со блок-списком или дополнительными внутренними зонами, например, или какой-то аналог), или может сразу обратиться к серверу соответствующей зоны, который вернет данные про NS сервер на котором уже лежит файл зоны нужного домена со всеми его поддоменами и записями, у него напрямую и выясняешь данные и кешируешь их согласно этой же записи.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
vesper-bot
@vesper-bot
Любитель файрволлов
nslookup -type=ns domain.com

dig +trace domain.com

Провайдеры чаще всего не используют собственных DNS-серверов с данными, а имеют настроенный кэширующий прокси с черным списком для роскомпозора и интерфейсом к системе биллинга, скажем, чтобы отдавать условно айпи 10.1.1.1 всем, у кого нет денег на счету. Данные о доменах обычно (не факт, но для клиента DNS-хостинга выглядит как истина) хранятся на серверах регистратора доменов, и сервер, который хранит записи для конкретного домена, это лучшее, что можно достать по поводу провайдера или целевой организации.
Ответ написан
Комментировать
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Какие DNS-сервера ответственны за зону RU вы можете увидеть сами:
nslookup -type=ns ru
И будет вывод, что за зону RU ответственны a.dns.ripn.net, b.dns.ripn.net, d.dns.ripn.net, e.dns.ripn.net и f.dns.ripn.net. Именно эти сервера хранят (и отдают) информацию, какой DNS сервер ответственен за например домен второго уровня YANDEX.RU, находящийся очевидно в зоне RU.
Спрашиваем их об этом:
nslookup -type=ns yandex.ru a.dns.ripn.net
Ответом будет список DNS серверов, ответственных уже за сами догадываетесь какой домен... И так далее по цепочке.
Так можно и вашего провайдера DNS-ы узнать.
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
Я не думаю что у провадера - именно кеширующий. Ведь пров может ести какую-то свою политику. Банить неугодные
сайты и перенаправлять пользователя на региональные ip зеркал для балансировки.

В чем смысл искать корневой DNS? Во первых ты его сам можешь указать в настройках своих сетевых
карт или роутера. Кроме того, зная различния в выдаче ответов их 13 корневых - ты методом исключения
можешь определить какой на самом деле используется провадером. Вроде алгоритм прост. Не?
Ответ написан
Комментировать
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Сразу возникает два вопроса:
- читал ли RFC на протокол DNS и понимаешь ли принципы работы DNS?
- нахрена? Если думаешь таким образом обойти ограничения РКН - то нифига не выйдет - провайдер проверяет любой пакет на порт 53, куда бы ты его ни направил.

Именно поэтому появился DoH и именно поэтому так советуют DNS направлять через VPN
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы