Что такое DNS: рассказываем простыми словами
Содержание
В практическом смысле этого вполне достаточно: нашёл интересный сайт, сообщил знакомым его доменное имя (или проще, адрес).
Однако настоящим адресом доменное имя не является. Ну это примерно так же, как отправить письмо с надписью на конверте: город Екатеринбург, Петру Иванову. Здесь дело даже не в том, что Петров Ивановых в Екатеринбурге может быть несколько (представим, что человек с таким именем там единственный). Проблема в том, что адресат может перемещаться, минимум, по городу, и вручить ему письмо будет крайне проблематично.
Но письма-то доставляют и получают! Да, конечно. Потому что они отправляют по почтовым адресам. Например, город Ленинград, 3-я улица Строителей, дом 25, квартира 12.
Почтовым адресом в интернете является IP-адрес, состоящий из четырёх чисел от 0 до 255, например, 74.125.131.100. Это один из IP-адресов сайта google.com. Если в адресной строке вашего браузера ввести эти числа, вы окажетесь на портале google.com, точнее, на google.ru, куда вас автоматически перенаправят.
Почему один из адресов, и какого типа бывают IP-адреса, пока оставим в стороне.
В интернете IP-адрес задаёт, на какой компьютер нужно доставить данные.
Вам что-то напоминает IP-адрес? Мне он напоминает длинный номер мобильного телефона.
Телефонная книга
К сожалению, запоминать длинные телефонные номера непросто. Мы их вносим в свои записные книжки (контакты, по-мобильнофонному) и добавляем к ним понятные имена, например,
Пётр Иванов, +7-343-123-45-67.
В дальнейшем нам не потребуется помнить сам телефонный номер Петра, достаточно того, что этот номер записан в нашу телефонную книгу. Когда нам будет нужно позвонить Петру, мы найдём его в списке наших контактов даже не взглянув на его номер.
В интернете роль телефонной книги играет система доменных имён (DNS, Domain Name System). В ней хранится связь между относительно легко запоминаемым названием сайта и его трудно запоминаемым числовым адресом.
Правда, есть одно существенное отличие этой интернет-книги от телефонной. Её ведёт не каждый знакомый Петра Иванова в отдельности, а он сам.
В частной телефонной книге можно написать: Петя, Пётр, Петруша, Петруха, Петруня, любимый, , а в телефонной интернет-книге записи ведут сами владельцы сайтов, например:
Название домена | Адрес |
pyotr-ivanov.ru | 123.123.123.123 |
Если кто-то пожелает посетить сайт Петра Иванова, в адресной строке браузера он наберёт: pyotr-ivanov.ru, а система доменных имён сообщит браузеру (точнее, компьютеру, на котором работает браузер), соответствующий IP-адрес, в нашем примере: 123.123.123.123. Компьютер, который находится по этому адресу, обработает запрос браузера и пришлёт ему данные, для отображения запрошенной страницы веб-сайта.
Теперь понятно, как используются доменные имена? Однако ещё не рассказано, где хранятся записи о связях между доменными именами сайтов и IP-адресами компьютеров, на которых эти сайты размещены.
DNS-сервер
DNS-сервер (DNS server) служит телефонной книгой. Он хранит информацию о том, какому IP-адресу соответствует то или иное доменное имя. В интернете DNS-серверов очень много. У них двойная роль:
- главная телефонная интернет-книга;
- дополнительная (но тоже важная) кэширование записей других DNS-серверов.
Сначала несколько слов о кэшировании. Выяснять связь между названием сайта и его IP-адресом требуется при каждом обращении к этому веб-сайту. Если сайт, который вы хотите посетить, находится достаточно далеко, многочисленные запросы к далёкому первичному DNS-серверу могут отнять много времени и замедлить загрузку веб-страниц. Чтобы избежать задержек, ближайший к вашему компьютеру DNS-сервер (обычно находящийся у вашего интернет-провайдера), сохраняет сведения о ранее запрошенных IP-адресах, и при повторном обращении к тому же сайту он сообщит его адрес очень быстро, так как будет хранить его в своём кэше.
Но чтобы что-то кэшировать, нужно иметь источник кэшируемого. Таким источником служат первичные DNS-сервера, хранящие изначальные связи между доменами и их IP-адресами.
Для регистрации доменного имени достаточно его придумать. Но для того, чтобы оно начало работать, вы должны сообщить регистратору доменное имя DNS-сервера, который будет хранить подробные данные о регистрируемом вами домене. Об этих данных будет сказано чуть позже.
Обычно используют два DNS-сервера: первичный и вторичный. Но их может быть и больше. Большее число DNS-серверов повышает надёжность доступа к вашему домену: если один окажется недоступен, ответит другой.
В реальном мире двух вполне достаточно.
Многие регистраторы доменных имён и просто интернет-провайдеры предлагают использовать свои DNS-серверы в режиме платной услуги.
Хорошая новость: в облаке 1cloud услугу DNS-хостинга можно получить бесплатно! Достаточно быть клиентом этого публичного облака.
DNS-зона
Для дальнейшего понимания системы доменных имён нужно узнать, что такое DNS-зона.
Дело в том, что мы рассмотрели только один из вариантов связи между доменным именем и IP-адресом: один домен один сайт один адрес. Однако с конкретным доменным именем может быть связан не только веб-сайт, но и, например, почтовый сервер. И у них могут быть разные адреса.
Одному и тому же домену может соответствовать веб-сайт или почтовый сервер с несколькими IP-адресами, каждый. Их используют для повышения надёжности и производительности сайта или почтовой системы.
А ещё нужно вспомнить о возможных поддоменах, например,
mail.company.ru, ftp.company.ru, sklad.company.ru,
Все необходимые связи между доменным именем и IP-адресами отражаются в специальном файле, расположенном на DNS-сервере. Содержимое этого файла называется описанием DNS-зоны, или просто DNS-зоной.
В ней могут присутствовать записи разных типов.
Тип записи | Пояснение |
A | Адрес сайта соответствующего доменного имени |
MX | Адрес почтового сервера в соответствующем домене |
CNAME | Синоним описываемого домена. Например, здесь можно указать, что доменное имя www.company.ru является синонимом доменного имени company.ru, и запросы по этому синониму будут перенаправляться на адрес основного доменного имени |
NS | Здесь указывается доменные имена DNS-серверов, обслуживающих описываемый домен. Например, ns1.1cloud.ru и ns2.1cloud.ru |
TXT | Любое текстовое примечание |
Это не полный перечень возможных типов полей. Он был сокращён для упрощения ознакомительного изложения.
Дополнение
Как в любом деле, в правильном описании доменного имени есть свои детали и нюансы. В этой статье они опущены, чтобы не усложнять начальное знакомство с темой. Однако для общего кругозора уже сейчас следует добавить несколько важных фактов.
- Выше была описана адресация по стандарту IPv4. Адрес в нём состоит из четырёх чисел. Такая адресация имеет ограничение числа обслуживаемых компьютеров: 4 294 967 296. Это много, но при нынешнем числе устройств, подключенных к интернету адресов стало не хватать.
Для преодоления этого объективного лимита ввели новый стандарт: IPv6, по которому длина адреса увеличилась, и стало возможным адресовать намного, намного больше компьютеров. В DNS-зоне тип записи для такого адреса обозначается: AAAA. - Одному домену могут соответствовать несколько IP-адресов.
Обычно такое назначение делается для повышения надёжности или быстродействия. Порядок выдачи IP-адреса из списка на запрос по доменному имени зависит от настроек DNS-сервера. Чаще всего адрес выдаётся в случайном порядке. - Одному IP-адресу может соответствовать несколько доменов.
Строго говоря, это противоречит логике системы доменных имён, которая предполагает однозначную связь IP-адреса с соответствующим доменом. Однако, как было сказано ранее, 4-числовой IP-адрес стал дефицитным ресурсом, который уже достаточно давно стараются экономить.
На практике такая экономия может выглядеть следующим образом. На компьютере размещают несколько не очень больших веб-сайтов с разными доменными именами, которым присвоен одинаковый IP-адрес. Веб-сервер, работающий на этом компьютере и обслуживающий эти сайты, получив запрос, анализирует домен, в который он пришёл, и направляет его на правильный сайт.
Такая практика не позволяет обеспечить однозначность обратной связи IP-адреса с доменным именем, ведь в этом случае их несколько. Но позволяет экономить IP-адреса.
Заключение
Изложенный порядок на первый взгляд может показаться сложным. Однако он позволяет:
- пользоваться доменными именами, которые запоминаются легче, чем числовые адреса;
- повышать надёжность доступа к интернет-ресурсам путём использования для них нескольких компьютеров, разнесённых по сети;
- увеличивать производительность интернет-ресурсов за счёт распределения нагрузки внутри группы обеспечивающих компьютеров;
- перемещать прикладные компьютеры по интернету, не меняя их доменного адреса.
Простыми словами можно сказать, что DNS это система доменных имён, которая связывает названия доменов с IP-адресами компьютеров, соответствующих этим доменам. Эта система включает в себя как регламентирующие документы, так множество DNS-серверов, работающих в интернете и сообщающих IP-адреса в ответ на запрос по доменным именам.
Назначение DNS протокола — организация единой системы для получения информации о состоянии домена.
Источник: