Что такое dns сервер и как его правильно настроить

Dns — что это

Структура доменного имени

Вместо обычных имен компьютеров, которые состоят из одного слова в системе DNS используются доменные имена. Имя компьютера состоит из нескольких частей, которые отделены друг от друга точками. Например, веб-сервер сайта о Мобильной связи и Технологиях имеет следующие имя www.zvondozvon.ru. Имя состоит из следующих частей ru это домен верхнего уровня, следующий домен отделён от него точкой zvondozvon домен второго уровня, и последний компонент www это имя компьютера в домене второго уровня.

Корневой домен

Важным элементом доменного имени, которое обычно не пишут, является корневой домен, он указывается точкой в конце. Если вы не укажете точку, то ничего страшного не произойдет, она подразумевается в конце каждого доменного имени.

Дерево доменных имен

Доменные имена образуют дерево. Корнем дерева является корневой домен, который представлен точкой. Затем идут домены верхнего уровня, которые бывают трех типов:

  1. Домены для различных типов организаций, которые используются, как правило внутри США (org, com, net). Домен org для некоммерческих организаций, com для коммерческих организаций, net для организации связанных с компьютерными сетями, есть также и другие домены.
  2. Тип доменов верхнего уровня, домены для стран. Каждая страна имеет свой домен. Домен Россия ru, домен Великобритании uk, и относительно недавно появились новые типы доменов верхнего уровня в которых можно использовать не только символы английского алфавита. Для России это домен рф.
  3. Затем идут домены второго уровня, например cisco.com, yandex.ru или яндекс.рф русскими буквами.
  4. На третьем уровне могут находиться, как домены следующего уровня их называют поддомены или адреса компьютера в домене второго уровня. Например, в домене yandex.ru есть компьютеры с адресами www.yandex.ru веб-сервер компании yandex, maps.yandex.ru сервер яндекс карт, такси.yandex.ru сервер яндекс такси и большое количество других серверов.

Доменная зона

Важным понятием в системе DNS является доменная зона. Это запись адресов всех компьютеров и всех поддоменов в некотором домене.

Корневая доменная зона содержит записи всех поддоменов первого уровня (org com net ru uk рф). Зона ru содержит записи всех доменов второго уровня (yandex urfu), зона urfu.ru записи всех поддоменов и всех компьютеров в домене urfu, и вот здесь еще показаны две отдельные зоны для разных институтов urfu, институт естественных наук (ins) и институт математики и компьютерных наук (imkn). Эти зоны содержат DNS-записи, о компьютерах соответствующих институтов.

Доменная зона является некоторым аналогом файла itc/hosts только в ней содержится не вся информация об именах компьютерах в сети, а некоторый ее фрагмент. Доменные зоны распределены по серверам DNS. Одну и ту же доменную зону может обслуживать несколько серверов DNS.

Например, корневую зону обслуживают больше всего серверов, так как к ним больше всего запросов. Все корневые серверы DNS содержат одинаковые записи. Зону ru также обслуживает несколько серверов DNS, у которых одна и та же база данных записи и доменов второго уровня.

Необязательно иметь выделенные DNS сервер для каждой доменной зоны, например DNS-сервер urfu может обслуживать зоны urfu.ru и ins.urfu.ru, а институт математики и компьютерных наук может иметь свой выделенный DNS сервер, который будет обслуживать зону imkn.urfu.ru.

Важным понятием в системе DNS является делегирование. Например DNS-сервер urfu отвечает за зону urfu.ru, но только часть информации об этой зоне хранится непосредственно на этом сервере, то что относится к urfu.ru и ins.urfu.ru. А для зоны imkn.urfu.ru создан отдельный сервер, таким образом сервер urfu.ru делегирует полномочия управления под доменом imkn.urfu.ru другому серверу. Чтобы было возможно делегирование на DNS сервере urfu.ru делаются соответствующие конфигурационные записи, которые указывают на DNS-сервер ответственный за зон, в нашем случае imkn.urfu.ru.

Инфраструктура DNS

Инфраструктура системы доменных имен состоит из следующих компонентов.

