Dns сервер как работает: Как работает DNS (domain name system)?
Как работает DNS (domain name system)?
Что такое DNS
DNS (domain name system) — это система, обеспечивающая работу привычных нам доменных имен сайтов. Связь между устройствами в сети Интернет осуществляется по IP адресам, например: «192.64.147.209». Однако, запомнить IP адреса сложно, поэтому были придуманы удобные для человека доменные имена, например: «google.com».
Компьютер / сервер не хранит таблицу соответствия доменов и их IP адресов. Точнее, не хранит всю таблицу, а временно запоминает данные для часто используемых доменов. Когда в браузере вводится домен сайта, компьютер автоматически узнает его IP адрес, и отправляет по нему запрос. Этот процесс называется «разрешение адреса домена» (domain resolving).
Разберемся, из чего состоит система DNS, и как она работает.
Как работает DNS
Система доменных имен состоит из следующих компонентов:
Иерархическая структура доменных имен:
- Доменные зоны верхнего уровня (первого уровня) – например: «ru», «com», или «org». Они включают в себя все доменные имена, входящие в эту зону. В любую доменную зону может входить неограниченное количество доменов.
- Доменные имена (доменные зоны второго уровня) – например: «google.com» или «yandex.ru». Т.к. система доменных имен является иерархичной, то «yandex.ru» можно также назвать поддоменом вышестоящей зоны «ru». Поэтому, правильнее указывать именно уровень домена. Однако, на практике, доменную зону любого уровня называют просто «доменом».
- Поддомены (доменные зоны третьего уровня) – например: «api.google.com» или «mail.yandex.ru». Могут быть доменные зоны 4, 5 уровней и так далее.
Обратите внимание, что «www.gооgle.com» и «google.com» — это, фактически, разные домены. Надо не забывать указывать А-записи для каждого из них.
DNS сервер или NS (name server) сервер – поддерживает (обслуживает) доменные зоны, которые ему делегированы. Он непосредственно хранит данные о ресурсных записях для зоны. Например, что сервер, на котором находится сайт «example.ru», имеет IP адрес «1.1.1.1». DNS сервер отвечает на все запросы, касательной этих доменных зон. Если ему приходит запрос о домене, который ему не делегирован, то он спрашивает ответ у других DNS серверов.
DNS записи (ресурсные записи) – это набор записей о доменной зоне на NS сервере, которые хранят данные необходимые для работы DNS. На основании данных в этих записях, DNS сервер отвечает на запросы по домену. Список записей, и их значение, вы можете найти ниже.
Корневые DNS сервера (на данный момент их 13 во всем мире) хранят данные о том, какие DNS сервера обслуживают зоны верхнего уровня.
DNS сервера доменных зон верхнего уровня — хранят информацию, какие NS сервера обслуживают тот или иной домен.
Для того, чтобы узнать IP адрес, домена компьютер / сервер обращается к DNS-серверу, который указан у него в сетевых настройках. Обычно, это DNS сервер Интернет провайдера. DNS сервер проверяет делегирован домен ему или нет. Если да, то сразу отвечает на запрос. Если нет, то запрашивает информацию о DNS сервере, обслуживающем этот домен, у корневого сервера, и затем у сервера доменных зон верхнего уровня. После этого, непосредственно делает запрос на NS сервер, обслуживающий этот домен, и транслирует ответ вашему компьютеру / серверу.
Кэширование данных используется на всех устройствах (компьютерах, северах, DNS серверах). То есть, они запоминают ответы на последние пришедшие к ним запросы. И когда приходит аналогичный запрос, они просто отвечают то же самое, что и в предыдущий раз. Например, если вы в браузере открыли сайт google.com первый раз после включения, то компьютер сделает DNS запрос, а при последующих запросах будет брать данные, которые ему были присланы DNS сервером в первый раз. Таким образом, для популярных запросов не надо каждый раз проходить всю цепочку и генерировать запросы к NS серверам. Это значительно снижает нагрузку на них, и увеличивает скорость работы. Однако, как результат, обновление данных в системе DNS происходит не сразу. При изменении IP адреса домена, информацию об этом будет расходиться по сети Интернет от 1 до 24 часов.
Регистрация/выделение доменов
У каждой доменной зоны первого уровня есть своя организация, которая устанавливает правила выделения доменов и обеспечивает работу этой зоны. Например, для доменных зон RU, SU и РФ – это Координационный центр национального домена сети Интернет https://cctld.ru. Эти организации устанавливают правила работы и технические требования к регистраторам доменов.
Регистраторы доменов – это компании, которые непосредственно регистрируют новые домены в рамках доменной зоны первого уровня для конечных клиентов. Организуют техническое взаимодействие с реестром доменных имен. В их личном кабинете владелец домена настраивает, какой DNS сервер будет поддерживать домен.
Администратор домена (владелец) – лицо, которому непосредственно принадлежат права на доменное имя. Он может управлять доменом, от него регистратор принимает заявки на внесение изменений.
Делегирование домена – указание для него DNS серверов, которые будут его обслуживать.
Основные DNS записи
Существуют следующие основные DNS (ресурсные) записи:
А – содержит информацию об IPv4 адресе хоста (сервера) для домена. Например, 1.1.1.1.
ААА – содержит информацию об IPv6 адресе хоста (сервера) для домена. Например, 2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d.
MX – содержит данные о почтовом сервере домена. При этом указывается именно имя почтового сервера, например mail.example.com. Т.к. у домена может быть несколько почтовых серверов, то для каждого из них указывает приоритет. Приоритет задается числом от 0 до 65535. При этом «0» — это самый высокий приоритет. Принято по умолчанию для первого почтового сервера указывать приоритет «10».
TXT – дополнительная информация о домене в виде произвольного текста. Максимальная длина 255 символов.
SRV – содержит информацию об имени хоста и номере порта, для определенных служб / протоколов в соответствии с RFC 2782 http://www.rfc-editor.org/rfc/rfc2782.txt. Содержит следующие поля:
- _Service._Proto.Name ( Пример: _jabber._tcp.jabber ), где:
- Service: название службы (пример: ldap, kerberos, gc и другие).
- Proto: протокол, при помощи которого клиенты могут подключиться к данной службе (пример: tcp, udp).
- Name: имя домена, в котором размещена данная служба.
- Приоритет – также как для MX записи указывает приоритет для данного сервера. Задается числом от 0 до 65535. При этом «0» — это самый высокий приоритет.
- Вес – Относительный вес для распределения нагрузки между серверами с одинаковым приоритетом. Задается целым числом.
- Порт – номер порта, на котором располагается служба на данном сервере.
- Назначение — доменное имя сервера, предоставляющего данную службу.
NS – имя DNS сервера, поддерживающего данный домен.
CNAME (каноническое имя хоста / canonical name) – используется для перенаправления на другое доменное имя. Например, имя сервера изменилось с example.com на new.com. В таком случае в поле «Alies» для записи cname надо указать — example.com, а в поле «Canonical name» — new.com. Таким образом, все запросы на example.com автоматически будут перенаправлены на new.com.
SOA – базовая запись о домене. В ней хранится само имя домена и время жизни данных о домене — TTL. TTL (time-to-live) определяет какой период времени DNS сервер получив информацию о зоне будет хранить ее у себя в памяти (кэшировать). Рекомендуемое значение 86400 – 1 день. Значение указывается в секундах.
Что такое DNS-сервер и для чего он нужен ⚛️
Работа с доменами невозможна без знания принципов управления ими и понимания что такое DNS-сервер. Это позволит избежать возможных проблем с доступом к сайту или быстрее устранять их в случае возникновения.
Что представляет собой DNS
Для начала, следует рассмотреть понятие DNS и описание его работы. DNS — это аббревиатура от Domain Name System («Системы доменных имен»), главной задачей которой является хранение и управление информацией о доменных зонах.
Открыть любой сайт в интернете можно, введя в строке браузера его числовой IP-адрес или символьное имя. Человеку более удобен второй вариант, поэтому необходим сервис-посредник, который будет автоматически преобразовывать символы из названий доменных имен в IP-адреса в цифры. Для этого и предназначена Система доменных имен.
По аналогии с телефонным справочником, можно назвать доменное имя (URL-адрес) «контактом», а IP-адрес — «номером абонента». Если дать определение простыми словами, DNS — это сама телефонная книга со всеми сохраненными в ней контактами.
Главное отличие физической телефонной книги от ее интернет-аналога заключается в том, что контакты в последней сохраняют не обычные пользователи Сети. «Номера» в системе DNS регистрируют владельцы сайтов, имеющие права на определенный домен или домены.
Зачем нужны DNS-серверы
Система доменных имен функционирует не в виртуальном пространстве, а установлена и работает на определенных физических устройствах. Информация о доменах хранится в форме DNS-записей на множестве специальных компьютерах с соответствующим программным обеспечением. Каждое такое устройство называется сервер доменных имен, а также NS-сервер или DNS-сервер.
Назначение DNS-сервера
- Хранение информации о доменах и предоставление ее по запросам;
- Кэширования DNS-записей из остальных DNS-серверов.
Классификация серверов
Учитывая функции DNS-сервера, их можно поделить на несколько видов. При этом, сервер-преобразователь или «резолвер» (от англ. Resolver, «преобразователь»), непосредственно конвертирующий доменные имена в IP-адреса, может одновременно принадлежать к двум и более типам.
Ниже представлены определения основных типов DNS-серверов.
- Авторитативный — DNS-сервер, который отвечает за определенную зону.
- Первичный (Мастер) — сервер, уполномоченный вносить изменения в зону. Как правило, в зоне находится только один первичный сервер.
- Вторичный (Слейв) — сервер без права применять изменения в зоны, получающий от «мастера» только уведомления об изменениях. В зоне может находиться неограниченное количество слейвов.
- Кэширующий — отвечает за обслуживание пользователей. Он принимает рекурсивные запросы, а затем обрабатывает их с использованием нерекурсивных запросов или передает на вышестоящий сервер. Большинство серверов, работающих непосредственно с пользователями, является именно кэширующими.
- Перенаправляющий (Прокси, Балансирующий) — кэширующий сервер, который не отдает данные напрямую, а перенаправляет запросы на связанную с ним цепь кэширующих серверов. Благодаря этому перераспределяется общая нагрузка и уменьшается вероятность даунтайма.
- Корневой (Рут) — авторитативный сервер в корневой зоне. В мире расположено 13 таких серверов, их домены находятся в зоне root-servers.net.
- Регистрирующий — принимает информацию об обновлениях от пользователей.
Кэширование
Чтобы понимать, как работает DNS-сервер, нужно детально рассмотреть, как в нем происходит процесс кэширования.
При обращениях к любому сайту (даже при переходе на внутренние страницы), серверам необходимо проверять связь домена и IP-адреса. Однако, посещаемый ресурс может храниться довольно далеко, поэтому постоянные запросы на первичный DNS-сервер могут сильно снизить скорость загрузки страниц.
Решить проблему со скоростью обработки запросов позволяет ближайший к компьютеру пользователя DNS-сервер, который становится кэширующим. На нем сохраняется информация о ранее отправленных запросах на IP-адреса. При следующем обращении на один и тот же сайт, данные по его адресу будут поступать оперативно, за счет их наличия в кэше.
Однако, для кэширования нужен источник, с которого будут поступать данные о сайте. Им являются первичные и вторичные DNS-сервера. Это означает, что при регистрации домена владелец сайта должен указывать адрес DNS-сервера, где будет сохранена информация о домене.
Как правило, для работы домена достаточно сохранить свои данные на двух DNS-серверах — первичном и вторичном. Хотя, гораздо лучше указывать большее их количество. Это повысит надежность работы веб-адреса, поскольку при отсутствии доступа к одному DNS-серверу, можно будет обработать запрос на следующем.
Как работает DNS-сервер
Рассмотрим более подробно принцип работы DNS-сервера на примере сайта example.com. Все доменные имена и IP-адреса здесь приведены только для примера.
- Пользователь вводит адрес нужного сайта (www.example.com) в адресную строку браузера и отправляет запрос.
- Запрос, содержащий искомое доменное имя, отправляется серверу-преобразователю имен DNS (резолверу), указанному в настройках операционной системы компьютера для поиска IP-адреса.
- Преобразователь выполняет перенаправление запроса на корневой DNS-сервер, который отдает в ответ сервер зоны доменов верхнего уровня (.com), ответственный за искомый домен.
- Преобразователь еще раз перенаправляет запрос на сервер зоны доменов верхнего уровня (.com), и получает в ответ адрес конкретного NS-сервера, к которому приписан искомый домен (ns1.eternalhost.net).
- Ответственный сервер получает запрос резолвера и отдает IP-адрес (192.0.2.44), соответствующий доменному имени в первоначальном запросе.
- После получения необходимого IP-адреса, преобразователь имен передает это значение браузеру. Вдобавок, он выполняет кэширование полученных данных о сопоставлении доменного имени с IP-адресом, чтобы при последующих аналогичных запросах быстрее на них отвечать.
- С браузера отправляется новый запрос уже по полученному IP-адресу. Веб-сервер example.com возвращает страницу на браузер, после чего она открывается.
Следует понимать, что информация о соответствии доменного имени IP-адресу хранится на сервере имен определенное время и обновляется с определенной периодичностью. Эти параметры могут отличаться, в зависимости от того, как настроены NS-записи и работает DNS.
Когда у веб-ресурса меняется IP-адрес или сервер имен, в базе DNS-сервера может оставаться устаревшая информация, до момента обновления кэша. До этого, при отправлении запроса с именем сайта, пользователям будет открывать старый IP-адрес. Поэтому при переезде ресурса рекомендуется настроить переадресацию.
Что такое DNS-серверы и зачем они используются в интернете
Здравствуйте, дорогие читатели блога iklife.ru.
Сегодня я расскажу о том, что такое DNS-серверы. Мы поговорим про данную технологию и разберемся в том, как она работает. Именно с помощью этой системы обеспечивается работа всего интернета. И каждый вебмастер обязан знать значение этой аббревиатуры. Итак, давайте начинать!
Как работает DNS
DNS-серверы – очень важная составляющая всей системы, благодаря которой работает интернет. Грубо говоря, это система, которая отвечает за домены – те самые адреса сайтов, которыми мы пользуемся ежедневно. Данную систему можно сравнивать с учетной книгой или справочником, где расписаны адреса жителей определенного города или улицы.
Само понятие расшифровывается как доменная система имен. Эта самая система связывает домены и IP-адреса серверов, на которых хранится какая-то информация.
Интернет состоит из огромного количества серверов (компьютеров), которые объединены между собой. Каждый сервер имеет свой собственный IP-адрес.
IP состоит из определенного набор цифр, который представляет собой идентификатор сервера. Каждый такой сервер имеет именно статичный, то есть стабильный IP-адрес.
Допустим, если вам необходимо перейти на сайт по какому-то URL, то вы не будете для этого вводить IP-адрес сервера, на котором хранятся файлы этого ресурса. Вам достаточно будет просто ввести определенное известное доменное имя (URL вида site.ru), после чего ваш браузер сам перейдет к нужному серверу и откроет нужный сайт. За этот процесс и отвечает система DNS. Она должна направлять пользователей к нужному месту. Своеобразный навигатор от мира интернета.
Домены обычно состоят из букв, цифр и символов. Каждый из них уникален и состоит из самого имени и доменной зоны. Например, site.ru, где site – это имя или название, а ru – зона. Для использования того или иного домена вы должны его сначала арендовать.
После того как вы заплатите определенную сумму регистратору, домен перейдет в ваше пользование на какой-то промежуток времени. Вам нужно будет прописать DNS к этому домену, чтобы он был связан с серверами, где расположены ваши сайты.
Если аренда закончится, и вы не продлите ее, то домен можно будет снова зарегистрировать. Новый арендатор сможет прописать там другие DNS-серверы, и тогда домен будет ссылаться на новый сайт.
К слову, в мире поисковой оптимизации история домена имеет довольно важное значение. Если ранее домен был арендован для какого-то сайта, то будьте уверены, что первое время поисковые системы будут относиться к новому проекту так, как они относились к старому.
Иными словами, если ранее на каком-то домене был хороший трастовый проект с неплохими поведенческими факторами, то новый арендатор может легко получить трафик и хорошее отношение от поисковиков. Если же все было наоборот, то сайт может очень плохо продвигаться в ПС.
Подведем небольшие промежуточные итоги:
- Интернет состоит из огромного количества серверов, которые объединены между собой и имеют собственные уникальные числовые адреса (IP или MAC).
- DNS (Domain Name System) используются для более удобного взаимодействия между пользователями и этими серверами. Каждый домен может быть связан с каким-то сервером, пользователю нужно знать имя домена, но не сам числовой IP-адрес.
- С течением времени к домену могут присваиваться разные IP-адреса. То есть если сейчас определенное доменное имя ведет на один сайт, то через год оно может быть свободно или вести уже на совершенно другой.
- DNS – это всего лишь система, к которой обращаются браузеры, когда пользователь вводит URL. После того как человек вводит какой-то домен определенного вида в адресную строку, браузер обращается к этой системе и получает от нее IP-адрес нужного сервера.
Я надеюсь, что вы поняли суть описанного выше. Все достаточно просто и понятно.
Кстати говоря, системы управления доменными именами существовали не всегда. Ранее, когда интернет только-только появился, для связки между доменом и адресом сервера использовался специальный файл, который хранился на каждом компьютере. Этот файл имел название hosts, и в нем прописывались все домены и связанные с ними IP-адреса.
Когда человек пытался перейти по какому-то домену через браузер, делался запрос в этот самый файл hosts, и если введенное доменное имя там было, то браузер переадресовывался к IP, который также был указан там.
Когда еще не было DNS, подобные файлы могли содержать в себе тысячи записей с доменными именами и нужными адресами. Естественно, подобный подход не был удобен, и тогда люди придумали DNS. С помощью этой системы люди могли связывать доменные имена и нужные адреса. Hosts уже не был нужен.
Однако сейчас он все равно есть на каждом ПК. Обычно в хосте находятся записи о каких-то специальных доменах вроде сервера обновлений или локального адреса компьютера.
Кстати говоря, даже сейчас, когда человек начинает вводить доменное имя в строку адреса браузера, этот самый браузер сначала проверяет файл hosts на предмет наличия в нем нужной записи. Если записи нет (что случается практически всегда), браузер начинает подключаться к ближайшему DNS-серверу. И вот уже там он находит нужную запись с адресом. Далее, браузер подключается к адресу и выдает пользователю необходимое содержимое.
Файл hosts в приоритете, сначала идет обращение именно к нему. Если в файле обнаружится нужная запись, то система не будет подключаться к удаленному DNS.
И именно таким образом злоумышленники могут подменивать адреса сайтов. Они просто заносят в файл запись с известным доменом, но фальшивым IP-адресом с помощью вирусов. Пользователь переходит по ссылке, она ведет его на тот адрес, который указан в файле. Ни к каким серверам браузер не подключается и просто выдает содержимое, указанное в hosts.
Если злоумышленники захотят обмануть пользователя, то они просто сделают точную копию нужного сайта, но с незначительными изменениями. Например, заменят поля с паролями, где теперь уже будет отсутствовать шифрование. С помощью этой махинации они смогут украсть пароли пользователя, а тот ничего не сможет заподозрить. Подобное явление называется фишингом, и его нужно остерегаться.
Чтобы не допустить этого, вы должны почаще проверять свой файл hosts. Там не должно быть лишних записей. Если там есть что-то лишнее, особенно с доменами, которыми вы часто пользуетесь, можно смело стирать эти записи, потому что они подвергают вашу личную информацию опасности.
Еще лучше, если вы будете пользоваться антивирусами, которые при каждой проверке будут проверять содержимое файла и в случае какой-то активности со стороны вирусов будут быстро все блокировать и приводить в порядок.
DNS и интернет
То, что я описывал выше, – всего лишь очень простой пример, где было несколько переменных: пользователь и его браузер, DNS-сервер, который распределяет домены и адреса, и некий удаленный сервер, на котором хранится информация. В реальности же эта схема может быть намного сложнее, потому что на весь мир не может быть одного DNS-сервера. Их тысячи, миллионы, а может, еще больше. Все они связаны между собой и постоянно обмениваются информацией.
Если какой-то пользователь хочет подключиться к сайту, то его компьютер сначала обращается к ближайшему DNS-серверу, чтобы тот сделал переадресацию к корневому – тому, где хранятся данные о других серверах (их, напомню, очень много и все они определенным образом связаны).
Корневой сервер может сделать еще несколько запросов, прежде чем он доберется до нужного DNS, где и будет храниться сам искомый адрес. Схема действительно довольно сложная, потому что сам интернет очень обширен, можно сказать, безграничен.
Также при обмене данными очень важную роль могут играть NS-серверы хостинга, на котором расположен тот или иной сайт. NS-серверы могут отдавать информацию об IP-адресах всех сайтов, которые есть на хосте. Хостинги могут содержать в себе колоссально огромное количество сайтов. Порой это количество исчисляется сотнями и тысячами. К каждому такому сайту ведет собственная ниточка, которую и проводят NS-серверы хостинга.
Рассмотрим простой пример с iklife.ru. Когда вы вводите этот адрес в строку своего браузера, происходит примерно это.
Рассмотрим этот процесс более подробно.
- Сначала ваш компьютер или любое другое устройство подключается к DNS-серверам провайдера. Туда он передает домен, в нашем случае это iklife.ru.
- Далее, этот домен передается от DNS провайдера к корневому серверу, где уже, в качестве выдачи, будут NS-адреса хостинга, к которым был привязан домен. Об этом я уже рассказывал, домен можно привязать к NS-серверам.
- Далее, домен передается к этим самым NS-серверам, которые мы получили от корневого DNS-сервера. Уже от NS мы получаем IP-адрес нужного нам сервера.
- Этот самый адрес передается к компьютеру, после чего этот компьютер подключается к серверу. От сервера передается информация в виде содержимого сайта или чего-то еще.
Примерно так работает вся эта система, когда мы говорим про работу веб-ресурсов. В принципе, ничего сложного здесь нет. Достаточно просто понять суть.
Домены и NS-серверы
Теперь я чуть подробнее расскажу об NS-серверах и доменах, которые к ним привязываются.
В интернете существует огромное количество различных доменных имен. Причем мы говорим именно про занятые. Если говорить, вообще, про все возможные комбинации, то число будет просто колоссально огромным. Можно придумать практически бесконечное количество различных комбинаций исходя из того, что в домене могут быть буквы, цифры, символы и т. д. Также есть доменные зоны, их очень много, поэтому количество комбинаций увеличивается.
Свободные домены, которые еще никем не были зарегистрированы, не имеют привязанного NS-сервера. При обращении к свободному домену выскакивает ошибка. Как правило “DNS Error”. Уже занятые доменные имена привязаны к NS-адресам, которые могут принадлежать какому-то большому хосту.
У хостинга одни и те же NS-адреса, поэтому все домены, которые привязаны к этому хосту, имеют одни и те же NS. Исходя из схемы выше мы поняли, что распределение IP-адресов идет уже непосредственно на серверах хостинга. Именно на тех самых NS, к которым мы привязываем домен.
Обычно это представляет собой внутреннюю распределительную систему, процесс работы которой мы рассматривать не будем. Поговорим лучше о тех случаях, когда какой-то домен привязывается к NS хостинга, но владелец не спешит подтверждать свое владение уже внутри хоста.
При таком исходе любой человек, который также имеет аккаунт на хостинге, может присвоить этот домен себе. Со мной уже подобное случалось, для регистрации домена я использовал Reg.ru, там я прописал NS одного известного хостинга, но в самом хостинге я не сделал привязку домена к своему аккаунту. Это сделал кто-то другой. Он настроил редирект на какой-то сомнительный проект.
Таким образом, с помощью DNS-серверов мошенник смог временно выкрасть мой домен. Почему временно? Все просто: я мог зайти на сайт регистратора и просто сменить NS на что-то другое. И у него все перестало бы работать, после чего я мог снова проделать эту операцию и привязать домен уже к своему аккаунту.
То есть если вы при регистрации домена просто пропишете NS своего хоста, то это еще не гарантирует, что этот самый домен будет привязан к нужному веб-ресурсу. Уже внутри самого хостинга вы также должны проделать ряд определенных манипуляций, чтобы NS могли отправлять пользователей по нужному IP-адресу.
После регистрации домена, если вы уже выбрали хостинг, но еще не создали там аккаунт, не прописывайте DNS сразу. У мошенников есть специальные парсеры, которые мониторят все домены, которые привязаны к NS крупного хостинга, но еще не присвоены к какому-то аккаунту.
Если вы регистрировали домен внутри хостинга, то он будет привязан к вашему аккаунту и нужным адресам автоматически. Но у вас могут возникнуть трудности с переносом сайта на другой хостинг. Придется делать много лишних движений, которые не совсем обоснованы.
Как сменить NS-серверы
Теперь я расскажу о том, как сменить NS при смене хоста. В качестве примера мы будем рассматривать регистратора Reg.ru. Но думаю, что данная инструкция будет актуальна и для любого другого регистратора, ведь интерфейс у них похожий, поэтому трудностей возникнуть не должно.
Для начала вам необходимо перейти в личный кабинет. Далее, в список доменов, после чего навести курсор на NS-серверы и кликнуть по ним. Выскочит окно, где будут перечислены NS, к которым привязано доменное имя на данный момент.
Вам нужно кликнуть по кнопке “Изменить”, после чего вас сразу же перекинет к окну редактирования адресов.
Как видите, у вас здесь есть выбор. Вы можете кликнуть по одной из трех первых строк, чтобы автоматически прописать DNS Reg.ru. Если вам необходимо отвязать домен от нынешнего хостинга, вы можете на время привязать его к бесплатным DNS регистратора. Сделать это можно при помощи этих трех строк.
Первая строка просто привяжет ваш домен к заглушке. При переходе по URL пользователей будет кидать на пустую заглушку с минимальной информацией.
Следующая строка привяжет ваше доменное имя к виртуальному хосту Reg.ru. Если вы хотите использовать данную функцию, то рекомендую сразу кликнуть по этой строке.
Третья привяжет ваш домен к DNS от более продвинутых и мощных вариантов хостинга. Использовать их нужно только в случае, если вы захотите работать с данным провайдером и размещать там свои ресурсы.
Также вы можете указать свои DNS-серверы. Появятся два поля, куда необходимо будет ввести произвольные адреса. Этот вариант используется наиболее часто, потому как многие пользователи работают с другими виртуальными хостингами.
Просто вставьте два адреса, после чего нажмите на кнопку “Готово”. Если используется больше двух адресов, то с помощью специальной кнопки “Добавить DNS-сервер” вы сможете добавить дополнительные поля. Также вписываем все нужные адреса, после чего нажимаем на кнопку.
Процесс смены DNS не такой быстрый, как хотелось бы. После того как вы сохраните настройки, должно пройти еще примерно 24 часа, после чего все нужные изменения будут окончательно приняты. До этого момента, если вы будете переходить по адресу, вас будет кидать либо на старый сайт, либо выскочит ошибка.
Кстати говоря, DNS должны обновляться на стороне провайдера. Если для открытия ресурса с только что измененными DNS-адресами вы будете использовать прокси или VPN, велика вероятность, что домен сразу же перекинет вас на новый сервер или сайт.
Но большая часть пользователей все равно будет испытывать проблемы с подключением к сайту с только что обновленными DNS. Поэтому учитывайте этот момент, если решите изменить DNS.
Если вы регистрировали домен через хостинг, то для переноса вы можете также изменить NS-серверы в панели управления. Однако в этом случае администрирование домена все равно будет происходить через админку хостинга. Перенос доменного имени к другому регистратору будет лучшим вариантом в этом случае.
Заключение
Я постарался простыми словами рассказать, что такое DNS и для чего он нужен. Надеюсь, что эта статья дала ответы на все ваши вопросы, и теперь вы понимаете принцип работы интернета чуть больше.
Понимание этой темы очень важно, особенно в свете последних событий. В России хотят создать автономный интернет, и вот как раз DNS-серверы будут играть тут ключевую роль. Российское правительство хочет создать собственные узлы, которые будут подконтрольны только ему.
Это значит, что все DNS-серверы будут контролировать входящий и исходящий трафик. Хорошо это или плохо – решайте сами. С помощью этой статьи вы сможете понимать суть этого законопроекта чуть больше. На этом все, хорошего дня!
Что такое DNS: гайд по технологии
Чтобы попасть на нужный сайт в интернете, мы вбиваем в строку браузера его доменное имя. Например, если набрать mcs.mail.ru, вы попадете на сайт нашей облачной платформы. Но доменное имя сайта — не его настоящий адрес. На самом деле адрес сайта состоит из чисел и называется IP-адресом.
Вам не нужно знать его, чтобы открыть нужную интернет-страницу, потому что работает DNS. Давайте разберем принцип работы DNS и посмотрим, что это за технология.
DNS — что это такое?
Служба доменных имен (DNS, domain name system) — это стандартный протокол, который позволяет пользователям получать доступ к веб-сайтам, используя удобочитаемые адреса. Как телефонная книга позволяет найти имя контакта и узнать его телефонный номер, так и DNS позволяет ввести адрес веб-сайта и автоматически определить его IP-адрес, то есть уникальный идентификатор конкретного устройства (сервера) в компьютерной сети.
Без DNS рухнул бы интернет — люди не могли бы получить доступ к интернет-серверам через понятные URL-адреса, то есть ссылки. Чтобы попасть на конкретный сайт, пришлось бы запоминать и вводить последовательность чисел IP-адреса, которая, к тому же, иногда меняется, в отличие от URL. То есть служба Domain Name System необходима для сопоставления понятных людям имен сайтов с числами, понятными компьютерам.
Например, доменное имя сайта mcs.mail.ru преобразуется в IP-адрес 95.163.254.192 — это 32-битный формат IPv4. Также IP-адреса могут быть в другом формате, например: 2002: 6814: 30b6: 0: 0: 0: 0: 0 — это более новый 128-битный формат IPv6.
Протокол DNS позволяет нескольким доменным именам соответствовать одному IP-адресу — это можно использовать для виртуального хостинга, когда несколько сайтов обслуживаются с одного хоста. Также одному доменному имени может соответствовать множество IP-адресов, чтобы распределить нагрузку на несколько серверов.
Каждый раз когда вы подключаетесь к локальной сети, интернет-провайдеру или Wi-Fi, модем или роутер шлет конфигурацию сети на ваше устройство, включая адреса одного или нескольких DNS-серверов.
Что такое DNS-серверы
Это серверы, которые хранят информацию о том, какому IP-адресу какое доменное имя соответствует — что-то вроде физической телефонной книги, только вместо имени и номера телефона там записаны доменные имена и IP-адреса. В интернете таких серверов много.
Предположим, что вы или кто-то другой захотели разместить свой сайт в интернете. Сначала надо придумать и зарегистрировать доменное имя (коротко — домен). Но для работы сайта этого недостаточно: регистратору также нужно доменное имя DNS-сервера, на котором будет храниться информация о вашем домене и его IP-адресе. Этот DNS-сервер станет полномочным сервером имен для вашего сайта и первичным источником данных о его адресе для DNS-системы, где «записывается» путь к нему.
Часто регистраторы доменных имен и интернет-провайдеры предлагают использовать свои DNS-серверы за определенную плату (услуга DNS-хостинга). Также эту услугу можно получить в облаке, если разместить там свой сайт, приложение или другой сервис.
Из чего состоит служба DNS и какова роль DNS-серверов
Назначение DNS-серверов не только в хранении информации о соответствии IP-адресов и доменных имен. Они также могут кэшировать (то есть сохранять) IP-адреса, запрошенные пользователем ранее.
Например: сайт, который вы посещаете, географически расположен далеко от вас. И где-то есть такой же удаленный от вас DNS-сервер, на котором хранится информация о доменном имени и IP-адресе этого сайта, его полномочный сервер имен. Если все время обращаться за этим IP-адресом к удаленному DNS-серверу, загрузка сайта будет занимать много времени. Чтобы решить такую проблему, информацию о часто посещаемых сайтах сохраняет ближайший к вашему компьютеру DNS-сервер, как правило, он находится у вашего интернет-провайдера. В результате другие пользователи, которые обращаются к этому же адресу через этот же DNS-сервер, будут получать IP-адрес уже из его кэша, это гораздо быстрее.
То есть запрос, который вы вводите в строку браузера, сначала отправляется на ближайший DNS-сервер. Если в кэше нужного IP-адреса нет, он перенаправляет запрос дальше — к вышестоящим DNS-серверам. Они передают запрос, пока он не попадет на первичный DNS-сервер сайта, где хранится нужный IP-адрес.
Возврат IP-адреса хоста в ответ на запрос доменного имени называют преобразованием его доменного имени в IP-адрес. Когда все работает хорошо, этот процесс происходит менее чем за секунду.
Информация об IP-адресах тех сайтов, куда вы заходили, может храниться не только на ближайшем DNS-сервере, но и в кэше вашего браузера или операционной системы. Это позволяет быстрее получать ответ на запрос.
По мере роста интернета первоначальный стандарт IP-адресов — протокол IPv4, который допускает только до 4,3 миллиарда IP-адресов, заменяется на протокол IPv6, который поддерживает до 3.4×1038 IP-адресов. DNS-серверы все чаще возвращают IP-адреса в формате IPv6.
Как работает DNS: посмотрим, что происходит с вашим запросом
Дальше мы немного углубимся в детали. Давайте представим, что вы ввели в браузер запрос mcs.mail.ru/cloud-servers. Этот адрес состоит из нескольких частей, с каждой из которых происходит отдельная история:
- .ru — имя домена верхнего уровня;
- mail.ru — доменное имя;
- mcs.mail.ru — поддомен;
- /cloud-servers — страница на поддомене.
Посмотрим, какой путь этот запрос может пройти.
- Сначала браузер смотрит, нет ли нужного соответствия в его кэше. Если нет — смотрится кэш операционной системы. Если нет и там — придется обращаться к DNS-серверу.
- Сначала запрос попадает на ближайший DNS-сервер. Если в его кэше также нет нужной информации, этот DNS-сервер последовательно обращается к вышестоящим DNS-серверам.
- Первым ближайший DNS-сервер обращается на корневой сервер DNS — это сервер, который знает, где хранятся данные для имен доменов верхнего уровня: ru, com и других. У него он узнает адрес сервера имен домена верхнего уровня, на котором хранятся данные о .ru.
- Теперь наш ближайший DNS-сервер запрашивает у сервера имен домена верхнего уровня .ru информацию о том, где искать данные о доменном имени сайта — в нашем случае mail.ru: то есть получает адрес его полномочного сервера имен.
- Наконец, наш ближайший DNS-сервер узнает у первичного сервера адрес домена и поддомена сайта, в нашем случае mcs.mail.ru. Этот первичный DNS-сервер знает нужный IP-адрес и отдает его.
- Наконец, страницу на поддомене (в нашем случае …/cloud-servers) можно найти уже на самом сервере, который нашелся по IP-адресу, соответствующему доменному имени.
В итоге браузер получил ответ, пользователь видит веб-страницу. Теперь основная задача DNS-сервера выполнена.
Основы работы со службой DNS (domain name system)
Общая информация
В этой статье рассмотрены необходимые для практического применения базовые аспекты функционирования DNS.
DNS (Domain Name System — система доменных имен) представляет собой распределенную систему хранения и обработки информации о доменных зонах. Она необходима, в первую очередь, для соотнесения IP-адресов устройств в сети и более адаптированных для человеческого восприятия символьных имен. Предоставление информации об IP-адресах хостов по символьному адресу — не единственная задача DNS. Система работает с разными типами ресурсных записей, позволяющими реализовывать весьма широкий круг задач: переадресация между доменными именами, балансировка нагрузки между хостами, привязка специфических сервисов (напр., эл. почты) к домену.
Система доменных имен является одной из фундаментальных технологий современной интернет-среды, так как информация об IP-адресе запрашиваемого узла — обязательное условие получения ответа на любой интернет-запрос. Но IP-адрес представляет собой числовое значение вида «1.23.45.67», неподходящее для комфортного восприятия человеком. К тому же основной принцип распределения IP-адресов в сети — уникальность. Важно и то, что сетевой адрес — не самый устойчивый параметр. Он может изменяться (напр., при смене хоста, обслуживающего запрашиваемый узел, смене хостинг-провайдера, и т.п.). Все перечисленные особенности делают систему навигации по сетевым адресам сложной для человека.
DNS обеспечивает преобразование запрашиваемого клиентом символьного имени домена в IP-адрес (адреса) обслуживающего эту доменную зону сервера (серверов). Изначально, до разрастания сети интернет, адреса преобразовывались согласно содержимому файла «hosts», составлявшегося централизованно и автоматически рассылавшегося на каждую из машин в сети. По мере роста глобальной сети такой метод перестал оправдывать себя — появилась потребность в новом механизме, которым и стала DNS, разработанная в 1983 году Полом Мокапетрисом.
Ключевыми характеристиками DNS являются:
- Распределенность хранения и управления — каждый DNS-сервер обязан хранить информацию только по делегированным ему доменам, а ответственность за различные узлы дерева доменных имен несут разные лица
- Кэширование данных — DNS-сервер может временно хранить некоторое количество информации о неделегированных ему доменах для уменьшения уровня общей нагрузки
- Иерархическая структура — узел, ответственный за доменную зону, может самостоятельно делегировать нижестоящие узлы другим DNS-серверам
- Резервирование — хранение и обработка информации об одних и тех же узлах обычно обеспечивается несколькими DNS-серверами, изолированными физически и логически. Такой подход обеспечивает доступность информации даже при сбое одного или нескольких узлов.
Иерархия и делегирование доменных имен
Домен представляет собой именованную ветвь в дереве имен, включающую в себя сам узел (напр., домен первого уровня «.com»), а также подчиненные ему узлы (напр., домен второго уровня «example.com», домен третьего уровня «mail.example.com» и т.д.). Для обозначения иерархической принадлежности доменных имен принято использовать понятие «уровень» — показатель положения узла в дереве доменов. Чем ниже значение уровня, тем выше иерархическое положение домена
- «.» — домен нулевого уровня
- «.ru» — домен первого (верхнего) уровня
- «example.com» — домен второго уровня
- «mail.example.com» — домен третьего уровня
- Этот список можно продолжать
Обратите внимание на домен нулевого уровня «.» (dot — точка), также называемый корневым. На практике точку обычно не указывают («example.com» вместо «example.com.»), т.е. указание корневого домена не является обязательным условиям разрешения IP-адреса. Большинство клиентских программ (интернет-браузеров и т.д.) добавляют домен нулевого уровня автоматически и не отображают его пользователю. Доменное имя, не включающее обозначение домена нулевого уровня называется относительным, включающее же точку на конце — полностью определенным (FQDN — Fully Qualified Domain Name).
Доменная зона — часть иерархического дерева доменных имен (напр. «.ru»), целиком переданная на обслуживание определенному DNS-серверу (чаще нескольким) с целью делегирования другому лицу ответственности за этот и все подчиненные домены («anyaddress.ru», «any.anyaddress.ru»).
Делегирование — передача ответственности за определенную ветвь дерева доменных имен другому физическому или юридическому лицу. Именно эта процедура практически реализует важный принцип работы DNS — распределенность хранения записей и обработки запросов. Сам процесс делегирования представляет собой добавление в ресурсные записи родительской зоны («.ru»), так называемых «склеивающих» («glue») NS-записей для делегируемой дочерней зоны («example.com»), указывающих на DNS-сервера принимающей домен стороны (например, DNS-сервера нашей компании). С этого момента все ресурсные записи домена второго уровня «example.com» и всех его дочерних доменов (например, «mail.example.com» и т.д.) хранятся на DNS-серверах этой компании, а родительская зона «.ru» хранит только указывающие на эти сервера NS-записи.
DNS-сервер — хост, хранящий ресурсные записи и обрабатывающий DNS-запросы. DNS-сервер может самостоятельно разрешать адреса, относящиеся к зоне его ответственности (в примере выше это зона example.com), или передавать запросы по зонам, которые он не обслуживает, вышестоящим серверам.
DNS-клиент — набор программных средств для работы с DNS. Сам DNS-сервер периодически также выступает в качестве клиента.
Основные типы ресурсных записей
Ресурсная запись (RR — Resource Record) — единица хранения и передачи информации в DNS, включающая в себя следующие элементы (поля):
- Имя (Name) — имя домена, к которому относится запись
- TTL (Time To Live) — допустимое время хранения записи неответственным сервером
- Тип (Type) — параметр, определяющий назначение и формат записи в поле данных (Rdata)
- Класс (Class) — тип сети передачи данных (подразумевается возможность DNS работать с типами сетей, отличных от TCP/IP)
- Длина поля данных (Rdlen)
- Поле данных (Rdata) — содержание и формат поля зависят от типа записи
Ниже представлены типы ресурсных записей, используемые чаще всего:
- A (IPv4 Address Record — адресная запись) — связывает доменное имя с IPv4-адресом хоста
- AAAA (IPv6 Address Record) — связывает доменное имя с IPv6-адресом хоста (аналогично А-записи)
- CNAME (Canonical Name Record — каноническая запись имени) — используется для перенаправления на другое доменное имя
- MX (Mail Exchange — почтовый обменник) — ссылается на почтовый сервер, обслуживающий домен
- NS (Name Server — сервер имен) — ссылается на DNS-сервер, ответственный за домен
- TXT — текстовое описание домена. Зачастую требуется для выполнения специфических задач (например, подтверждения права собственности на домен при привязке его к почтовому сервису)
- PTR (Point to Reverse — запись указателя) — связывает ip-адрес машины с доменом, используется преимущественно для проверки сторонними почтовыми сервисами отправляемых через эту машину электронных писем на отношение к домену, указанному в параметрах почтового сервера. При несоответствии этих параметров письмо проверяется более тщательно по другим критериям.
Рекурсивные и нерекурсивные DNS-запросы
Рекурсией называется модель обработки запросов DNS-сервером, при которой последний осуществляет полный поиск информации, в том числе о доменах, неделегированных ему, при необходимости обращаясь к другим DNS-серверам.
DNS-запросы (DNS queries) от клиента (сервера) к серверу бывают рекурсивными и нерекурсивными. В первом случае DNS-сервер, принявший запрос, опрашивает все узлы в порядке убывания уровня зон, пока не получит положительный ответ или информацию о том, что запрашиваемый домен не существует. В случае с нерекурсивными запросами сервер даст положительный ответ только при запросе узла, входящего в доменную зону, за которую этот сервер ответственен. Отсутствие рекурсии может быть обусловлено не только типом запроса, но и запретом на выполнение таких запросов со стороны самого DNS-сервера.
Кэширование — еще одна важная характеристика DNS. При последовательном обращении сервера к другим узлам в процессе выполнения рекурсивного запроса DNS-сервер может временно сохранять в кеш-памяти информацию, содержащуюся в получаемых им ответах. В таком случае повторный запрос домена не идет дальше его кэш-памяти. Предельно допустимое время кэширования содержится в поле TTL ресурсной записи.
P. S. Другие инструкции:
Спасибо за Вашу оценку!
К сожалению, проголосовать не получилось. Попробуйте позже
Давайте уже разберемся в DNS / Хабр
Внимательный читатель найдет на этой картинке IPv6
Люди часто озадачены доменами. Почему мой сайт не работает? Почему эта хрень поломана, ничего не помогает, я просто хочу, чтобы это работало! Обычно, вопрошающий или не знает про DNS, или не понимает фундаментальных идей. Для многих DNS — страшная и непонятная штука. Эта статья — попытка развеять такой страх. DNS — это просто, если понять несколько базовых концепций.
Что такое DNS
DNS расшифровывается как Domain Name System. Это глобальное распределенное хранилище ключей и значений. Сервера по всему миру могут предоставить вам значение по ключу, а если им неизвестен ключ, то они попросят помощи у другого сервера.
Вот и все. Правда. Вы или ваш браузер запрашивает значение для ключа www.example.com
, и получает в ответ 1.2.3.4
.
Базовые штуки
Большой плюс DNS в том, что это публичная услуга, и можно потыкать в сервера если хочется разобраться. Давайте попробуем. У меня есть домен petekeen.net
, который хостится на машине web01.bugsplat.info
. Команды, используемые ниже, можно запустить из командной строки OS X (ой, то есть macOS, — прим. пер.).
Давайте взглянем на маппинг между именем и адресом:
$ dig web01.bugsplat.info
Команда dig
это такой швейцарский армейский нож для DNS-запросов. Крутой, многофункциональный инструмент. Вот первая часть ответа:
; <<>> DiG 9.7.6-P1 <<>> web01.bugsplat.info
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51539
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
Здесь есть только одна интересная деталь: информация о самом запросе. Говорится, что мы запросили запись и получили ровно один ответ. Вот:
;; QUESTION SECTION:
;web01.bugsplat.info. IN A
dig
по-умолчанию запрашивает A
-записи. A
это address (адрес), и это один из фундаментальных видов записей в DNS. A
содержит один IPv4
-адрес. Есть эквивалент для IPv6
-адресов — AAAA
. Давайте взглянем на ответ:
;; ANSWER SECTION:
web01.bugsplat.info. 300 IN A 192.241.250.244
Тут говорится, что у хоста web01.bugsplat.info.
есть один адрес A
: 192.241.250.244
. Число 300
это TTL
, или time to live (время жизни). Столько секунд можно держать значение в кэше до повторной проверки. Слово IN
означает Internet
. Так сложилось исторически, это нужно для разделения типов сетей. Подробнее об этом можно почитать в документе IANA’s DNS Parameters.
Оставшаяся часть ответа описывает сам ответ:
;; Query time: 20 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Fri Jul 19 20:01:16 2013
;; MSG SIZE rcvd: 56
В частности, здесь говорится, как долго сервер откликался, какой у сервера IP-адрес (192.168.1.1
), на какой порт стучался dig
(53
, DNS-порт по-умолчанию), когда запрос был завершен и сколько байтов было в ответе.
Как видите, при обычном DNS-запросе происходит куча всего. Каждый раз, когда вы открываете веб-страницу, браузер делает десятки таких запросов, в том числе для загрузки всех внешних ресурсов вроде картинок и скриптов. Каждый ресурс отвечает за минимум один новый DNS-запрос, и если бы DNS не был рассчитан на сильное кэширование, то трафика генерировалось бы очень много.
Но в этом примере не видно, что DNS-сервер 192.168.1.1
связался с кучей других серверов чтобы ответить на простой вопрос: «куда указывает адрес web01.bugsplat.info
?». Давайте запустим трейс чтобы узнать о всей возможной цепочке, которую пришлось бы пройти dig
‘у, если бы информация не был закэширована:
$ dig +trace web01.bugsplat.info
; <<>> DiG 9.7.6-P1 <<>> +trace web01.bugsplat.info
;; global options: +cmd
. 137375 IN NS l.root-servers.net.
. 137375 IN NS m.root-servers.net.
. 137375 IN NS a.root-servers.net.
. 137375 IN NS b.root-servers.net.
. 137375 IN NS c.root-servers.net.
. 137375 IN NS d.root-servers.net.
. 137375 IN NS e.root-servers.net.
. 137375 IN NS f.root-servers.net.
. 137375 IN NS g.root-servers.net.
. 137375 IN NS h.root-servers.net.
. 137375 IN NS i.root-servers.net.
. 137375 IN NS j.root-servers.net.
. 137375 IN NS k.root-servers.net.
;; Received 512 bytes from 192.168.1.1#53(192.168.1.1) in 189 ms
info. 172800 IN NS c0.info.afilias-nst.info.
info. 172800 IN NS a2.info.afilias-nst.info.
info. 172800 IN NS d0.info.afilias-nst.org.
info. 172800 IN NS b2.info.afilias-nst.org.
info. 172800 IN NS b0.info.afilias-nst.org.
info. 172800 IN NS a0.info.afilias-nst.info.
;; Received 443 bytes from 192.5.5.241#53(192.5.5.241) in 1224 ms
bugsplat.info. 86400 IN NS ns-1356.awsdns-41.org.
bugsplat.info. 86400 IN NS ns-212.awsdns-26.com.
bugsplat.info. 86400 IN NS ns-1580.awsdns-05.co.uk.
bugsplat.info. 86400 IN NS ns-911.awsdns-49.net.
;; Received 180 bytes from 199.254.48.1#53(199.254.48.1) in 239 ms
web01.bugsplat.info. 300 IN A 192.241.250.244
bugsplat.info. 172800 IN NS ns-1356.awsdns-41.org.
bugsplat.info. 172800 IN NS ns-1580.awsdns-05.co.uk.
bugsplat.info. 172800 IN NS ns-212.awsdns-26.com.
bugsplat.info. 172800 IN NS ns-911.awsdns-49.net.
;; Received 196 bytes from 205.251.195.143#53(205.251.195.143) in 15 ms
Информация выводится в иерархической последовательности. Помните как dig
вставил точку .
после хоста, web01.bugsplat.info
? Так вот, точка .
это важная деталь, и она означает корень иерархии.
Корневые DNS-сервера обслуживаются различными компаниями и государствами по всему миру. Изначально их было мало, но интернет рос, и сейчас их 13 штук. Но у каждого из серверов есть десятки или сотни физических машин, которые прячутся за одним IP.
Итак, в самом верху трейса находятся корневые сервера, каждый определен с помощью NS-
записи. NS
-запись связывает доменное имя (в данном случае, корневой домен) с DNS-сервером. Когда вы регистрируете доменное имя у регистратора типа Namecheap или Godaddy, они создают NS
-записи для вас.
В следующем блоке видно, как dig
выбрал случайный корневой сервер, и запросил у него A
-запись для web01.bugsplat.info
. Видно только IP-адрес корневого сервера (192.5.5.241
). Так какой именно корневой сервер это был? Давайте узнаем!
$ dig -x 192.5.5.241
; <<>> DiG 9.8.3-P1 <<>> -x 192.5.5.241
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2862
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;241.5.5.192.in-addr.arpa. IN PTR
;; ANSWER SECTION:
241.5.5.192.in-addr.arpa. 3261 IN PTR f.root-servers.net.
Флаг -x
заставляет dig
провести обратный поиск по IP-адресу. DNS отвечает записью PTR
, которая соединяет IP и хост, в данном случае — f.root-servers.net
.
Возвращаясь к нашему начальному запросу: корневой сервер F
вернул другой набор NS
-серверов. Он отвечает за домен верхнего уровня info
. dig
запрашивает у одного из этих серверов запись A
для web01.bugsplat.info
, и получает в ответ еще один набор NS
-серверов, и потом запрашивает у одного из этих серверов запись A
для web01.bugsplat.info.
. И, наконец, получает ответ!
Уф! Сгенерировалось бы много трафика, но почти все эти записи были надолго закэшированы каждым сервером в цепочке. Ваш компьютер тоже кэширует эти данные, как и ваш браузер. Чаще всего DNS-запросы никогда не доходят до корневых серверов, потому что их IP-адреса почти никогда не изменяются («Наверно все таки речь идет о большом TTL для записей в их базе. Если у DNS сервера IP адрес вообще ни разу не изменялся, то это не означает, что его база навечно закеширована» — прим. от rrrav). Домены верхнего уровня com
, net
, org
, и т.д. тоже обычно сильно закэшированы.
Другие типы
Есть еще несколько типов, о которых стоит знать. Первый это MX
. Он соединяет доменное имя с одним или несколькими почтовыми серверами. Электронная почта настолько важна, что у нее есть свой тип DNS-записи. Вот значения MX
для petekeen.net
:
$ dig petekeen.net mx
; <<>> DiG 9.7.6-P1 <<>> petekeen.net mx
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18765
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;petekeen.net. IN MX
;; ANSWER SECTION:
petekeen.net. 86400 IN MX 60 web01.bugsplat.info.
;; Query time: 272 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Fri Jul 19 20:33:43 2013
;; MSG SIZE rcvd: 93
Заметьте, что MX
-запись указывает на имя, а не на IP-адрес.
Еще один тип, который вам скорее всего знаком, это CNAME
. Расшифровываетя как Canonical Name (каноническое имя). Он связывает одно имя с другим. Давайте посмотрим на ответ:
$ dig www.petekeen.net
; <<>> DiG 9.7.6-P1 <<>> www.petekeen.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16785
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.petekeen.net. IN A
;; ANSWER SECTION:
www.petekeen.net. 86400 IN CNAME web01.bugsplat.info.
web01.bugsplat.info. 300 IN A 192.241.250.244
;; Query time: 63 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Fri Jul 19 20:36:58 2013
;; MSG SIZE rcvd: 86
Сразу видно, что мы получили два ответа. Первый говорит, что www.petekeen.net
указывает на web01.bugsplat.info
. Второй возвращает запись A
для того сервера. Можно считать, что CNAME
это псевдоним (или алиас) для другого сервера.
Что не так с CNAME
Записи CNAME
очень полезны, но есть важный момент: если есть CNAME
с каким-то именем, то нельзя создать другую запись с таким же именем. Ни MX
, ни A
, ни NS
, ничего.
Причина в том, что DNS производит замену таким образом, что все записи того места, куда указывает CNAME
, также валидны для CNAME
. В нашем примере, записи у www.petekeen.net
и web01.bugsplat.info
будут совпадать.
Поэтому нельзя делать CNAME
на корневом домене вроде petekeen.net
, потому что обычно там нужны другие записи, например, MX
.
Запросы к другим серверам
Давайте представим, что конфигурация DNS испорчена. Вам кажется, что вы исправили проблему, но не хотите ждать когда обновится кэш чтобы удостовериться. С помощью dig
можно сделать запрос к публичному DNS-серверу вместо своего дефолтного, вот так:
$ dig www.petekeen.net @8.8.8.8
Символ @
с IP-адресом или хостом заставляет dig
прозводить запрос к указанному серверу через порт по-умолчанию. Можно использовать публичный DNS-сервер Гугла или почти-публичный-сервер Level 3 по адресу 4.2.2.2
.
Типичные ситуации
Давайте рассмотрим типичные ситуации, знакомые многим веб-разработчикам.
Редирект домена на www
Часто нужно сделать редирект домена iskettlemanstillopen.com
на www.iskettlemanstillopen.com
. Регистраторы типа Namecheap или DNSimple называют это URL Redirect. Вот пример из админки Namecheap:
Символ @
означает корневой домен iskettlemanstillopen.com
. Давайте посмотрим на запись A
у этого домена:
$ dig iskettlemanstillopen.com
;; QUESTION SECTION:
;iskettlemanstillopen.com. IN A
;; ANSWER SECTION:
iskettlemanstillopen.com. 500 IN A 192.64.119.118
Этот IP принадлежит Namecheap’у, и там крутится маленький веб-сервер, который просто делает перенаправление на уровне HTTP на адрес http://www.iskettlemanstillopen.com
:
$ curl -I iskettlemanstillopen.com
curl -I iskettlemanstillopen.com
HTTP/1.1 302 Moved Temporarily
Server: nginx
Date: Fri, 19 Jul 2013 23:53:21 GMT
Content-Type: text/html
Connection: keep-alive
Content-Length: 154
Location: http://www.iskettlemanstillopen.com/
CNAME для Heroku или Github
Взгляните на скриншот выше. На второй строке там CNAME
. В этом случае www.iskettlemanstillopen.com
указывает на приложение, запущенное на Heroku.
$ heroku domains
=== warm-journey-3906 Domain Names
warm-journey-3906.herokuapp.com
www.iskettlemanstillopen.com
С Github похожая история, но там нужно создать специальный файл в корне репозитория, и назвать его CNAME
. См. документацию.
Wildcards
Большинство DNS-серверов поддерживают шаблоны (wildcards). Например, есть wildcard CNAME
для *.web01.bugsplat.info
указывает на web01.bugsplat.info
. Тогда любой хост на web01
будет указывать на web01.bugsplat.info
и не нужно создавать новые записи:
$ dig randomapp.web01.bugsplat.info
;; QUESTION SECTION:
;randomapp.web01.bugsplat.info. IN A
;; ANSWER SECTION:
randomapp.web01.bugsplat.info. 300 IN CNAME web01.bugsplat.info.
web01.bugsplat.info. 15 IN A 192.241.250.244
Заключение
Надеюсь, теперь у вас есть базовое понимание DNS. Все стандарты описаны в документах:
Есть еще пара интересных RFC, в том числе 4034, который описывает стандарт DNSSEC
и 5321, который описывает взаимосвязь DNS и email. Их интересно почитать для общего развития.
принцип работы, и как работает ДНС в интернете
Привет уважаемые читатели seoslim.ru! Задумывались ли вы когда-нибудь, каким образом браузер находит сайты в интернете?
Что же тут сложного, скажете вы, пользователь вводит в адресную строку доменное имя нужного сайта и браузер загружает контент с указанного адреса.
На самом деле домен это вовсе не адрес сайта в и интернете, а что-то вроде никнейма абонента, которым вы обозначили своего знакомого в телефонной книге смартфона.
Это интересно: Что такое SSL сертификат и зачем он нужен
Например, чтобы мгновенно узнавать, кто звонит, вы привязываете к телефонному номеру прозвище вашего знакомого. Во время вызова на дисплее смартфона отображаются не цифры сотового номера, а имя, под которым вы занесли собеседника в телефонную книгу.
Аналогично происходит и с доменными именами сайтов. Однако, давайте разбираться с самого начала и подробно.
Зачем в интернете нужны DNS-серверы
На заре существования всемирной сети подключенных компьютеров было немного, а пользователями были опытные специалисты.
Каждую точку подключения (клиентский компьютер) идентифицировали в сети при помощи IP-адреса. Что расшифровывается как Internet Protocol Address – адрес интернет-протокола.
IP-адрес выглядит примерно, как номер сотового телефона:
- 59.109.189
- 59.110.48
- 59.109.207
Со временем количество пользователей интернета значительно увеличилось и тогда, для облегчения задачи серфинга в сети, было предложено ассоциировать цифровые IP-адреса сайтов с вербальными (словесными) доменными именами.
Чтобы обеспечивать назначение каждому цифровому IP-адресу веб-сайта удобного для восприятия имени была создана глобальная система доменных имен.
По-английски Domain Name System или сокращенно DNS.
Система доменных имен представляет собой распределенную инфраструктуру из большого числа серверов, расположенных по всей планете. Эта серверная структура DNS выстроена по принципу иерархического подчинения.
- Сервера доменных имен верхнего уровня – COM, RU и так далее.
- Сервера со списками доменных имен второго уровня – google.com.
- Сервера доменов третьего уровня – api.google.com.
Самую верхнюю позицию в иерархии занимают корневые DNS-сервера, на которых хранятся списки серверов доменных имен верхнего уровня. Корневых ДНС-серверов во всем мире чуть более 10 штук.
Говоря простыми словами, система доменных имен функционирует, как глобальный адресный стол для всемирной сети.
В локальных отделениях DNS хранятся ассоциированные с доменными именами IP адреса сайтов, относящиеся к данному региону. Если на местном сервере DNS оказывается невозможно найти адрес сайта по запрашиваемому доменному имени, запрос делегируется к следующему уровню системы.
Статья по теме: Как сделать выделенный IP адрес сайту
И вот таким образом поиск IP-адреса по заданному браузером доменному имени происходит до тех пор, пока нужный сайт не будет обнаружен на одном из ответственных за его хранение серверов DNS.
Пример работы, как браузер находит сайт
Чтобы понять, как все это работает, давайте рассмотрим на конкретном примере поиска какого-либо сайта.
- Пользователь набирает в адресной строке доменное имя либо кликает по ссылке на определенную веб-страницу.
- Первым делом браузер обращается к собственному кэшу и проверяет – не посещался ли данный ресурс ранее.
- Если искомый веб-сайт ранее уже посещался, тогда его IP-адрес уже сохранен в кэше браузера и необходимости тратить время на обращение к DNS-серверам нет. В данном случае кэширование используется как метод ускорения поиска в интернете.
- Если в кэш браузера искомый домен не обнаружен, тогда поиск продолжается в записях операционной системы. Если и там сайт не записан, после этого уже происходит обращение к серверу провайдера интернета.
- Интернет-провайдер, в свою очередь, собирает сведения о посещенных каждым пользователем веб-ресурсах в собственный кэш. Это тоже делается для ускорения поиска и повышения комфортности сервиса.
- И только после того, как указанный в поисковой строке браузера домен не обнаружен в кэш браузера, операционной системы или у интернет-провайдера, происходит обращение к общей системе серверов DNS.
- Далее происходит поиск доменного имени по иерархии ДНС-системы сверху вниз.
- В этом случае поиск по системе DNS-серверов нацелен на выявление делегированного NS-сервера регистратора доменных имен, у которого владелец искомого сайта арендовал домен.
Такой достаточно сложный алгоритм поиска IP адреса сайта по доменному имени получается потому, что сегодня интернет-ресурсов во всемирной сети уже более миллиарда.
Hosts-файл
Чуть выше было упомянуто, что записи об адресах сайтов могут находиться в операционной системе компьютера. Действительно, среди системных файлов имеется документ по имени Hosts.
Это обычный текстовый файл, но не имеющий расширения txt. Дело в том, что Hosts-файлы могут присутствовать на компьютерах и других операционных систем, а не только Windows.
На альтернативных OS расширения файлов могут не совпадать, поэтому договорились использовать текстовый документ Hosts вообще без указания типа файла.
Hosts-файл содержит список сопоставления доменных имен известных пользователю интернет-ресурсов и их IP-адресов.
Сначала прописывается IP-адрес, а затем название интернет-ресурса.
Считается, что Hosts-файл является архаизмом. Этот файл использовался в прежние времена, когда компьютеры имели малую мощность и использовалась любая возможность ускорить процессы.
Указанная выше запись из Hosts-файла означает, что по такому IP адресу находится сам пользовательский компьютер. В большинстве случаев на современных персональных компьютерах эта запись является единственной.
Иногда продвинутые пользователи, для того, чтобы заблокировать посещение какого-либо сайта, добавляют в Hosts-файл запись, в которой сопоставляют доменное имя нежелательного ресурса с IP-адресом компьютера.
В случае запроса браузера по данному доменному имени происходит обращение к локальной системе и перейти на сайт оказывается невозможно.
Например, пользователь не хочет, чтобы его дети посещали какие-либо сайты. Тогда можно отредактировать Hosts-файл и указать в качестве IP-адреса нежелательного сайта локальный хост.
Hosts-файл иногда используется хакерами для того чтобы перенаправить пользователя на фишинговые страницы. Если пользователь посетит зараженный сайт и загрузит оттуда вирус, то этот вирус может произвести изменения в записях Hosts-файла.
Например, доменному имени надежного онлайн-банка будет ассоциирован IP-адрес мошеннического ресурса. Набрав в браузере адрес банка, пользователь попадет на сайт мошенников и потеряет свои деньги.
Сегодня Host-файл потерял свою значимость и может вообще не содержать никаких записей. Это никак не отразится на функциональности компьютера и возможностях работы в интернете.
Что такое NS серверы
В распределенной системе иерархической доменных имен выделяются NS-сервера, на которых хранится наиболее полная информация о конкретном интернет-ресурсе. Эти NS-сервера являются конечными (делегированными) во всей адресной цепочке по отношению к конкретному сайту.
Для обеспечения надежности и бесперебойности функционирования сайта информация о нем записывается обязательно не менее чем на двух DNS-серверах.
На этом скриншоте мы видим, что мой домен seoslim.ru, который я был получен у партнера-регистратора Link-Host записан сразу на четырех NS-серверах. Один из этих NS-серверов назначается основным (Master), остальные подчиненные (Slave).
В качестве хостинг-провайдера, который и осуществляет бесперебойную работу сайта и который предоставляет бесплатные SSL сертификаты я выбрал McHost, чего и всем советую.
Как задать (сменить) DNS для домена
Чтобы вновь созданный и опубликованный веб-сайт стал доступен пользователям глобальной сети, необходимо сообщить системе DNS о появлении нового ресурса.
Как это сделать практически?
- Зайти в панель управления сайтом на хостинге.
- Перейти в раздел управления доменами.
- Открыть интерфейс «DNS-серверы и зона».
- Если доменное имя было зарегистрировано на том же хостинге, где и опубликован веб-сайт, NS-сервера прописываются автоматически.
- Чтобы указать произвольные NS-сервера, нужно снять галочку в чекбоксе «Автоматически использовать NS-сервера регистратора» и вписать желаемые сервисы.
Алгоритм назначения NS-серверов может изменяться в зависимости от конкретного хостинга, доменного регистратора и панели управления сайтом.
Читайте статью: Как получить качественных хостинг бесплатно
Обновление данных о домене на серверах DNS происходит не мгновенно, а через сутки, в некоторых случаях в течение 72-х часов.
Так что придется подождать, пока сайт станет доступен пользователям после делегирования домена определенным NS-серверам.
Что значит DNS сервер не отвечает и что надо делать
Жизнь современного человека без интернета немыслима. И вот в один не самый прекрасный день браузер перестает находить сайты в интернете. Ни одна веб-страница по запросу не отображается.
Вы пытаетесь запустить другие интернет-обозреватели, но и они не работают.
Первая мысль – срочно звонить оператору связи и выяснять, почему интернет не работает и когда авария на линии будет исправлено.
Реальная практика показала, что большая часть проблем с интернетом обусловлена не техническими нарушениями у интернет провайдера, а сбоями в настройках компьютера и проблемами локального программного обеспечения.
Чтобы разобраться, почему отсутствует подключение к интернету, проведите диагностику сети средствами Windows.
- Наведите стрелку мыши на иконку сетевых подключений в Панели задач и кликните правой кнопкой.
- Откроется контекстное Меню.
- Нажмите на пункт «Диагностика неполадок».
Если по результатам диагностики появится уведомление «DNS сервер не отвечает» – это значит, что можно предположить следующие проблемы:
- Технические неисправности на стороне провайдера.
- Неисправности или сбой настроек сетевого оборудования: модема, роутера, маршрутизатора.
- Неисправность или неправильные настройки компьютера.
Для начала попробуйте перезагрузить роутер и компьютер. Если проблема не устранена, следует провести диагностику устройств путем исключения промежуточных элементов.
- Если есть возможность, попробуйте подключить компьютер к интернету через альтернативное сетевое устройство. Например, вместо роутера используйте модем. Если после подключения другого сетевого устройства интернет появится, то вы будете знать, что проблема в роутере.
- Подключите роутер к другому компьютеру. Если интернет доступен, значит неисправность в первом компьютере.
Если роутер в порядке, вспомните, что вы делали с компьютером перед возникновением неисправности.
- Причиной нарушения работы интернета может быть установка какого-либо нового программного обеспечения.
- Некоторые компьютерные приложения глубоко внедряются в реестр и самостоятельно производят изменения в настройках системы.
- Сделайте откат операционной системы к состоянию до установки подозрительных приложений.
- Если после окончания процесса восстановления и перезагрузки компьютера интернет будет работать нормально – проблема была в приложении.
Если недоступны только отдельные веб-сайты, проблема может быть в том, что в кэш операционной системы записаны некорректные соответствия IP-адресов и доменных имен.
В этом случае следует очистить кэш. Для того чтобы очистить кэш, требуется использование Командной строки Windows. Если вы не являетесь продвинутым пользователем и не знаете, как это сделать, обратитесь к специалистам во избежание причинение вреда компьютеру.
Можно удалить и заново, «вчистую» переустановить программное обеспечение и драйвера сетевых устройств – модема или роутера. После новой установки переподключение к интернету, поиск DNS-сервера и настройки сети будут произведены автоматически.
Вручную настраивать сеть следует только в том случае, если вы точно знаете, как это делается. Экспериментировать методом тыка не рекомендуется, можно испортить и компьютер, и сетевое оборудование.
Позвоните по горячей линии провайдера интернета и уточните, есть ли текущие нарушение на линии и когда проблема будет исправлена.
Если ничего из перечисленного не помогает, следует обратиться за помощью к специалисту сервисного центра.
Устранение неполадок DNS-серверов | Документы Microsoft
- На чтение 9 минут
В этой статье
В этой статье рассказывается, как решать проблемы на DNS-серверах.
Проверить конфигурацию IP
Запустите
ipconfig / all
в командной строке и проверьте IP-адрес, маску подсети и шлюз по умолчанию.Проверьте, является ли DNS-сервер авторитетным для имени, которое ищется. Если да, см. Проверка на наличие проблем с достоверными данными.
Выполните следующую команду:
nslookup <имя>
Например:
приложение nslookup1 10.0.0.1
Если вы получили ответ об ошибке или истечении времени ожидания, см. Проверка на наличие проблем рекурсии.
Очистить кеш резолвера.Для этого выполните следующую команду в окне административной командной строки:
dnscmd / clearcache
Или в административном окне PowerShell запустите следующий командлет:
Clear-DnsServerCache
Повторить шаг 3.
Проверьте проблемы DNS-сервера
Журнал событий
Проверьте следующие журналы, чтобы увидеть, есть ли какие-либо записанные ошибки:
Заявка
Система
DNS-сервер
Тест с помощью запроса nslookup
Выполните следующую команду и проверьте, доступен ли DNS-сервер с клиентских компьютеров.
nslookup <имя клиента>
Если распознаватель возвращает IP-адрес клиента, у сервера нет проблем.
Если распознаватель возвращает ответ «Сбой сервера» или «Запрос отклонен», возможно, зона приостановлена или сервер перегружен. Вы можете узнать, приостановлена ли она, проверив вкладку «Общие» свойств зоны в консоли DNS.
Если распознаватель возвращает ответ «Истекло время ожидания запроса к серверу» или «Нет ответа от сервера», возможно, служба DNS не запущена.Попробуйте перезапустить службу DNS-сервера, введя в командной строке на сервере следующее:
чистый запуск DNS
Если проблема возникает во время работы службы, возможно, сервер не прослушивает IP-адрес, который вы использовали в запросе nslookup. На вкладке Интерфейсы страницы свойств сервера в консоли DNS администраторы могут ограничить DNS-сервер прослушиванием только выбранных адресов. Если DNS-сервер был настроен на ограничение службы определенным списком его настроенных IP-адресов, возможно, IP-адрес, который используется для связи с DNS-сервером, отсутствует в списке.Вы можете попробовать другой IP-адрес в списке или добавить IP-адрес в список.
В редких случаях DNS-сервер может иметь расширенную конфигурацию безопасности или брандмауэра. Если сервер расположен в другой сети, доступной только через промежуточный узел (например, маршрутизатор с фильтрацией пакетов или прокси-сервер), DNS-сервер может использовать нестандартный порт для прослушивания и приема клиентских запросов. По умолчанию nslookup отправляет запросы DNS-серверам через UDP-порт 53. Таким образом, если DNS-сервер использует любой другой порт, запросы nslookup завершаются ошибкой.Если вы думаете, что это может быть проблемой, проверьте, не используется ли намеренно промежуточный фильтр для блокировки трафика на хорошо известных портах DNS. Если это не так, попробуйте изменить фильтры пакетов или правила порта на брандмауэре, чтобы разрешить трафик на 53-м порте UDP / TCP.
Проверка на наличие проблем с авторитетными данными
Проверьте, является ли сервер, возвращающий неверный ответ, основным сервером для зоны (стандартный основной сервер для зоны или сервер, который использует интеграцию Active Directory для загрузки зоны) или сервером, на котором размещена вторичная копия зоны.
Если сервер является основным сервером
Проблема может быть вызвана ошибкой пользователя при вводе данных в зону. Или это может быть вызвано проблемой, которая влияет на репликацию Active Directory или динамическое обновление.
Если на сервере размещена вторичная копия зоны
Изучите зону на главном сервере (сервер, с которого этот сервер получает передачи зоны).
Примечание
Вы можете определить, какой сервер является главным, проверив свойства дополнительной зоны в консоли DNS.
Если имя на главном сервере неправильное, перейдите к шагу 4.
Если имя на главном сервере правильное, проверьте, меньше ли серийный номер на главном сервере серийному номеру на вторичном сервере или равен ему. Если это так, измените либо главный сервер, либо вторичный сервер так, чтобы серийный номер на главном сервере был больше, чем серийный номер на вторичном сервере.
На дополнительном сервере принудительно выполните передачу зоны из консоли DNS или выполнив следующую команду:
dnscmd / zonerefresh <имя зоны>
Например, если зона corp.contoso.com введите:
dnscmd / zonerefresh corp.contoso.com
.Еще раз проверьте вторичный сервер, чтобы убедиться, что зона была передана правильно. Если нет, вероятно, у вас проблема с переносом зоны. Для получения дополнительной информации см. Проблемы передачи зоны.
Если зона была передана правильно, проверьте правильность данных. В противном случае данные в основной зоне неверны. Проблема может быть вызвана ошибкой пользователя, когда пользователи вводят данные в зону.Или это может быть вызвано проблемой, которая влияет на репликацию Active Directory или динамическое обновление.
Проверка на наличие проблем с рекурсией
Для успешной работы рекурсии все DNS-серверы, которые используются на пути рекурсивного запроса, должны иметь возможность отвечать и пересылать правильные данные. В противном случае рекурсивный запрос может завершиться ошибкой по любой из следующих причин:
Время ожидания запроса истекает до его завершения.
Сервер, использованный во время запроса, не отвечает.
Сервер, используемый во время запроса, предоставляет неверные данные.
Начать устранение неполадок на сервере, который использовался в исходном запросе. Проверьте, перенаправляет ли этот сервер запросы на другой сервер, проверив вкладку Forwarders в свойствах сервера в консоли DNS. Если установлен флажок Включить серверы пересылки и указаны один или несколько серверов, этот сервер пересылает запросы.
Если этот сервер перенаправляет запросы на другой сервер, проверьте наличие проблем, которые влияют на сервер, на который этот сервер перенаправляет запросы.Чтобы проверить наличие проблем, см. Проверка проблем DNS-сервера. Когда в этом разделе вам предлагается выполнить задачу на клиенте, вместо этого выполняйте ее на сервере.
Если сервер исправен и может пересылать запросы, повторите этот шаг и проверьте сервер, на который этот сервер пересылает запросы.
Если этот сервер не пересылает запросы другому серверу, проверьте, может ли этот сервер запрашивать корневой сервер. Для этого выполните следующую команду:
нс поиск
server
установить q = NS
Если распознаватель возвращает IP-адрес корневого сервера, возможно, у вас нарушено делегирование между корневым сервером и именем или IP-адресом, который вы пытаетесь разрешить.Следуйте процедуре «Проверить нарушенное делегирование», чтобы определить, где у вас нарушено делегирование.
Если распознаватель возвращает ответ «Истекло время ожидания запроса на сервер», проверьте, указывают ли корневые ссылки на работающие корневые серверы. Для этого используйте процедуру просмотра текущих корневых ссылок. Если корневые ссылки указывают на работающие корневые серверы, возможно, у вас проблема с сетью, или сервер может использовать расширенную конфигурацию брандмауэра, которая не позволяет преобразователю запрашивать сервер, как описано в разделе «Проверка проблем DNS-сервера».Также возможно, что рекурсивный тайм-аут по умолчанию слишком короткий.
Проверить сломанное делегирование
Начните тесты в следующей процедуре, запросив допустимый корневой сервер. Тест проведет вас через процесс опроса всех DNS-серверов от корня до сервера, который вы тестируете на нарушение делегирования.
В командной строке на тестируемом сервере введите следующее:
нс поиск server
установить нерекурсию установить querytype = <тип записи ресурса> Примечание
Тип записи ресурса — это тип записи ресурса, которую вы запрашивали в исходном запросе, а полное доменное имя — это полное доменное имя, для которого вы запрашивали (завершается точкой).
Если ответ включает список записей ресурсов «NS» и «A» для делегированных серверов, повторите шаг 1 для каждого сервера и используйте IP-адрес из записей ресурсов «A» в качестве IP-адреса сервера.
Если ответ не содержит записи ресурса «NS», значит у вас нарушено делегирование.
Если ответ содержит записи ресурсов «NS», но не содержит записей ресурсов «A», введите установить рекурсию и запросите индивидуально для записей ресурсов «A» серверов, перечисленных в записях «NS».Если вы не найдете хотя бы один допустимый IP-адрес записи ресурса «A» для каждой записи ресурса NS в зоне, значит, у вас нарушено делегирование.
Если вы определили, что у вас нарушено делегирование, исправьте его, добавив или обновив запись ресурса «A» в родительской зоне, используя действительный IP-адрес для правильного DNS-сервера для делегированной зоны.
Для просмотра текущих корневых ссылок
Запустите консоль DNS.
Добавьте DNS-сервер, на котором не удалось выполнить рекурсивный запрос, или подключитесь к нему.
Щелкните сервер правой кнопкой мыши и выберите Свойства .
Щелкните Root Hints.
Проверьте базовое подключение к корневым серверам.
Если корневые подсказки настроены правильно, убедитесь, что DNS-сервер, который используется при неудачном разрешении имен, может проверить связь с корневыми серверами по IP-адресу.
Если корневые серверы не отвечают на пинг по IP-адресу, возможно, IP-адреса корневых серверов изменились.Однако редко можно увидеть реконфигурацию корневых серверов.
Проблемы передачи зоны
Выполните следующие проверки:
Проверьте средство просмотра событий для первичного и вторичного DNS-серверов.
Проверьте главный сервер, чтобы узнать, не отказывается ли он отправить передачу в целях безопасности.
Проверьте вкладку Передачи зоны свойств зоны в консоли DNS. Если сервер ограничивает передачу зоны списком серверов, например, перечисленных на вкладке Name Servers свойств зоны, убедитесь, что вторичный сервер находится в этом списке.Убедитесь, что сервер настроен для отправки зональных передач.
Проверьте главный сервер на наличие проблем, выполнив действия, описанные в разделе «Проверка проблем DNS-сервера». Когда вам будет предложено выполнить задачу на клиенте, вместо этого выполните задачу на вторичном сервере.
Проверьте, работает ли на вторичном сервере другая реализация DNS-сервера, например BIND. Если это так, проблема может иметь одну из следующих причин:
Главный сервер Windows может быть настроен на отправку быстрых зональных передач, но сторонний вторичный сервер может не поддерживать быстрые зональные передачи.В этом случае отключите передачу быстрой зоны на главном сервере из консоли DNS, установив флажок Enable Bind Secondaries на вкладке Advanced свойств вашего сервера.
Если зона прямого просмотра на сервере Windows содержит тип записи (например, запись SRV), который не поддерживается вторичным сервером, у вторичного сервера могут возникнуть проблемы с извлечением зоны.
Проверьте, работает ли на главном сервере другая реализация DNS-сервера, например BIND.Если это так, возможно, зона на главном сервере содержит несовместимые записи ресурсов, которые Windows не распознает.
Если на главном или дополнительном сервере работает другая реализация DNS-сервера, проверьте оба сервера, чтобы убедиться, что они поддерживают одни и те же функции. Вы можете проверить сервер Windows в консоли DNS на вкладке Advanced на странице свойств сервера. Помимо поля «Включить вторичные привязки», эта страница включает раскрывающийся список Проверка имени .Это позволяет выбрать обеспечение строгого соответствия RFC для символов в именах DNS.
.
Обзор концепций DNS | Документы Microsoft
- 5 минут на чтение
В этой статье
Применимо к: Windows Server 2016, Windows Server 2012 R2, Windows Server 2012
Система доменных имен (DNS) — это распределенная база данных, представляющая пространство имен.Пространство имен содержит всю информацию, необходимую клиенту для поиска любого имени. Любой DNS-сервер может отвечать на запросы о любом имени в своем пространстве имен. DNS-сервер отвечает на запросы одним из следующих способов:
- Если ответ находится в его кеше, он отвечает на запрос из кеша.
- Если ответ находится в зоне, размещенной на DNS-сервере, он отвечает на запрос из своей зоны. Зона — это часть DNS-дерева, хранящаяся на DNS-сервере. Когда DNS-сервер размещает зону, он является полномочным для имен в этой зоне (то есть DNS-сервер может отвечать на запросы для любого имени в зоне).Например, сервер, на котором размещена зона contoso.com, может отвечать на запросы любого имени в contoso.com.
- Если сервер не может ответить на запрос из своего кэша или зон, он запрашивает ответ у других серверов.
Важно понимать основные функции DNS, такие как делегирование, рекурсивное разрешение имен и зоны DNS, интегрированные в Active Directory, поскольку они напрямую влияют на структуру логической структуры Active Directory.
Дополнительные сведения о DNS и доменных службах Active Directory (AD DS) см. В разделе DNS и AD DS.
Делегация
Чтобы DNS-сервер отвечал на запросы о любом имени, он должен иметь прямой или косвенный путь к каждой зоне в пространстве имен. Эти пути создаются посредством делегирования. Делегирование — это запись в родительской зоне, в которой указан сервер имен, который является полномочным для зоны на следующем уровне иерархии. Делегирование позволяет серверам в одной зоне направлять клиентов на серверы в других зонах. На следующем рисунке показан один пример делегирования.
На корневом сервере DNS находится корневая зона, обозначенная точкой (.). Корневая зона включает делегирование в зону следующего уровня иерархии, com-зону. Делегирование в корневой зоне сообщает корневому серверу DNS, что для нахождения зоны com он должен связаться с сервером Com. Аналогичным образом делегирование в зоне com сообщает серверу Com, что для поиска зоны contoso.com он должен связаться с сервером Contoso.
Примечание
Делегирование использует два типа записей.Запись ресурса сервера имен (NS) предоставляет имя полномочного сервера. Записи ресурсов хоста (A) и хоста (AAAA) предоставляют IP-адреса версии 4 (IPv4) и IP версии 6 (IPv6) полномочного сервера.
Эта система зон и делегирования создает иерархическое дерево, представляющее пространство имен DNS. Каждая зона представляет слой в иерархии, а каждое делегирование представляет собой ветвь дерева.
Используя иерархию зон и делегаций, корневой сервер DNS может найти любое имя в пространстве имен DNS.Корневая зона включает делегирования, которые прямо или косвенно ведут ко всем другим зонам в иерархии. Любой сервер, который может запрашивать корневой сервер DNS, может использовать информацию в делегировании, чтобы найти любое имя в пространстве имен.
Рекурсивное разрешение имен
Рекурсивное разрешение имен — это процесс, при котором DNS-сервер использует иерархию зон и делегирования для ответа на запросы, для которых он не является авторитетным.
В некоторых конфигурациях DNS-серверы включают корневые ссылки (то есть список имен и IP-адресов), которые позволяют им запрашивать корневые DNS-серверы.В других конфигурациях серверы перенаправляют все запросы, на которые они не могут ответить, другому серверу. Пересылка и корневые ссылки — это методы, которые DNS-серверы могут использовать для разрешения запросов, для которых они не являются авторитетными.
Разрешение имен с использованием корневых ссылок
Корневые подсказки позволяют любому DNS-серверу находить корневые DNS-серверы. После того, как DNS-сервер обнаружит корневой DNS-сервер, он сможет разрешить любой запрос для этого пространства имен. На следующем рисунке показано, как DNS разрешает имя с помощью корневых ссылок.
В этом примере происходят следующие события:
- Клиент отправляет рекурсивный запрос к DNS-серверу, чтобы запросить IP-адрес, соответствующий имени ftp.contoso.com. Рекурсивный запрос указывает, что клиент хочет получить окончательный ответ на свой запрос. Ответ на рекурсивный запрос должен быть действительным адресом или сообщением о том, что адрес не может быть найден.
- Поскольку DNS-сервер не является авторитетным для имени и не имеет ответа в своем кэше, DNS-сервер использует корневые ссылки, чтобы найти IP-адрес корневого DNS-сервера.
- DNS-сервер использует итеративный запрос, чтобы попросить корневой DNS-сервер разрешить имя ftp.contoso.com. Итеративный запрос указывает, что сервер примет ссылку на другой сервер вместо окончательного ответа на запрос. Поскольку имя ftp.contoso.com заканчивается меткой com, корневой DNS-сервер возвращает ссылку на Com-сервер, на котором находится зона com.
- DNS-сервер использует итеративный запрос, чтобы попросить Com-сервер разрешить имя ftp.contoso.com.Поскольку имя ftp.contoso.com заканчивается именем contoso.com, сервер Com возвращает ссылку на сервер Contoso, на котором размещается зона contoso.com.
- DNS-сервер использует итеративный запрос, чтобы попросить сервер Contoso разрешить имя ftp.contoso.com. Сервер Contoso находит ответ в данных своей зоны и затем возвращает ответ серверу.
- Затем сервер возвращает результат клиенту.
Разрешение имен с использованием пересылки
Forwarding позволяет маршрутизировать разрешение имен через определенные серверы вместо использования корневых ссылок.На следующем рисунке показано, как DNS разрешает имя с помощью пересылки.
В этом примере происходят следующие события:
- Клиент запрашивает у DNS-сервера имя ftp.contoso.com.
- DNS-сервер перенаправляет запрос на другой DNS-сервер, известный как сервер пересылки.
- Поскольку сервер пересылки не является авторитетным для имени и не имеет ответа в своем кэше, он использует корневые ссылки, чтобы найти IP-адрес корневого сервера DNS.
- Сервер пересылки использует итеративный запрос, чтобы попросить корневой DNS-сервер разрешить имя ftp.contoso.com. Поскольку имя ftp.contoso.com заканчивается именем com, корневой DNS-сервер возвращает ссылку на Com-сервер, на котором размещена зона com.
- Сервер пересылки использует итеративный запрос, чтобы попросить Com-сервер разрешить имя ftp.contoso.com. Поскольку имя ftp.contoso.com заканчивается именем contoso.com, Com-сервер возвращает ссылку на сервер Contoso, на котором размещается contoso.com зона.
- Сервер пересылки использует итеративный запрос, чтобы попросить сервер Contoso разрешить имя ftp.contoso.com. Сервер Contoso находит ответ в своих файлах зоны, а затем возвращает ответ серверу.
- Затем сервер пересылки возвращает результат исходному DNS-серверу.
- Затем исходный DNS-сервер возвращает результат клиенту.
.
Как работает устаревание и очистка DNS — статьи TechNet — США (английский)
Устаревание и очистка DNS позволяет автоматически очищать и удалять устаревшие записи ресурсов. В этой статье Wiki объясняется, как работает этот механизм и о чем следует позаботиться при его включении.
Aging — это функция, позволяющая определять устаревшие записи DNS. Фактически он использует два интервала, и запись DNS считается устаревшей, когда оба истекли.
Эти интервалы:
- Интервал без обновления: это период времени, в течение которого запись ресурса не может быть обновлена (*).Отказ от обновления в течение этого периода времени уменьшает трафик репликации, поскольку нет необходимости повторять ту же информацию снова.
- Интервал обновления: это период времени, в течение которого может обновляться запись ресурса (*).
(*) Обновление записи ресурса — это динамическое обновление DNS, при котором имя хоста и IP-адрес не меняются. Динамическое обновление DNS для изменения зарегистрированного IP-адреса для записи ресурса не считается обновлением и исключается из интервала без обновления.
Пример 1:
Если интервал без обновления и интервал обновления составляют семь (7) дней, то запись ресурса считается устаревшей, если не обновляется через четырнадцать (14) дней.
Пример 2:
Если интервал отсутствия обновления и интервал обновления составляют семь (7) дней, то запись ресурса может быть обновлена через 7 дней, начиная с последнего обновления. После этого начнется новый интервал без обновления.
Даже если интервалы без обновления и обновления истекли, запись ресурса может быть обновлена до тех пор, пока запись не была удалена из зоны DNS. После этого начнется новый интервал без обновления, и запись не будет
дольше считаться устаревшим.
устаревание DNS использует временную метку записи ресурса, чтобы определить, устарела она или нет.
Мы можем различать два типа ресурсных записей:
- Записи ресурсов с меткой времени, равной нулю (0): это статические записи, и они никогда не устаревают.
- Записи ресурсов, имеющие метку времени, отличную от нуля (0): это динамические записи, и метка времени представляет дату и время последнего обновления, выполненного в записи (для времени это час последнего обновления / Обновить)
Как преобразовать динамическую запись ресурса в статическую, не создавая ее повторно в DNS : http: // social.technet.microsoft.com/wiki/contents/articles/21726.how-to-convert-a-dynamic-resource-record-to-a-static-one-without-re-creating-it-in-dns.aspx
Очистка — это функция, которая позволяет очищать и удалять устаревшие записи ресурсов в зонах DNS.
Устаревшая запись ресурса будет удалена, только если очистка включена:
- Запись ресурса
- Зона DNS, в которой существует запись ресурса
- По крайней мере, один DNS, содержащий первичную копию зоны DNS, в которой существует запись ресурса
Очистка выполняется периодически, если она включена на DNS-сервере.Устаревшая запись ресурса может существовать до следующего цикла очистки DNS.
Пример:
Если очистка происходит каждую среду на DNS-сервере, интервалы без обновления и обновления равны семи (7) дням для каждого, и последнее обновление записи DNS произошло в четверг, тогда запись ресурса будет удалена.
в цикле уборки четвертой (4) недели.
Как включить устаревание и очистку DNS?
Чтобы включить устаревание и очистку DNS, выполните следующие действия:
1.Включить устаревание и очистку DNS в зонах DNS:
- Используя инструмент администрирования DNS (dnsmgmt.msc), перейдите в свойства ваших зон DNS и нажмите
Старение…
- Включить Очистить устаревшие записи ресурсов , установите флажок «Интервал без обновления» и «Интервал обновления», затем нажмите
ОК
Чтобы включить устаревание и очистку DNS по умолчанию для всех зон DNS на DNS-сервере, необходимо выполнить следующие действия:
- Щелкните правой кнопкой мыши имя сервера и выберите Set Aging / Scavenging for All Zones…
- Включить Очистить устаревшие записи ресурсов , установите флажок «Интервал без обновления» и «Интервал обновления», затем нажмите
ОК
- Включить Применить эти настройки к существующим зонам, интегрированным в Active Directory
(это включит устаревание и очистку DNS для существующих зон, интегрированных в Active Directory), а затем нажмите
ОК
2.Включите очистку DNS хотя бы на одном DNS-сервере, на котором размещены основные копии ваших DNS-зон:
- Перейдите в свойства вашего DNS-сервера, перейдите на вкладку Advanced и затем включите
Включить автоматическую очистку устаревших записей — флажок. После этого укажите период очистки (это повторяющийся интервал для очистки на DNS-сервере) и нажмите
ОК
Если устаревание и очистка DNS не включены в зоне DNS, интегрированной в AD, нет необходимости реплицировать временные метки записей ресурсов DNS.Это потому, что эта информация нужна только для механизма старения и очистки, и там
не требуется для этой репликации, если она не включена. Вот почему, когда устаревание и очистка DNS отключены в зоне DNS, интегрированной в AD, временные метки записей ресурсов на ваших DC / DNS-серверах не согласованы (временная метка записи ресурса
обновляется на DNS-сервере, который обновил запись и не реплицирован на другие DC / DNS-серверы).
Когда старение и очистка DNS включены в зоне DNS, интегрированной с AD, обновление метки времени записи ресурса начнет реплицироваться на другие серверы DC / DNS.Затем важно, чтобы очистка зоны DNS
не выполняется, пока вы не убедитесь, что обновление ваших записей динамических ресурсов было выполнено и реплицировано. Если нет, вы можете увидеть массовое удаление записей DNS, которые являются законными и не должны удаляться.
Пример:
Предположим, у вас есть динамическая запись ресурса с именем Computer1 и у вас есть два контроллера домена DC1 и DC2, которые также являются DNS-серверами и размещают интегрированные в AD зоны DNS для вашего домена Active Directory.
Компьютер1 выполнил последнее обновление записи DNS 12.08.2013 17:03:26 на DC1. Отметка времени — 08.12.2013 17:00:00 на DC1. Его метка времени на DC2 — 25.10.2013 4:00:00 AM и не обновлялась по мере устаревания и очистки DNS.
не был включен в зоне DNS.
Предположим теперь, что мы включили устаревание и очистку DNS в зоне DNS 12.08.2013 в 18:00, очистка включена на уровне сервера на DC2 и будет выполняться в 19:00 для следующего цикла, а без обновления. и обновить
интервалы составляют семь (7) дней для каждого.Поскольку компьютер 1 не обновлял свою запись DNS, так как мы включили устаревание и очистку DNS в зоне DNS, а отметка времени на DC2 — 25.10.2013 (устаревшая запись), DC2 удалит запись ресурса Computer1, поскольку будет учитывать
он как несвежий. Этого не произойдет, если вы дождетесь, пока компьютер 1 снова обновит свою запись DNS, поскольку его временная метка будет реплицирована, и запись ресурса не будет считаться устаревшей на DC2.
Вот почему зона может быть очищена после
отметка времени используется для зон DNS, чтобы начать очистку.Это позволяет иметь достаточно времени для обновления и репликации записей динамических ресурсов перед началом очистки.
Вы можете увидеть эту временную метку в Zone Aging / Scavenging Properties
, если вы включили вид Advanced .
После цикла очистки DNS на DNS-сервере будет зарегистрировано одно из следующих событий:
- ID 2501: это регистрируется, когда есть записи DNS, которые были очищены
- ID 2502: регистрируется, когда запись DNS не была очищена.
Вам необходимо получить дату и время последнего цикла очистки DNS и добавить период очистки, чтобы определить, когда произойдет следующий цикл очистки DNS.
Пример:
Если последний цикл очистки DNS произошел 12.08.2013 в 18:00:00, а ваш период очистки составляет семь (7) дней, то следующий цикл очистки DNS будет 15.12.2013 в 18:00:00 PM.
Одного DNS-сервера с включенной очисткой DNS достаточно для правильной очистки DNS. Настройка очистки DNS на многих серверах, как правило, не рекомендуется, так как это делает устранение неполадок очистки DNS.
Проблемы (пример: удаление законных записей DNS) более сложны.
Можно ли вручную принудительно запустить цикл очистки DNS?
Да, можно запустить цикл очистки DNS вручную. Вам просто нужно щелкнуть правой кнопкой мыши на уровне DNS-сервера и затем запустить
Очистить устаревшие записи ресурсов . Учтите, что вам нужно подождать
зона может быть очищена после отметки времени (обсуждалось ранее), чтобы быть достигнута, чтобы иметь возможность запустить цикл очистки DNS вручную.
Что происходит с объектом AD записи ресурса при очистке?
При очистке записи ресурса она удаляется из кэша в памяти сервера DNS.Это означает, что он больше не загружается DNS, и для него невозможно выполнить разрешение DNS. Однако его объект AD не удаляется сразу.
Фактически, для атрибута dNSTombstoned записи ресурса будет установлено значение
ИСТИНА для своего объекта AD при очистке.
Ежедневно в 2 часа ночи DNS-сервер будет сканировать зоны, интегрированные с AD, и определять, готовы ли захороненные записи к удалению. По умолчанию срок хранения составляет семь (7) дней, но его можно изменить.
с помощью команд dnscmd с / config / DsTombstoneInterval
Переключатель .
Dnscmd :
http://technet.microsoft.com/en-us/library/cc772069.aspx
Примечание: В случае обновления записи ресурса, когда объект AD еще не удален,
dNSTombstoned Значение атрибута будет изменено на «Не задано», и запись ресурса будет загружена DNS и снова станет частью кэша DNS в памяти. Однако, если обновление запрашивается компьютером с другим SID (например, компьютер
был переустановлен и снова присоединиться к домену AD), то существующий объект AD будет удален, не дожидаясь окончания периода хранения, и будет создан новый.
Управление SID в Active Directory:
http://social.technet.microsoft.com/wiki/contents/articles/20590.management-of-sids-in-active-directory.aspx
Настроенные разрешения, которые применяются к записям DNS, сбрасываются до значения по умолчанию, когда эти записи удаляются и захоронены на DNS-сервере под управлением Windows Server 2003:
http://support.microsoft.com/kb/952087
Размер Active Directory быстро увеличивается на контроллере домена под управлением Windows Server 2003 или Windows Server 2008 R2, на котором размещена роль DNS-сервера :
http: // поддержка.microsoft.com/kb/2548145/en-us
Можно ли получать информацию об устаревании записей DNS?
Да, это можно сделать с помощью Powershell. Вы можете загрузить следующий модуль управления DNS и использовать следующий сценарий для периодического получения по почте списка устаревших записей DNS:
http://dnsshell.codeplex.com/
модуль импорта «C: \ DnsShell \ DnsShell.psd1» $ smtpServer = «mail.contoso.com» $ mailsender = «уведомление @ contoso.com « $ mailreceiver = «[email protected]» $ DNSzone = «Insead.test» $ agerecords = $ null $ age = (Get-DnsZone $ DNSzone) .NoRefreshInterval.TotalMilliseconds + (Get-DnsZone $ DNSzone) .RefreshInterval.TotalMilliseconds foreach ($ запись в (Get-DnsRecord -ZoneName $ DNSzone)) { if (($ record.timestamp -ne «Static») -and ((Get-Date) .Addmilliseconds ((- 1) * $ ageing) -ge $ record.отметка времени)) { $ agerecords + = $ record.name + «` r`n « $ имя записи } } если ($ agerecords -ne $ null) { $ msg = новый объект Net.Mail.MailMessage $ smtp = новый объект Net.Mail.SmtpClient ($ smtpServer) $ сообщ.От = $ mailsender $ msg.To.Add ($ mailreceiver) $ msg.Subject = «[Предупреждение] Новые записи DNS устарели и будут удалены во время следующего цикла очистки» $ msg.Body = $ agerecords $ smtp.Send ($ msg) } |
Перед использованием скрипта необходимо обновить следующие переменные:
- $ smtpServer: замените значение переменной DNS-именем или IP-адресом вашего SMTP-шлюза.
- $ mailsender: замените значение переменной на адрес электронной почты отправителя уведомления, который вы хотите использовать.
- $ mailreceiver: замените значение переменной адресом электронной почты администратора домена Active Directory (вы можете указать адрес электронной почты списка рассылки, если уведомление необходимо отправить группе лиц)
- $ DNSzone: замените значение переменной именем зоны DNS для проверки
Примечание: Вам также необходимо указать путь к файлу psd1 для загрузки (тот, который вы загружаете из проекта codeplex).В предоставленном сценарии путь — «C: \ DnsShell \ DnsShell.psd1».
Можно запланировать периодический запуск сценария перед каждым циклом очистки DNS для сообщения об устаревших записях DNS.
Другие ссылки по устареванию и очистке DNS:
Не бойтесь очистки DNS. Просто будьте терпеливы:
http://blogs.technet.com/b/networking/archive/2008/03/19/don-t-be-afraid-of-dns-scavenging-just-be-patient.aspx
Внутренняя очистка DNS (или атрибут dnsTombstoned) для интегрированных зон AD:
http: // blogs.technet.com/b/isrpfeplat/archive/2010/09/23/dns-scavenging-internals-or-what-is-the-dnstombstoned-attribute-for-ad-integrated-zones-dstombstoneinterval-dnstombstoned.aspx
.
Как узнать, какой DNS-сервер я использую?
Вы настроили новый DNS-сервер на своем компьютере и не знаете, работает он или нет. Что ж, есть способы это проверить. Вы можете сделать это изначально через командную строку или с помощью сторонних приложений.
Приоритет DNS
Прежде чем мы начнем, важно понять приоритет DNS.
Все мы знаем, что по умолчанию мы используем DNS-серверы, предоставленные нашим интернет-провайдером.Но что происходит, когда вы вводите DNS на своем локальном компьютере или маршрутизаторе? Какой DNS сейчас имеет приоритет?
Дело вот в чем: если вы измените DNS-сервер на маршрутизаторе (скажем, Google DNS), то каждое устройство, подключенное к маршрутизатору, автоматически начнет использовать Google DNS в качестве DNS-сервера. Однако, кроме того, если вы измените DNS-сервер на своем локальном компьютере, скажем, Cloudflare DNS, эти настройки переопределят настройки DNS маршрутизатора. Теперь только ваш компьютер будет использовать Cloudflare DNS в качестве DNS-сервера, в то время как остальные устройства по-прежнему будут использовать Google DNS.
Итак, если мы ранжируем приоритет DNS-серверов, он будет примерно таким:
- Если вы ввели собственный DNS-адрес на своем компьютере или смартфоне, этот DNS-сервер будет использоваться.
- Если вы не ввели настраиваемый DNS на своем устройстве, будет использоваться DNS, доступный на маршрутизаторе.
- Если вы не ввели настраиваемый DNS на своем компьютере и маршрутизаторе, будет использоваться DNS, предоставленный вашим интернет-провайдером.
Ниже приведено полное руководство по настройке DNS-сервера, или вы также можете посмотреть короткое видео
Самый простой способ — проверить онлайн
Самый быстрый способ проверить, какой DNS-сервер вы используете, — это использовать онлайн-сайты, такие как WhatsMyDNSserver.Просто зайдите на сайт и нажмите кнопку с надписью: « Какой у меня DNS-сервер? “. И он покажет ваш текущий DNS-сервер.
Но этот метод не безошибочный. Даже после изменения DNS он все равно забирает старый DNS из кеша. Например, я изменил DNS своего компьютера с Google DNS на Cloudflare, но на сайте все еще написано, что я использовал Google DNS — даже после перезапуска Mac. Наконец, мне удалось решить эту проблему, повторно открыв сайт в окне в режиме инкогнито. Если вы столкнулись с подобной проблемой, вы можете очистить кеш DNS или очистить DNS.
Другие поставщики DNS, такие как Cloudflare, также предоставляют раздел на своем веб-сайте, который может определить, используете ли вы Cloudflare DNS, вы можете получить доступ к этой веб-странице по этой ссылке.
Аналогичным образом, если вы переключились на OpenDNS, вы можете проверить свой DNS-сервер по этой ссылке.
2. Какой DNS-сервер я использую — Windows 10/8/7
Есть несколько способов проверить DNS-сервер, который вы используете в Windows. Вот пара из них.
Метод 1
Чтобы проверить DNS-сервер, который вы используете в Windows, просто откройте командную строку.Для этого в Windows 10 нажмите Пуск , затем Все программы , затем Стандартные и, наконец, Командная строка . и выполните следующую команду.
ipconfig / all | findstr "DNS \ Серверы"
Если вам интересно, все, что делает команда, это извлекает все значения конфигурации сети, а затем отфильтровывает из них строку «DNS-серверы».
Метод 2
Второй метод намного проще и имеет удобную команду.То есть просто выполните nslookup любого веб-адреса, и Windows покажет, какой DNS-сервер вы используете, как часть поиска. Чтобы выполнить nslookup, просто используйте команду ниже. Вы можете заменить «google.com» на любой желаемый веб-адрес. Фактически, вы даже можете заменить его своим собственным IP-адресом.
nslookup google.com
3. Какой DNS-сервер я использую — Linux
Чтобы проверить, какой DNS-сервер вы используете в Linux, просто откройте терминал и выполните nslookup для любого веб-сайта.Просто введите следующую команду. Вы также можете заменить google.com своим IP-адресом.
nslookup google.com
Если вам интересно, «nslookup» — это утилита командной строки, которая преобразует DNS-имя в IP-адрес, таким образом выявляя DNS-сервер, используемый в процессе.
Чтение: лучшие приложения для шифрования DNS-трафика
4. Какой DNS-сервер я использую — Mac
Аналогичным образом в macOS откройте терминал и введите следующую команду.
Чтобы запустить терминал в macOS, нажмите CMD + ПРОБЕЛ, чтобы запустить Spotlight, а затем введите «терминал». и нажмите Enter. Кроме того, вы можете открыть папку «Приложения», затем открыть «Утилиты» и дважды щелкнуть «Терминал». Когда откроются окна терминала, скопируйте и вставьте следующую команду и нажмите Enter.
nslookup google.com
5. Какой DNS-сервер я использую — Android
На рынке есть несколько приложений для сканирования сетей Android, которые позволяют узнать, какой DNS вы используете.Я бы предложил Network Info II. Приложение бесплатное, легкое, без рекламы.
Просто загрузите его из игрового магазина, откройте его и перейдите на вкладку WiFi. Там вы увидите записи DNS 1 и DNS 2. Это DNS-серверы, которые вы используете.
Чтение: изменение настроек Android DNS с помощью этих 5 приложений смены DNS
Кроме того, вы также можете попробовать сетевые утилиты PingTools. В нем есть одни из лучших и полезных инструментов. Вы также получаете дополнительные утилиты, которые могут выполнять такие задачи, как сканирование UPnP, пробуждение LAN, сканирование портов и т. Д.
Чтобы узнать DNS-адрес, установите приложение из Play Store и откройте его. Теперь нажмите на значок «Маршрутизатор» или «Интернет», и он отобразит все сведения о сети. Здесь вы можете узнать, какой DNS вы используете, просмотрев записи DNS 1 и DNS 2.
6. Какой DNS-сервер я использую — iOS
Network Analyzer — бесплатное приложение для iOS, которое показывает полезную информацию о вашей сети. Существует премиум-версия этого приложения, которая стоит 3 доллара, но для нашей простой потребности достаточно облегченной версии (с поддержкой рекламы).Просто установите и откройте приложение, вы увидите, какой DNS вы используете, рядом с «IP-адресом DNS-сервера».
7. Какой DNS-сервер я использую — маршрутизатор
По умолчанию ваш маршрутизатор использует DNS-сервер, предоставленный вашим интернет-провайдером, но если вы подозреваете, что кто-то изменил его на вашем маршрутизаторе, вот как его найти. Просто откройте веб-браузер, введите IP-адрес маршрутизатора (обычно 192.168.1.1 или 192.168.0.1) и войдите в систему, указав имя пользователя и пароль. У большинства маршрутизаторов есть возврат учетных данных.Когда вы увидите веб-интерфейс маршрутизатора, в зависимости от модели маршрутизатора найдите записи DNS 1 и DNS 2. Обычно это параметр «Настройка сети» или «Состояние».
Если вы найдете здесь IP-адрес стороннего DNS-сервера, попробуйте поискать в Google или выполнить nslookup с IP-адресом, чтобы определить связанный с ним сервер. Если вы все еще не уверены в службе DNS, рекомендуется изменить DNS на локальном компьютере. Это переопределит настройку вашего маршрутизатора, и теперь вы можете спокойно наслаждаться просмотром веб-страниц.
Заключительные слова
Итак, это были некоторые из способов узнать, какой DNS-сервер вы используете. В зависимости от вашей операционной системы выберите наиболее эффективный способ. В случае возникновения каких-либо других вопросов или трудностей, дайте мне знать в комментариях ниже.
.