8 (800) 234-44-44

Что такое DNS-сервер и какую роль он играет в жизни любого интернет-пользователя

Любой веб-ресурс в интернете физически «лежит» на каком-то устройстве. К примеру, на сервере провайдера хостинга или даже вашей личной домашней машине. У этого устройства есть собственный идентификатор — IP-адрес, который состоит из четырех разделенных точкой чисел в диапазоне от 0 до 255. Используя IP-адрес, можно вычислить, откуда именно подгружается сайт или веб-приложение.

Алгоритм работы DNS проще всего объяснить на примере телефонного справочника.

Представьте, что IP-адрес сервера, на котором хранится сайт, — это номер телефона, а DNS — книга со всеми «номерами».

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

14_1.png

По структуре DNS напоминает логическое дерево. Пространство доменных имен имеет определенную иерархию. В самом верху расположен корневой домен. Уже от него «ответвляются» домены первого уровня, после них — второго и так далее.

DNS-сервер: и алгоритм работы

Ключевой элемент системы DNS, как нетрудно догадаться, — это DNS-сервер. Он выполняет две задачи:

  • хранит данные о том, какие IP-адреса соответствуют доменным именам;
  • кэширует ресурсные записи других DNS-серверов.

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

Подробнее рассмотрим алгоритм работы DNS-сервера:

  1. Интернет-пользователь в адресной строке браузера набирает доменное имя сайта, на который он хочет зайти. Браузер отправляет его DNS-серверу, который ищет соответствующий этому домену IP-адрес. Если совпадение найдено, в браузере откроется веб-страница. А вот в случае неудачи запрос отправляется серверу более высокого уровня или же корневому DNS-серверу.
  2. Корневой DNS-сервер посылает запрос серверу первого уровня, тот — серверу второго уровня и так далее по цепочке, пока в системе не будет найден IP-адрес, который соответствует введенному пользователем доменному имени.
  3. Браузер получает IP-адрес, стучится на веб-сервер, и с хостинга подгружается контент страницы.

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

Где располагаются DNS-серверы

Глобально за обработку запросов отвечают корневые DNS-серверы — именно они отвечают за корневую зону. Они находятся в зоне ответственности различных операторов, которые поддерживают их непрерывную и стабильную работу.

На сегодняшний день в мире работают около 123 корневых сервера, при этом реплики некоторых из них есть и в России, а именно в Москве, Санкт-Петербурге, Новосибирске, Ростове-на-Дону и Екатеринбурге.

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

Записи и зоны DNS

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

На DNS сервере информация хранится в виде ресурсных записей. Чаще всего владельцам сайтов и веб-мастерам приходится работать с этими записями:

  • A — указывает соответствие имени и IP-адреса веб-ресурса;
  • MX — содержит адрес почтового шлюза, именно на MX-запись полагается в своей работе протокол SMTP, ответственный за маршрутизацию почты;
  • CNAME — запись для привязки поддоменов;
  • NS — адрес непосредственно DNS-сервера.

Зоны .ru и .рф

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

До этого у России был только один национальный домен верхнего уровня — .ru. Его зарегистрировали еще 7 апреля 1994 года, впоследствии эта дата стала Днем Рунета, который отмечают даже крупный бизнес и государственные организации.

Пользователи, заставшие зарождение интернета в России, наверняка помнят домен .su — национальный домен СССР и постсоветского пространства. Его от имени Ассоциации пользователей UNIX (Soviet UNIX User’s Group) в 1990 году зарегистрировал Вадим Антонов, руководитель одной из бригад первого российского интернет-поставщика «Демос». Домен .su жив и до сих пор.

Когда и зачем нужно прописывать серверы

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

Как правило, такая информация может обновляться до суток, и в течение этого времени ваш сайт не будет работать. Иногда в целях отказоустойчивости прописывают не один, а сразу несколько серверов. У доменного имени может быть один первичный и до 12 вторичных серверов — если какой-то из них сломается или на нем случится сбой, ваш сайт все равно будет доступен для посетителей.

Как защитить DNS-сервер

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

Атаки на DNS-серверы уже не раз приводили к серьезным сбоям. Конечно, наиболее интересная для злоумышленников мишень — корневые серверы. Одна из крупнейших атак на них произошла около 20 лет назад, в 2002 году, когда злоумышленники попытались вывести из строя 10 из существовавших на тот момент 13-ти корневых серверов с помощью DDoS-атаки.

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

Защитить DNS-сервер от атак злоумышленников можно несколькими способами.

Например, можно использовать:

  • технологию Unicast Reverse Path Forwarding (uRPF)

uRPF — средство антиспуфинга на третьем уровне модели OSI, использующееся как инструмент защиты data plane. Технология позволяет избежать фальсификации IP-адреса следующим образом. Все входящие пакеты проверяются и принимаются только при условии, что сетевой интерфейс, который его отправил, действительно предназначен для обмена трафиком с адресатом. Пакеты, которые такую проверку не проходят, отбрасываются.

  • функцию Ethernet-коммутатора IP Source Guard

Для защиты от подделки IP-адресов функция использует таблицу привязок — Static Binding — которая позволяет ей отфильтровывать легитимные сетевые DHCP- и ARP-пакеты от нелегитимных. Работает это так. Когда коммутатор получает пакет, инициируется поиск соответствующих параметров (MAC- и IP-адрес, идентификатор VLAN и номер порта) в общей таблице привязок. Если привязка есть — пакет пересылается.

  • утилиту dns-validator

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

Поделиться
/ Решим ваши задачи