Дерево серверов DNS, которые мы рассмотрели выше, клиент DNS это как правило наш компьютер, и сервер разрешения имен DNS по-английски его называют DNS resolver, он получает запрос от клиента и выполняет поиск необходимого ip-адреса в дереве доменных имен.

DNS-зона

Зона – регистр, в котором находятся все наименования доменов и им соответствующие IP-адреса. Этот сервис обслуживают два сервера. Главный хранит реестр данных, подчиненный, или вторичный, получает запросы от пользователей и передает вышестоящему.

Задержка при регистрации домена

Возникают ситуации, когда владелец оплачивает очередной срок пользования доменным именем или покупает сайт, но ресурс не работает. Есть несколько причин возникновения этой ситуации.

Не обновилась информация в DNS-системе

В сервисе DNS Google происходит обновление данных, оно идет по иерархии от подчиненных серверов к вышестоящим. Время поступления информация по всем компонентам системы занимает от 1 часа до суток. В некоторых зонах (.ru, .рф) запросы на регистрацию новых имен поступают несколько раз в день.

Домен не зарегистрирован в сервисе

После оплаты прав использования домена может пройти некоторое время, прежде чем имя будет зарегистрировано в системе. Оборудование настраивается на отправку обновленных данных несколько раз в сутки. После получения сервисом DNS Google информации ресурс будет доступен пользователям.

Не оплачен хостинг

Для размещения сайта используются услуга хостинга. На жестком диске удаленного компьютера хранятся ресурсы. Если не поступает оплата за hosting, доступ может быть ограничен. Владельцам необходимо проверить своевременность перевода денег.

Могут быть другие причины, по которым dns-сервер недоступен для пользователей ресурса. Владельцам сайта нужно связаться с администрацией компании, осуществляющей регистрацию доменного имени, и получить консультацию. Как выбрать лучшего доменного регистратора можно посмотреть здесь.

Зачем нужна технология DNS и как она работает

DNS — фундаментальная технология современной интернет-среды, которая отвечает за хранение и обработку информации о доменных адресах. Инструмент используется для преобразования доменных имен в IP-адреса в момент отправки пользователем запроса на сервер. IP-адрес — уникальный числовой идентификатор устройства. Он позволяет узнать, откуда загружается страница нужного сайта. Получается, технология DNS служит своеобразной «телефонной книгой», в которой хранится база доменных имен и их адресов.

Работу DNS-технологии в качестве этой самой «телефонной книги» обеспечивает  DNS-сервер— оборудование или программное обеспечение, с помощью которого предоставляется доступ к системе доменных имен, хранятся данные о соответствии конкретного IP-адреса соответствующему домену, а также осуществляется кэширование информации в виде IP-адреса и соответствующего ему домена других DNS-серверов.

Система доменных имен работает не в виртуальном пространстве, а на определенных физических устройствах. Все данные о доменах хранятся в формате записей на компьютерах, оснащенных соответствующим программным обеспечением.

Ниже список самых популярных и общедоступных DNS-серверов (актуально на октябрь 2021):

  • Google: 8.8. 8.8 & 8.8. 4.4.
  • Quad9: 9.9. 9.9 & 149.112. 112.112.
  • OpenDNS: 208.67. 222.222 & 208.67. 220.220.
  •  Cloudflare: 1.1. 1.1 & 1.0. 0.1.
  • CleanBrowsing: 185.228. 168.9 & 185.228. 169.9.
  • Alternate DNS: 76.76. 19.19 & 76.223. 122.150.
  • AdGuard DNS: 94.140. 14.14 & 94.140.

Схема работы DNS-технологии

Пользователь вводит в адресную строку браузера доменное имя, а преобразователь доменных имен обращается к DNS-серверу. После получения IP-адреса сервер передает его браузеру пользователя.

Принцип работы DNS-технологии

Затем браузер делает запрос на сервер по этому IP-адресу и после получения ответа отображает страницу ресурса.

