Как только мы обращаемся к онлайн-службе (например, к веб-сайту или к адресу электронной почты), корневые серверы имён или корневые серверы (DNS) играют важную роль в поиске адреса таких служб. Они являются важным компонентом системы доменных имен (DNS), фундаментальным столбцом Интернета и необходимы для разрешения имен в DNS, где доменное имя транслируется в IP-адрес. Это необходимый процесс, учитывая, что IP-адреса являются единственно возможным средством для связи с сервером онлайн-службы и получения с него необходимых данных.
Определение: корневой сервер
Корневой сервер имен (также называемый корневым сервером DNS или для краткости корневым сервером) отвечает за фундаментальные функции при преобразовании доменных имен в IP-адреса: он отвечает на запросы клиентов в корневой зоне системы доменных имен (метки корневой зоны, самый большой слой в пространстве имён DNS). Здесь корневой сервер имён не выполняет само разрешение имен, и вместо этого информирует запрашивающего клиента о том, с какого сервера имён (DNS-сервер) он может получить дополнительную информацию относительно требуемого IP-адреса.
Это осуществляется с помощью так называемого файла данных зоны, который является важным элементом каждого корневого сервера DNS. Сам файл содержит только около 2 МБ. Но он содержит все имена и IP-адреса всех доменов верхнего уровня (TLD). Эти данные принадлежат к важной функции: корневой сервер полагается на этот файл, если он называет сервер имён, который содержит необходимые детали его запроса.
Но даже если они только перенаправляют запросы, корневые серверы имён незаменимы при разрешении имен. Без них DNS не сможет функционировать в своём текущем виде. Корневой сервер работает в корне системы доменных имен и в некоторой степени играет наиболее важную роль в регистрации и наименовании веб-адресов.
Как работают корневые серверы
Но как корневой сервер имен помогает определить IP-адрес веб-сайта? Чтобы понять механизм работы корневого сервера, сначала нужно кое-что узнать о фундаментальном процессе разрешения имён в DNS.
В дополнение к отдельному интернет-адресу (доменному имени), каждая интернет-служба имеет уникальный цифровой IP-адрес, который подключен к домену. После этого веб-сайту (например моему – mega-obzor.ru) будет присвоен IPv4-адрес – 185.211.244.129. Когда вы вызываете mega-obzor.ru в вашем браузере, буквенно-цифровое имя веб-сайта сначала необходимо преобразовать в адрес IUP, чтобы браузер мог затем представить страницу.
Процесс разрешения имени
Основная роль систем доменных имен заключается в переводе доменных имен в IP-адреса (также называемые «прямой поиск»). Процесс разрешения имен в сети создает иерархически организованный процесс. Но, прежде чем DNS можно будет назначить для выполнения разрешения имен, прикладная система в целом пытается найти необходимый IP-адрес в своих собственных данных.
Количество станций, через которые проходит запрос, и порядок, в котором он проходит, зависит от множества различных факторов. Факторы, которые могут влиять на этот процесс, включают операционную систему пользователя или то, используются ли UDP или NetBIO через TCP/IP в качестве протокола. Само разрешение имён всегда обрабатывается в DNS одинаково, когда оно проходит через разные серверы. Мы покажем вам некоторые из наиболее важных этапов, через которые проходит этот процесс при поиске соответствующего IP-адреса веб-сайта и какую роль здесь играет корневой сервер DNS.
- После того, как вы инициировали процесс вызова в вашем клиенте, локальному распознавателю DNS вашего компьютера назначается задача разрешения имён. Сопоставитель – это модуль, который действует как интерфейс между приложением и DNS-сервером. Во-первых, это записывается в файле hosts, чтобы можно было увидеть, есть ли запись для этого доменного имени. С помощью этого текстового файла, разрешение имён может осуществляться непосредственно через свой собственный компьютер – по крайней мере, это тот случай, если вы вручную назначаете имя хоста и IP-адрес в advanced. Учитывая что файл hosts является реликвией со времени до того, как появились системы доменных имен, и фактически в конечном итоге заменил их, большинство пользователей не поддерживают и не используют этот файл, поэтому он на самом деле не помогает, когда дело доходит до разрешения имен.
- Если в файле hosts нет записи для запрашиваемого веб-сайта, то приложение или операционная система проверяет кэш Вашего клиента (буферное хранилище) на наличие доменного имени. Если запрашиваемый сайт или другой сайт зарегистрирован с таким же интернет именем (.e.g ‘hosting.mega-obzor.ru/digitalguide) тлт уже был забронирован, и информация об этом всё ещё доступна в кэше, тогда IP-адрес будет взят из этого же места.
- Сервер имен маршрутизатора просматривает свой собственный кэш, чтобы увидеть, сохраняется ли в нём IP-адрес. Но не все серверы имен маршрутизаторов имеют кэш. Если кэш недоступен или IP-адрес недоступен, сервер имён маршрутизатора запрашивает IP-адрес веб-сайтов на сервере имён своего поставщика.
- Путём выполнения перекрестной ссылки с банком данных, DNS-сервер поставщика пытается найти IP-адрес вашего доменного имени. Здесь для сбора информации используются различные типы сопоставителей серверов имен.
- Если это не приводит к какому-либо результату, DNS-сервер провайдера затем обращается к корневому серверу и запрашивает дополнительную информацию через домен верхнего уровня искомого веб-сайта (задняя часть доменного имени состоит из TLD; примеры этого включают .ru или .com). Информация о том, какиt сервера доменных имен верхнего уровня (серверах имен TLD) ответственные за дальнейшие объявления для определённого TLD который хранится на корневом сервере DNS в файле корневой зоны. Для доменного имени ‘mega-obzor.ru‘, корневой сервер был отправлен на сервер имен TLD Verisign, так как эта организация отвечает за все веб-сайты с этим TLD.
- Затем сервер имен поставщиков отправляет запрос на сервер имен TLD и не получает окончательного ответа. Вместо этого он пересылается ещё раз: единственная функция сервера имен TLD включает в себя пересылку. Они позволяют запрашивающим серверам знать, на каком из полномочных DNS-серверов хранится желаемое доменное имя.
- На этом шаге сервер имён поставщика обращается к полномочному серверу, который отвечает за доменное имя и, наконец, получает желаемый IP-адрес.
- На последнем шаге сервер имён поставщика передаёт IP-адрес DNS-серверу маршрутизатора, который затем перенаправляется на локальный сопоставитель. Оттуда, IP-адрес передаётся в ваш браузер, так что он может сделать запрос на веб-сайт, загрузить его, и отобразить его.
Когда дело доходит до разрешения имён, можно использовать много разных серверов имен. Но корневые серверы имен играют важную роль в этом процессе: они отображают экземпляр самого высокого уровня в рамках разрешения имён – в случае, если доменное имя не может быть преобразовано в IP через локальный преобразователь или DNS-сервер провайдера, тогда корневой сервер становится отправной точкой для определения местоположения IP-адреса. И даже если на ранее упомянутом этапе разрешение имён всегда было успешным, необходимая информация из прошлого собирается корневым сервером DNS и сохраняется. По этой причине важно, чтобы сервер всегда мог выполнять и поддерживать ваш сервис.
Обзор корневого сервера имен
Всего имеется 13 основных корневых серверов DNS, каждый из которых назван буквами от «A» до «M». Все они имеют адрес IPv4 и большинство имеют адрес IPv6. Ответственность за управление корневым сервером лежит на корпорации ICANN (Интернет-корпорация по присвоению имён и номеров). Но они управляются различными учреждениями, которые гарантируют, что обмен данными в корневой зоне всегда остаётся корректным, доступным и безопасным. В дополнение к их отдельным операторам в этом обзоре также отображаются отдельные корневые серверы имен.
буквы DNS корневых серверов | IPv4 адрес | IPv6 адрес | Оператор |
---|---|---|---|
A | 198.41.0.4 | 2001:503:ba3e::2:30 | VeriSign |
B | 192.228.79.201 | 2001:478:65::53 | USC-ISI |
C | 192.33.4.12 | 2001:500:2::c | Cogent Communications |
D | 199.7.91.13 | 2001:500:2d::d | University of Maryland |
E | 192.203.230.10 | NASA | |
F | 192.5.5.241 | 2001:500:2f::f | ISC |
G | 192.112.36.4 | U.S. DoD NIC | |
H | 128.63.2.53 | 2001:500:1::803f:235 | US Army Research Lab |
I | 192.36.148.17 | 2001:7FE::53 | Autonomica |
J | 192.58.128.30 | 2001:503:c27::2:30 | VeriSign |
K | 193.0.14.129 | 2001:7fd::1 | RIPE NCC |
L | 199.7.83.42 | 2001:500:3::42 | ICANN |
M | 202.12.27.33 | 2001:dc3::35 | WIDE Project |
Каждый из этих корневых серверов имён содержит идентичную копию файла корневой зоны, который может время от времени обновляться, например, при изменении TLD, отвечающего за доменное имя. Изменение файла корневой зоны является довольно сложным процессом: как только заявка на обновление зарегистрирована, она затем проверяется IANA (Управление по присвоению номеров в Интернете; подразделение ICANN). Если всё будет правильным, тогда Министерство торговли США должно одобрить заявку, учитывая, что ICANN обязана по контракту этой организации. Только после этого изменения будут реализованы в корневой зоне VerisSign, который также управляет двумя корневыми серверами в корневой зоне.
Меры безопасности корневого сервера DNS
Корневые серверы ежедневно сталкиваются с большим количеством запросов. Большое количество из 13 корневых серверов имён не просто отвечает только на запросы клиентов; но также они делают это в сотрудничестве с другими серверами. Но существует гораздо больше, чем просто 13 различных серверов, которые обрабатывают запросы корневой зоны. В целом, по всему миру существуют сотни таких людей, которые несут ответственность за эту задачу. Большинство серверов находятся в США или Европе.
Тот факт, что эти серверы настолько распределены, помогает с балансировкой нагрузки и, следовательно, повышает надёжность корневых серверов: до появления Anycast только 13 основных корневых серверов имён могли отвечать на запросы. Учитывая, что 10 из них расположены в Соединенных Штатах, технология Anycast впервые сделала возможным эту относительно децентрализованную обработку запросов в корневой зоне. Кроме того, распространение серверов по всему миру сокращает время доступа к обработке запросов, поскольку сервер всегда отвечает на них в кратчайшие сроки.
Ещё одна мера безопасности с точки зрения ограничений возможностей используемого корневого сервера имён при нормальной работе: только треть доступных вычислительных ресурсов используется серверами. Это помогает гарантировать, что разрешение имён всё ещё может выполняться, когда несколько корневых серверов DNS испытывают нехватку мощности: в таких случаях остальные активные серверы принимают запросы, которые фактически предназначались для отправки на сбойный сервер.
После этого различные DDoS-атаки на корневые серверы DNS не будут иметь успеха в будущем, поскольку их настройки безопасности слишком сильные. Те, кто работает с 13 корневыми серверами, слишком хорошо знают, что их серверы значат для интернета: без них адресация интернет-сервисов будет уже невозможна.
Отличия от выделенных корневых серверов
Корневые серверы DNS, описанные в этой статье, относятся к корневому серверу имён из системы доменных имен. Это не следует путать с выделенными корневыми серверами, которые можно арендовать у провайдеров веб-хостинга. Такие хосты часто называют корневыми серверами, поскольку они отличаются от управляемых серверов тем, что имеют корневой доступ, более подробную информацию о различиях между этими двумя формами серверов можно найти в другой статье; так как эта тема не охвачена в этой записи.