Что такое DNS-сервер и для чего он нужен?
DNS-сервер — это сервер системы DNS (Domain Name System), отвечающий за сопоставление имён доменов Интернета с IP-адресами компьютеров, на которых эти домены физически находятся. DNS-серверы позволяют пользователям набирать в браузере обычные адреса сайтов и избавляют от необходимости запоминать IP-адреса.
Содержание
Что такое DNS-сервер простыми словами
Как работает DNS
Как настроить DNS-серверы
Основные DNS записи
Что такое DNS-сервер простыми словами
Сеть Интернет — это огромное количество сайтов, расположенных на физически существующих компьютерах и серверах. Каждая из этих машин имеет уникальный идентификатор во всемирной сети — IP-адрес. Он состоит из четырёх групп цифр, разделённых точками. Чтобы открыть сайт, нужно обратиться к серверу, на котором он находится, по IP-адресу. Применительно к обычным пользователям это выглядит нереалистично. Каждый день многие из нас посещают десятки и сотни сайтов — и совершенно невозможно допустить, чтобы мы запоминали десятки и сотни последовательностей цифр. Об этой проблеме задумались давно, и ещё в 80-годах разработали её решение — систему доменных имён, или DNS (Domain Name System).
Серверы, входящие в DNS, хранят в себе специальные таблицы соответствий. Доменные имена, то есть привычные всем буквенные имена веб-сайтов, сопоставлены в них с IP-адресами серверов, на которых эти сайты физически находятся.
Проще говоря, любой server системы DNS — это что-то вроде раздела «Контакты» смартфона, в котором имена людей сопоставлены с их телефонными номерами. Вам не нужно вспоминать цифры — вы просто выбираете человека, и вот вы уже разговариваете с ним. DNS-серверы работают точно так же! Впрочем, это — весьма упрощённое описание. Если углубиться в вопрос, мы увидим немало нюансов.
Как работает DNS
Система Domain Name System работает следующим образом. Вы решили посетить тот или иной сайт и вводите в адресной строке браузера его URL. Строго говоря, узла с таким названием во всемирной сети не существует — как было сказано выше, в ней есть лишь узлы с числовыми IP-адресами. Именно поэтому первое, что делает браузер — обращается к DNS-серверу, который указан в настройках вашего подключения (о том, как задать такие настройки, будет подробно рассказано далее). Сервер, получив доменное имя, ищет в таблице соответствующий ему IP-адрес, и, найдя его, возвращает вашему клиентскому устройству. Лишь после этого браузер обращается непосредственно к узлу, на котором хранится интересующий вас сайт, и по протоколу HTTP получает его содержимое, которое и отображается на вашем экране.
Alt - DNS
Наша планета огромна, и количество узлов, на которых хранится контент сайтов, не поддаётся исчислению. Невозможно представить некий единый DNS-сервер, который хранил бы в себе информацию абсолютно обо всех устройствах, содержащих веб-контент. Его и не нужно представлять — в действительности в мире существует великое множество DNS-серверов разных уровней, каждый из которых отвечает лишь за определённую, пусть и достаточно большую, зону, и содержит информацию лишь о близлежащих (с известной долей условности) сайтах. Но что произойдёт, если вы, находясь, например, в Новосибирске, решите посетить веб-сайт, контент которого физически расположен в Рио-де-Жанейро? Сначала запрос браузера попадёт на DNS-сервер, указанный в ваших локальных настройках. Соответствия между полученным бразильским доменным именем и каким-либо IP-адресом на нём не окажется. Несмотря на это, сервер не оставит запрос без внимания — он перенаправит его на вышестоящий, в котором необходимое соответствие вполне может найтись. Этот процесс будет повторяться столько раз, сколько понадобится для того, чтобы наконец выяснить IP-адрес сайта в Рио-де-Жанейро. Полученная информация по цепочке DNS-серверов вернётся обратно к вашему браузеру в Новосибирске, и он без проблем сможет открыть нужный вам бразильский сайт.
Система DNS, как мы видим, сложна и интеллектуальна — но не менее умны и современные браузеры. Допустим, на следующий день вы вновь решили посетить тот же сайт в солнечной Бразилии. В этот раз ваш запрос уже не будет передаваться по длинной цепочке от одного DNS-сервера к другому — браузер просто поднимет IP-адрес сайта из своего локального кеша, в который он записал его вчера, и соединение будет установлено быстрее. Миллионы браузеров по всему миру используют кеш, благодаря чему нагрузка на систему DNS существенно снижается.
Особого внимания заслуживает такое понятие, как DNS-зона. Выше мы рассмотрели связь только между доменным именем и IP-адресом сайта. Существуют, однако, и другие объекты — в частности, почтовые серверы и поддомены сайта. Они напрямую связаны с основным доменным именем, но вполне могут иметь разные IP-адреса. Как установить соответствие между всеми перечисленными объектами? Для этого на DNS-сервере создаётся специальный файл, в котором они и сопоставляются. Этот файл представляет собой описание DNS-зоны.
Как настроить DNS-серверы
Рассмотрим настройку DNS-серверов на примере одной из наиболее распространённых операционных систем — Windows 10. Адреса серверов задаются в разделе настроек, посвящённом доступу в Интернет, поэтому нас интересует именно он.
В системном трее (справа внизу) найдите значок подключения к Интернету. Кликните по нему правой кнопкой мыши и выберите пункт «Открыть «Параметры сети и Интернет». Перед вами появится окно с многочисленными разделами. В группе «Изменение сетевых параметров» найдите раздел «Настройка параметров адаптера» и откройте его, кликнув левой кнопкой мыши.
Перед вами — окно, в котором собраны все сетевые подключения компьютера. Вам нужно найти то из них, через которое осуществляется доступ в Интернет. Автор этой статьи пользуется проводным подключением, и соответствующая иконка называется «Ethernet/Network connection». Кликните правой кнопкой мыши по иконке активного подключения и выберите в появившемся контекстном меню нижний пункт — «Свойства».
В новом диалоговом окне вы увидите список компонентов, которые использует ваше активное подключение. Найдите в нём строчку «IP версии 4 (TCP/IPv4)», кликните по ней левой кнопкой мыши, а затем нажмите кнопку «Свойства», расположенную чуть ниже. Вы увидите окно, до которого и нужно было добраться. Именно в нём задаются адреса DNS-серверов (нижняя группа полей).
Обратите внимание на то, что операционная система даёт вам два варианта на выбор — получать адрес серверов DNS в автоматическом режиме или использовать желаемые адреса, которые можно ввести вручную. Если вы выберете первый вариант, все запросы из браузера будут отправляться интернет-провайдеру, а он, в свою очередь, сам будет назначать тот или иной DNS-сервер (причём с наибольшей вероятностью это будет сервер самого провайдера). Этот вариант удобен тем, что вам ничего не нужно прописывать — сайты должны открываться без проблем. У него, однако, есть и недостатки. Если DNS-сервер или провайдер в целом по той или иной причине «ляжет», вы фактически лишитесь доступа в Интернет до устранения проблемы — браузер не будет получать IP-адреса веб-сайтов. Кроме того, DNS-сервер провайдера может умышленно отдавать неверные ответы, и вы будете видеть не те сайты, которые хотели бы открыть (это, в частности, возможно при блокировке Роскомнадзором интересующего вас ресурса). Обойти эти проблемы можно, если выбрать второй вариант и прописать адреса предпочитаемого и альтернативного DNS-сервера вручную.
Закономерен вопрос: какие адреса серверов можно указать в настройках? Вот несколько наиболее распространённых и популярных вариантов:
l серверы Google: предпочитаемый — 8.8.8.8, альтернативный — 8.8.4.4;
l серверы Яндекс: предпочитаемый — 77.88.8.8, альтернативный — 77.88.8.2;
l серверы Яндекс, содержащие записи только о проверенных сайтах и защищающие от злоумышленников: предпочитаемый — 77.88.8.8, альтернативный — 77.88.8.2;
l семейные серверы Яндекс (то же, что в пункте выше, за минусом сайтов со «взрослым» контентом: предпочитаемый — 77.88.8.3, альтернативный — 77.88.8.7;
l серверы OpenDNS: предпочитаемый — 208.67.222.222, альтернативный — 208.67.220.220.
Это — далеко не полный перечень существующих DNS-серверов, которые можно указать вручную. Вооружившись терпением, вы сможете найти в Интернете и другие адреса.
Закончив настройку, нажмите кнопку «ОК» и закройте диалоговое окно активного подключения. Проверьте, корректно ли открываются веб-сайты в вашем браузере.
Основные DNS записи
Каждый DNS-сервер содержит так называемые ресурсные записи, необходимые для его работы. Перечень основных записей с расшифровкой их значений представлен ниже.
A: IP-адрес сервера, на котором расположен домен, по стандарту IPv4.
AAA: IP-адрес по стандарту IPv6.
TXT: произвольные текстовые сведения о домене. Длина этой записи не может превышать 255 символов.
MX: информация о почтовом сервере в формате mail.company.com. Если у домена несколько почтовых серверов, что не редкость, рядом с каждой записью указывается число от 0 до 65535, обозначающее приоритет (наивысший — 0). Считается стандартом указывать 10-й приоритет для первого сервера почты.
CNAME: так называемое каноническое имя хоста. Необходимо при изменении имени сервера для перенаправления запроса на иное доменное имя. Содержит поля Alies и Canonical name (в первом указывается старое имя, во втором — новое, на которое должно идти перенаправление).
_Service._Proto.Name: запись, состоящая из нескольких элементов. Здесь Service означает название службы (например, ldap), Proto — протокол для подключения клиентов (например, tcp), Name — доменное имя, к которому привязана служба. Кроме того, указываются приоритет (по аналогии с MX), относительный вес, номер порта и доменное имя службы.
SOA: главная запись о домене, содержащая его имя и срок жизни информации о нём. Считается стандартом указывать срок жизни 1 сутки (задаётся в секундах, которых в сутках 86400).