Выделим основные характеристики DNS-технологии:

  • Хранение и управление данными распределенного характера. То есть отдельный DNS-сервер хранит только информацию по делегированным ему доменам.
  • Кэширование данных.При помощи кэширования ускоряется загрузка нужной информации с сервера. Ведь при обращении к любому ресурсу (даже при запросе внутренних страниц) серверы проверяют связь домена и IP-адреса. Но если запрашиваемый ресурс расположен, допустим, в другой точке мира, то скорость его загрузки может быть довольно медленной. Например, пользователь регулярно делает запросы на ресурс, который находится в другом государстве. Расположенный ближе всего к пользователю DNS-сервер кэширует данные о ресурсе и при следующим запросе выдает их клиенту максимально быстро. Источником кэширования, из которого поступают данные о сайте, являются первичные и вторичные DNS-серверы.
    Для уменьшения уровня нагрузки DNS-сервер может хранить некоторое время определенное количество информации о других, не делегированных ему доменах.
  • Резервирование. Несколько изолированных логически и физически DNS-серверов хранят и обрабатывают информацию об одних и тех же узлах. Благодаря такому подходу обеспечивается доступность информации даже при сбое одного или нескольких серверов.
  • Иерархическая структура. База доменных имен организована по принципу иерархии: корневой домен расположен на верхнем уровне, к которому примыкают домены первого уровня, к ним присоединяются домены второго уровня и т.д.

Как работают DNS-серверы:

  • Пользователь вводит запрос в строке браузера. Тот в свою очередь перенаправляет его DNS-серверу, который ищет совпадения между доменным именем и IP. При обнаружении совпадений браузер делает запрос по IP-адресу сервера и получает в ответ нужную информацию, после чего браузер отображает ее. Если совпадения не обнаружены, тогда запрос перенаправляется корневому серверу.
  • Корневой сервер снова перенаправляет запрос серверу первого уровня, а тот отправляет запрос серверу второго уровня. Процесс продолжается до тех пор, пока совпадение не будет найдено.
  • Как только IP-адрес найден, браузер направляет запрос серверу, получает ответ и отображает полученную информацию.

Иногда DNS-серверы обрабатывают обратный запрос: когда пользователь хочет узнать доменное имя сайта по его IP-адресу. На сегодняшний день функционирует более десяти корневых серверов, которые расположены в разных точках мира.

Почему указывают DNS-серверы

Главный вопрос, который многие задают – для чего нужен персональный DNS-сервер и можно ли обойтись без него? Для этого достаточно рассмотреть следующую ситуацию.

Вы создали новый домен, соответственно, информация о нем еще не доступна прочим серверам. Чтобы они узнали о существовании вашего домена, нужно создать ресурсные записи, а они включают в себя специальные настройки и указание DNS-серверов.

После заполнения записей в течение суток данные будут обновлены, а информация о домене станет доступна других серверам. Обычно DNS прописывают парами, то есть указывается первичный и до 12 вторичных сервисов. Благодаря этому удается обеспечить надежность ресурса.

При необходимости вы в любой момент сможете изменить список ДНС или прописать новый. Это можно сделать в настройках домена.

Что они делают

Чтобы лучше понять что делает каждый тип, проследим за процессом открытия сайта в браузере.

  1. Переходим на сайт «google.com». Браузер передаёт этот запрос DNS-клиенту, который встроен в операционную систему.

  2. DNS-клиент проверяет локальный кеш на наличие IP адреса для запрашиваемого названия.

    Если соответствие найдено, то IP передаётся браузеру и он на него отправляет запрос для получения содержимого сайта. Работа с DNS на этом заканчивается.

    Если не найдено — отправляет запрос на внешний рекурсивный DNS-сервер, адрес которого указывается в настройках сетевого адаптера компьютера или получается автоматически от Интернет-провайдера по протоколу DHCP.

    Узнать IP адрес рекурсивного DNS-сервера можно командой «nslookup» в командной строке Windows (cmd). Просто запросите информацию для любого сайта.

  3. Рекурсивный DNS-сервер также ищет в своей базе нужный IP адрес и если не находит, то последовательно делает следующее:

    • Запрашивает у одного из корневых DNS-серверов IP адрес TLD-сервера, который отвечает за доменную зону «.com» (ведь ищем «google.com»).
    • Обращается к TLD-серверу зоны «.com», чтобы получить IP адрес авторитативного DNS-сервера, на котором есть информация о «google.com».
    • Запрашивает у авторитативного DNS-сервера IP сайта «google.com».
    • Наконец, получает нужный IP и отсылает его DNS-клиенту или сообщает — ничего не нашел, ошибка «DNS_PROBE_FINISHED_NXDOMAIN».
  4. DNS-клиент компьютера, получив IP для «google.com», кеширует информацию, чтобы при повторном запросе не проделывать предыдущие шаги, и передаёт браузеру.

  5. Браузер посылает на этот IP адрес http-запрос, чтобы в ответ получить содержимое сайта.

