Содержание
В предыдущих статьях мы рассказали, как придумали доменные имена и кто контролирует их работу. Сегодня узнаем, как браузер понимает, где находится сайт, когда мы вводим в адресной строке домен.
Что такое DNS
DNS — это технология, которая помогает браузеру найти правильный сайт по доменному имени.
Вы уже знаете, что компьютеры находят друг друга в интернете по IP-адресам. Чтобы подключиться к серверу с конкретным сайтом, нужно знать его IP-адрес. Похожим образом устроена мобильная связь: чтобы позвонить конкретному человеку, нужно знать его номер.
Людям неудобно использовать длинные комбинации цифр, поэтому IP-адреса придумали связывать с понятными текстовыми именами — доменами. Всё-таки запомнить google.com проще, чем 216.58.209.14.
По такой же логике мы сохраняем важные номера в контакты смартфона. Только в случае с доменами, ничего сохранять не нужно. Мы просто вводим в адресной строке домен, а браузер сам находит IP-адрес нужного сервера и открывает сайт.
1212 доменных зон для любых проектов!.com.com.ua.info.online.in.ua.net.kiev.ua.site.pl.ORG.pro.ru.org.ua.eu
Как это работало раньше
В первые годы интернета доменам присваивали IP-адреса вручную. Их записывали в текстовый файл hosts.txt в таком формате:
216.58.209.14 google.com
По сути это и был список контактов, как в смартфоне. Когда пользователь вводил в адресной строке домен, браузер проверял файл и брал из него IP-адрес.
Главным файлом управлял Стэнфордский исследовательский институт. Чтобы добавить в список новый сайт, нужно было звонить в институт по телефону. После этого все компьютеры в сети должны были скачать обновлённый файл.
Со временем такой подход стал отнимать много времени и технологию решили усовершенствовать. Новую систему придумали в 1984 и назвали её DNS. Аббревиатура означала Domain Name System, по-русски — Система доменных имён.
Как браузер находит IP-адрес домена
Настройки каждого домена в интернете хранятся в текстовых файлах на DNS-серверах. Адреса этих серверов обычно приходится указывать вручную — их присылает хостинг-провайдер. Например, у нас они выглядят так: dns1.hostiq.ua и dns2.hostiq.ua.
Браузеры используют DNS-сервер вашего провайдера, чтобы узнать IP-адрес сервера, на котором находится сайт. Для этого в каждом браузере есть специальная программа — DNS-клиент. Разберёмся, как именно это работает:
- Вы вводите в адресной строке доменное имя, например, google.com. Сначала браузер проверяет файл hosts.txt на компьютере. Если там не оказывается нужного IP-адреса, он обращается к локальному DNS-серверу вашего интернет-провайдера. Его IP-адрес браузер находит в настройках подключения к интернету.
- Локальный DNS-сервер не знает нужного IP-адреса лично, но умеет обмениваться информацией с другими DNS-серверами. Пока браузер ждёт ответа, локальный DNS-сервер обращается к главным серверам в мире — корневым DNS-серверам — и просит IP-адрес для google.com. Корневой DNS-сервер не знает IP-адрес этого домена, но знает IP-адреса DNS-серверов, которые отвечают за все домены в зоне .com.
- Локальный DNS-сервер получает IP-адрес одного из этих DNS-серверов и задаёт тот же вопрос ему. Этот DNS-сервер тоже не знает IP-адрес Гугла, но знает IP-адреса DNS-серверов, которые использует google.com.
- Локальный DNS-сервер получает IP-адрес одного из этих DNS-серверов и обращается к нему. Этот DNS-сервер знает нужный IP-адрес и отправляет его локальному DNS-серверу.
- Локальный DNS-сервер получает нужный IP-адрес и отправляет его браузеру.
- Браузер получает IP-адрес google.com, обращается напрямую к серверу и просит отправить сайт.
Статья по теме:
DNS-кэш
Локальные DNS-серверы умеют кэшировать настройки, чтобы быстрее выдавать информацию при повторных запросах. Из-за этого случаются ситуации, когда владелец домена поменял настройки, но браузер показывает старую страницу, потому что получает IP-адрес из кэша.
В большинстве случаев IP-адреса хранятся в кэше полчаса. Если вы поменяли IP-адрес на своём домене, но видите в браузере старую страницу, — подождите немного. Как только кэш удалится, локальный DNS-сервер пройдёт цепочку DNS-запросов ещё раз и вы увидите новую страницу.
Попасть в кэш может не только IP-адрес, но и запись о DNS-серверах, которые использует домен. Кэш этих записей хранится дольше — 48 часов. Поэтому старый сайт может открываться дольше, если вместо IP-адреса владелец домена менял DNS-серверы.
DNS-кэш на стороне интернет-провайдера можно очистить дистанционно:
Если пользуетесь Windows, нажмите комбинацию клавиш Win + R и напишите в открывшемся окне cmd. Когда откроется командная строка, выполните в ней команду:
ipconfig/flushdns
В конце должно появиться сообщение «Кэш сопоставителя DNS успешно очищен».
Если пользуетесь MacOS, найдите в поиске «Терминал» или откройте «Finder» — «Программы» — «Утилиты» — «Терминал». В открывшемся окне выполните команду:
dscacheutil -flushcache; sudo killall -HUP mDNSResponder
Кэш удалится после ввода пароля.
На этом всё. В следующий раз расскажем о субдоменах и сферах их применения. А пока — комикс про цепочку DNS-запросов, чтобы закрепить информацию:
Попробуйте хостинг с кучей плюшек: автоустановщиком 330 движков, конструктором сайтов и теплой поддержкой 24/7!
В этом обзоре рассмотрим 10 лучших, на мой взгляд, бесплатных онлайн-сервисов для проверки и мониторингаDNS-записей домена. Бывают ситуации, когда срочно нужно перенаправить домен на другой сервер и как можно быстрее провести трансфер, проверяя доступность в разных уголках мира. Ниже собраны сервисы, которые помогут получить полную информацию по DNS.
Содержание
Regery DNS Монитор
Сервис для бесплатной проверки DNS-записей домена: A, AAAA, NS, CNAME, MX, TXT, SRV, SOA. Также парсит информацию WHOIS.
CHECK-HOST
Минималистический сервис для быстрой проверки домена: WHOIS, GEO, Ping, HTTP, TCP/UDP, DNS.
Проверка DNS-записей домена — утилита dig
Dig (сокращение от «domain information groper») — утилита (DNS-клиент), предоставляющая пользователю интерфейс командной строки для обращения к системе DNS. Позволяет задавать различные типы запросов и запрашивать произвольно указываемые сервера. Является аналогом утилиты nslookup.
Neustar UltraTools
Мощный сервис, который поможет проверить «здоровье» домена. Здесь найдется много «плюшек», например: DNS Hosting Speed, DNS Zone Transfer, DNS Query Estimator, IP Traceroute Tool, HTTP Headers info, SSL Examination etc. Особенно понравился Website Server Software — благодаря ему узнал на каком сервере сидят сайты конкурентов. Domain Health Report — настоящий «мультитул», который показывает состояние домена более чем по десяти параметрам. В общем, сервис предоставляет исчерпывающую DNS-статистику, полезную админам и вебмастерам, но требует регистрации.
DNSCHECKER
Вы недавно сменили вебхостинг или открыли новый веб-сайт, тогда вы попали по адресу! DNS Checker предоставляет бесплатный сервис поиска DNS для проверки записей сервера доменных имен по случайно выбранному списку DNS-серверов в разных уголках мира. Выполните быстрый поиск распространения DNS для любого доменного имени и проверьте данные DNS, собранные из любого местоположения, чтобы убедиться, что веб-сайт полностью распространен или нет по всему миру.
DNSQUERIES
Еще один полезный сервис. Содержит в себе массу разных проверок. Все в одном «флаконе». Позволяет системному администратору провести как можно больше тестов и собрать максимум информации по домену.
Читайте также: Разворачиваем бесплатный VPS сервер на Amazon AWS
MXTOOLBOX
Задачей данного сервиса является проверка MX, DKIM, DMARC, SPF записей, которые отвечают за валидность email-адреса и отправку почты с домена. Позволяет поставить один домен на мониторинг бесплатно. Среди всего прочего есть: DNS Lookup, Analyze HTTP-Headers, Blacklist Monitoring, Delivery Monitoring, Bulk Lookup.
intoDNS
Полезный быстрый сервис. IntoDNS проверяет работоспособность, и конфигурацию и предоставляет отчеты DNS и отчеты почтовых серверов. И предоставляет предложения по их исправлению и улучшению со ссылками на официальную документацию протоколов.
PTR-check — Проверка PTR-записи
Очень простой и удобный онлайн-сервис для проверки PTR-записи домена. PTR-запись позволяет определить домен по IP-адресу. Очень часто запись требуется для того, чтобы письма от почтового сервера не попадали в спам. Один из способов проверки на спам: проверить запись PTR у IP адреса сервера, с которого пришло письмо.
G-Suite dig
Иногда, интересно проверить, что видит в DNS сам Google. И вот, такой инструмент нашелся — он входит в пакет G Suite, предоставляется бесплатно. Если покопаться, можно найти еще проверку MX-записей, анализ заголовков электронных писем, веб-версию утилиты Dig и даже декодер. Будет полезно для дополнительного анализа и проверки домена на ошибки.
DNS (Domain Name System, Система Доменных имен) – система, позволяющая преобразовать доменное имя в IP-адрес сервера и наоборот.
DNS-сервер – это сетевая служба, которая обеспечивает и поддерживает работу DNS. Служба DNS-сервера не требовательна к ресурсам машины. Если не подразумевается настройка иных ролей и служб на целевой машине, то минимальной конфигурации будет вполне достаточно.
Настройка сетевого адаптера для DNS-сервера
Установка DNS-сервера предполагает наличие доменной зоны, поэтому необходимо создать частную сеть в личном кабинете и подключить к ней виртуальные машины.
После того, как машина будет присоединена к двум сетям, важно не перепутать, какое из подключений требует настройки. Первичный сетевой адаптер настроен автоматически с самого начала, через него открыт доступ к интернету, в то время как на дополнительно подключенных сетевых адаптерах доступа в интернет нет, пока не будет произведена ручная настройка:
Наведя курсор на значок сети в системном трее, можно вызвать всплывающую подсказку с краткими сведениями о сетях. Из примера выше видно, что присоединённая сеть это Network 3.
Далее предстоит проделать цепочку действий:
- Нажать правой клавишей мыши Пуск, в выпадающем меню выбрать пункт Сетевые подключения;
- Правой кнопкой мыши нажать на необходимый сетевой адаптер, в меню выбрать Свойства;
- В окне свойств выбрать IPv4 и нажать на кнопку Свойства;
- Заполнить соответствующие поля необходимыми данными:
Здесь в качестве предпочитаемого DNS-сервера машина назначена сама себе, альтернативным назначен dns.google [8.8.8.8].
Установка роли DNS-сервера
Для установки дополнительных ролей на сервер используется Мастер Добавления Ролей и Компонентов, который можно найти в Диспетчере Сервера.
На верхней навигационной панели Диспетчера сервера справа откройте меню Управление, выберите опцию Добавить Роли и Компоненты:
Откроется окно Мастера, в котором рекомендуют убедиться что:
1. Учётная запись администратора защищена надёжным паролем.
2. Настроены сетевые параметры, такие как статические IP-адреса.
3. Установлены новейшие обновления безопасности из центра обновления Windows.
Убедившись, что все условия выполнены, нажимайте Далее;
Выберите Установку ролей и компонентов и нажмите Далее:
Выберите необходимый сервер из пула серверов и нажмите Далее:
Отметьте чек-боксом роль DNS-сервер и перейдите Далее:
Проверьте список компонентов для установки, подтвердите нажатием кнопки Добавить компоненты:
Оставьте список компонентов без изменений, нажмите Далее:
Прочитайте информацию и нажмите Далее:
В последний раз проверьте конфигурацию установки и подтвердите решение нажатием кнопки Установить:
Финальное окно Мастера сообщит, что установка прошла успешно, Мастер установки можно закрыть:
Создание зон прямого и обратного просмотра
Доменная зона — совокупность доменных имён в пределах конкретного домена.
Зоны прямого просмотра предназначены для сопоставления доменного имени с IP-адресом.
Зоны обратного просмотра работают в противоположную сторону и сопоставляют IP-адрес с доменным именем.
Создание зон и управление ими осуществляется при помощи Диспетчера DNS.
Перейти к нему можно в правой части верхней навигационной панели, выбрав меню Средства и в выпадающем списке пункт DNS:
Создание зоны прямого просмотра
- Выделите каталог Зоны Прямого Просмотра, запустите Мастер Создания Новой Зоны с помощью кнопки Новая зона на панели инструментов сверху:
- Откроется окно Мастера с приветствием, нажмите Далее:
- Из предложенных вариантов выберите Основная зона и перейдите Далее:
- Укажите имя зоны и нажмите Далее:
- При необходимости поменяйте название будущего файла зоны и перейдите Далее:
- Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее:
- Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово:
Создание зоны обратного просмотра
- Выделите в Диспетчере DNS каталог Зоны Обратного Просмотра и нажатием кнопки Новая зона на панели инструментов сверху запустите Мастер Создания Новой Зоны:
- Выберите тип Основная Зона, перейдите Далее:
- Выберите назначение для адресов IPv4, нажмите Далее:
- Укажите идентификатор сети (первые три октета сетевого адреса) и следуйте Далее:
- При необходимости поменяйте название будущего файла зоны и перейдите Далее:
- Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее:
- Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово:
Создание A-записи
Данный раздел инструкции в большей степени предназначен для проверки ранее проделанных шагов.
Ресурсная запись — единица хранения и передачи информации в DNS, заключает в себе сведения о соответствии какого-либо имени с определёнными служебными данными.
Запись A — запись, позволяющая по доменному имени узнать IP-адрес.
Запись PTR — запись, обратная A записи.
- В Диспетчере DNS выберите каталог созданной ранее зоны внутри каталога Зон Прямого Просмотра. В правой части Диспетчера, где отображается содержимое каталогов, правой кнопки мыши вызовите выпадающее меню и запустите команду «Создать узел (A или AAAA)…»:
- Откроется окно создания Нового Узла, где понадобится вписать в соответствующие поля имя узла (без доменной части, в качестве доменной части используется название настраиваемой зоны) и IP-адрес. Здесь же имеется чек-бокс Создать соответствующую PTR-запись — чтобы проверить работу обеих зон (прямой и обратной), чек-бокс должен быть активирован:
Если поле имени остается пустым, указанный адрес будет связан с именем доменной зоны.
- Также можно добавить записи для других серверов:
- Добавив все необходимые узлы, нажмите Готово.
Проверка
- Проверьте изменения в каталогах обеих зон (на примере ниже в обеих зонах появилось по 2 новых записи):
- Откройте командную строку (cmd) или PowerShell и запустите команду nslookup:
Из вывода команды видно, что по умолчанию используется DNS-сервер example-2012.com с адресом 10.0.1.6.
Чтобы окончательно убедиться, что прямая и обратная зоны работают как положено, можно отправить два запроса:
- Запрос по домену;
- Запрос по IP-адресу:
В примере получены подходящие ответы по обоим запросам.
- Можно попробовать отправить запрос на какой-нибудь внешний ресурс:
В дополнение к имени домена и адресам появилась строчка «Non-authoritative answer», это значит, что наш DNS-сервер не обладает необходимой полнотой информации по запрашиваемой зоне, а информация выведенная ниже, хоть и получена от авторитетного сервера, но сама в таком случае не является авторитетной.
Для сравнения все те же запросы выполнены на сервере, где не были настроены прямая и обратная зоны:
Здесь машина сама себе назначена предпочитаемым DNS-сервером. Доменное имя DNS-сервера отображается как неопознанное, поскольку нигде нет ресурсных записей для IP-адреса (10.0.1.7). По этой же причине запрос 2 возвращает ошибку (Non-existent domain).
Используемые источники:
- https://hostiq.ua/blog/how-does-dns-work/
- https://krasheninin.tech/web-servers/top-10-servisov-proverki-i-monitoringa-dns/
- https://serverspace.by/support/help/configuring-a-dns-server-on-windows-server-2012-or-later/