Настройка DNS

Каким образом можно изменить и указать DNS сервера для домена.

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

Запись DNS серверов выглядит следующим образом:

ns1.vashhosting.runs2.vashhosting.ru

Найти эти адреса вы можете:

  • в письме которое присылает вам хостинг провайдер сразу после заказа хостинга;
  • в панели управления хостингом, например в разделе домены;
  • обратившись в службу поддержки хостинга.

После захода в данный раздел откроется форма в поля которой необходимо внести соответствующие DNS-сервера. Для этого в моем случае нужно снять галочку из пункта «Использовать имена регистратора» и далее в поле DNS1 указать ns1.vashhosting.ru, а вполе DNS2 указать ns2.vashhosting.ru. IP адреса можно не указывать поэтому некоторые хостинг-провайдеры их не выдают. После заполнения полей нажмите кнопку «Изменить».

После этого необходимо подождать некоторое время пока не произойдет сопоставление DNS серверов. Для этого может потребоваться от нескольких часов до целых суток. Поэтому сразу как только вы их укажете ваш сайт загружаться не будет.

Как указать свои DNS сервера для домена

Иногда необходимо указать свои DNS сервера, т. е. DNS сервера которые расположены в этом же домене. Услуга свои DNS сервера имеется практически на всех VPS / VDS предоставляемых хостинг провайдерами. В этом случае, например для данного сайта в качестве DNS-сервера указывается ns1.webmastermix.ru и ns2.webmastermix.ru.

При этом необходимо учитывать следующие моменты:

1. Если свои DNS сервера вы указываете для домена находящегося в зонах RU, SU, РФ, то обязательно необходимо указывать для каждого DNS сервера его IP адрес. При этом каждый указываемый IP адрес должен отличаться хотя бы на одну цифру, указывать одинаковые IP не допустимо.

2. Если те DNS сервера, которые вы указываете для своего доменного имени находятся в другом домене, например если для домена webmastermix.ru указать DNS сервера типа 1ns.vash-sait.ru или 2ns.vash-sait.ru, то указывать IP адреса не нужно.

3. Если вы указываете свои DNS сервера для международного домена, то эти DNS-сервера должны быть заранее зарегистрированы в международной базе NSI Registry. Указать их без регистрации в этой базе не возможно. При регистрации в NSI Registry вам необходимо будет ввести IP адреса для каждого DNS-сервера. Поэтому при указании DNS серверов для домена указывать IP адреса нет необходимости.

Прикрепляем IP адрес к домену

Чтобы прикрепить IP адрес к домену, необходимо зайти в настройку DNS записей. Как это сделать будет зависеть от панели управления хостингом. Например в ISPmanager нужно зайти в раздел «Доменные имена», далее кликнуть 2 раза по необходимому доменному имени и указать или отредактировать следующие три записи (чтобы создать запись кликните по иконке «Создать», чтобы изменить кликните по необходимой записи):

Для первой записи в поле «Имя» укажите www, в выпадающем списке «Тип» выберите A (адрес Internet v4), а в поле «Адрес» укажите необходимый IP адрес.

Для второй записи в поле «Имя» укажите @ (собака), в выпадающем списке «Тип» выберите A (адрес Internet v4), а в поле «Адрес» укажите необходимый IP адрес.

Для третьей записи в поле «Имя» укажите * (звездочка), в выпадающем списке «Тип» выберите A (адрес Internet v4), а в поле «Адрес» укажите необходимый IP адрес.

Видео: Как работает система DNS

 

Рекомендуем ознакомиться:

Подробности

Опубликовано: 19 Ноябрь 2013

Обновлено: 20 Ноябрь 2013

Просмотров: 42536

Корневые серверы DNS

Как уже говорилось выше, DNS, по сути, является иерархической системой. В верхней части этой системы находится то, что мы называем корневым сервером DNS. Эти серверы находятся под контролем различных организаций, действующих по согласию с ICANN (Корпорация по управлению доменными именами и IP-адресами).

В настоящее время 13 корневых серверов находятся в эксплуатации. Тем не менее, так как каждую минуту появляется немыслимое количество имен для преобразования, каждый из этих серверов имеет зеркало. Интересно, что все зеркала для одного корневого сервера делят один IP-адрес. Когда выполняется запрос к определенному серверу, он будет перенаправлен к ближайшему зеркалу этого корневого сервера.

Что делают эти корневые серверы? Они обрабатывают запросы на информацию о доменах верхнего уровня. Поэтому если приходит запрос о чем-то, что DNS-сервер не может преобразовать, то запрос перенаправляется в корневой DNS-сервер.

Корневые серверы на самом деле не обладают информацией о том, где размещен домен. Они, однако, в состоянии направить запрашивающего к DNS-серверу, который обрабатывает нужный домен верхнего уровня.

Таким образом, если запрос «www.wikipedia.org» производится в корневой сервер, то он ответит, что не может найти результат в своих записях. Он проверит свои файлы зоны на наличие соответствий «www.wikipedia.org». И также не найдет их.
Вместо этого он найдет запись для домена верхнего уровня «org» и предоставит запрашивающему адрес DNS-сервера, отвечающего за адреса «org».

Зачем нужны DNS-серверы и какими они бывают

Главная задача серверов — хранить данные о доменах и предоставлять информацию о них по запросам пользователей. А ещё они кэшируют DNS-записи с других серверов. Это позволяет браузерам быстрее получать данные о сайтах.

Один сервер не может хранить информацию обо всех сайтах в интернете. Поэтому они всегда работают в связке.

Обычно всё работает в связкеИллюстрация: Polina Vari / Skillbox Media

Давайте подробнее рассмотрим, как браузер обращается к серверам и как они после этого ищут нужный IP-адрес.

Когда пользователь вводит имя сайта в адресную строку браузера, компьютер сначала обращается к локальному файлу настроек DNS — файлу hosts. В нём содержатся IP-адреса всех сайтов, на которые пользователь заходил с этого устройства. Если нужного адреса там нет, компьютер направляет запрос на локальный сервер интернет-провайдера пользователя.

Сначала компьютер обращается к файлу hosts, а потом уже — к локальному серверуИллюстрация: Polina Vari / Skillbox Media

На локальном сервере происходит взаимодействие между другими серверами из региона, в котором находится запрошенный сайт. Локальный сервер несколько раз обращается к разным региональным и наконец получает информацию о сайте, а затем отправляет его обратно пользователю.

Не нашли адрес в своём регионе — найдём в другихИллюстрация: Polina Vari / Skillbox Media

Чтобы локальный сервер облегчил себе жизнь в будущем и меньше обращался к другим, при получении нужного IP-адреса он сохраняет его у себя в памяти. Это и называется кэшированием.

Теперь при повторном обращении к сайту он откроется быстрее, потому что информация находится недалеко. Но кэш не хранится вечно — время от времени он очищается, а значит, редко запрашиваемые сайты почти каждый раз будут искаться «где-то там».

Делегирование ответственности

В DNS важным понятием является делегирование ответственности. Информация о компьютерах входящая в ту или иную доменную зону хранится на DNS сервере, который отвечает за работу этой зоны. Но нам необходимо знать, какие серверы отвечают за ту или иную зону.

Записи серверов имен

Для этого используются dns-записи типа NS (Name Server). Например, за доменную зону yandex.ru отвечают серверы ns1.yandex.ru и ns2.yandex.ru, а за доменную зону urfu.ru отвечает целых 3 сервера. Записи типа ns задаются на домене более высокого уровня в нашем случае на сервере, который отвечает за зону ru. Именно этот сервер содержит записи ns для домена yandex.ru и для домена urfu.ru.

Но нам недостаточно знать только доменные имена dns-серверов, необходимо знать их IP адреса. Для этого используются «приклеенные» записи А, которые указывают IP-адреса. Вся остальная информация о делегированных доменных зонах хранится на этих dns серверах.

Определение имени по IP-адресу

Кроме определения ip адреса по компьютеру, по доменному имени, система dns может использоваться для обратной задачи определения доменного имени компьютера по его IP адресу. Для этого используются специальные зоны, называются обратные (reverse) или реверсивные.

Реверсивная зона содержит записи типа PTR (Pointer), которые ставят в соответствии IP-адрес компьютера доменному имени. Однако из-за технических ограничений DNS не может работать напрямую с IP адресами, поэтому для обратных зон был придуман обходной путь, представлять IP адрес в виде доменного имени. Для этих целей создан специальный домен in-addr.arpa и в этом домене IP адреса записываются в обратном порядке, например адрес 77.88.55.66 в обратной зоне будет записан следующим образом 66.55.88.77.in-addr.arpa.

Как определить DNS сайта?

Для этого существует достаточно большое количество онлайн-сервисов. Наиболее популярный — Whois. Просто вбиваете в строку поиска домен интересующего сайта и получаете полную информацию по нему: занят он или свободен, дата создания и период оплаты, а также адреса DNS-серверов – вот эта информация является ответом на вопрос об определении DNS сайта.

Например, для Uguide.ru действующими являются 3 сервера: ns1.ucoz.net, ns2.ucoz.net и ns3.ucoz.net. Из названий серверов несложно вычислить хостера, в нашем случае речь идёт о Ucoz.net. По такому же принципу вы можете получить информацию о любом другом сайте.

Выводы

DNS – крайне полезная технология. Благодаря ей мы можем вводить в браузере доменные имена сайтов вместо IP-адресов вроде 225.196.120.223. Работает по иерархической системе – присутствует деление на сервера по старшинству и зоны. Одному домену могут соответствовать сразу несколько IP-адресов – например, сайт, почта, поддомены и т. д. Все связи домена с его IP-шниками содержится в файле DNS-зоны, который лежит на DNS-сервере.

При работе с хостингом вы столкнётесь с NS-данными, которые содержат имена всех DNS-серверов, которые обслуживают ваш домен. Они пригодятся, к примеру, при делегировании домена от стороннего регистратора, чтобы закрепить его за IP-адресом(ми), которые предоставит хостинг-провайдер. Домены в процессе жизни могут переходить из рук в руки, получая разные IP-адреса: просрочили продление – кто-то купил доменное имя и поселил на него свой сайт.

Отметим, что 4-числовые IP-адреса (стандарт IPv4) становятся всё более дефицитным ресурсом. Общее количество возможных комбинаций равно 4 294 967 296 – вроде бы огромная цифра, но с распространением устройств, сайтов и прочего даже такого количества становится мало. Поэтому всё большую популярность приобретает стандарт IPv6, который позволяет создавать IP-адреса большей длины и, следовательно, позволяет обслуживать намного большее количество серверов.

Ещё один нюанс в том, что IP-адресу могут соответствовать несколько доменных имён (виртуальный хостинг). Почему? Ради экономии пространства адресов, о котором упомянули выше. Да, при таком подходе домены не имеют однозначной обратной связи с IP-адресом. Веб-сервер должен анализировать полученные запросы и перенаправлять их на правильные сайты. Как? Это отдельный разговор. Но так бывает.

Итак, что же такое DNS? Давайте подытожим тему ёмким определением. DNS – это система для связывания доменных имён с IP-адресами серверов (компьютеров), которые соответствуют этим доменам. Технология включает в себя множество физических DNS-серверов, которые сообщают IP-адреса по запросу на конкретные доменные имена, а также регламентирующие работу всей этой машины документы.

Понравилась статья? Поделиться с друзьями:
ПоватТех
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: