Содержание
- 1 Что такое DNS
- 2 Как это работало раньше
- 3 Как браузер находит IP-адрес домена
- 4 DNS-кэш
- 5 Что такое DNS?
- 6 Как работает DNS?
- 7 Что такое DNS-сервер?
- 8 Зачем нужны DNS-серверы и какие они бывают?
- 9 Где находятся главные DNS-серверы?
- 10 Что такое DNS-зоны?
- 11 А что с новыми доменами?
- 12 Еще немного о DNS
- 13 DNS-хостинг
- 14 Добавление домена и управление им
В предыдущих статьях мы рассказали, как придумали доменные имена и кто контролирует их работу. Сегодня узнаем, как браузер понимает, где находится сайт, когда мы вводим в адресной строке домен.
Что такое 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!
Из этой статьи вы узнаете ряд нюансов работы глобальной сети. Осветим, что такое Domain Name System, как работает технология, какие DNS-серверы бывают и другие важные вопросы.
Что такое DNS?
Прежде чем начать говорить о DNS-серверах, расскажем о самой технологии DNS (Domain Name System). DNS — это технология, которая позволяет браузеру вроде Firefox, Chrome или Edge найти запрошенный пользователем сайт по его имени.
Как работает DNS?
Принцип работы DNS похож на поиск и вызов контактов из телефонной книги смартфона. Ищем имя, нажимаем «позвонить», и телефон соединяет нас с нужным абонентом. Понятно, что смартфон в ходе звонка не использует само имя человека, вызов возможен только по номеру телефона. Если вы внесете имя без номера телефона, позвонить человеку не сможете.
Так и с сайтом. Каждому имени сайта соответствует набор цифр формата 000.000.000.000. Этот набор называется IP-адресом, примером реального IP-адреса является 192.168.0.154 или 203.113.89.134. Когда пользователь вводит в адресной строке браузера имя сайта, например google.com, компьютер запрашивает IP-адрес этого сайта на специальном DNS-сервере и после получения корректного ответа открывает сам сайт.
Что такое DNS-сервер?
Это как раз и есть «книга контактов» интернета. DNS-сервер — это специализированный компьютер (или группа), который хранит IP-адреса сайтов. Последние, в свою очередь, привязаны к именам сайтов и обрабатывает запросы пользователя. В интернете много DNS-серверов, они есть у каждого провайдера и обслуживают их пользователей.
Зачем нужны DNS-серверы и какие они бывают?
Основное предназначение DNS-серверов — хранение информации о доменах и ее предоставление по запросу пользователей, а также кэширование DNS-записей других серверов. Это как раз «книга контактов», о которой мы писали выше.
В случае кэширования все несколько сложнее. Дело в том, что отдельно взятый DNS-сервер не может хранить вообще всю информацию об адресах сайтов и связанных с ними IP-адресами. Есть исключения — корневые DNS-серверы, но о них позже. При обращении к сайту компьютера пользователя браузер первым делом проверяет локальный файл настроек DNS, файл hosts. Если там нет нужного адреса, запрос направляется дальше — на локальный DNS-сервер интернет-провайдера пользователя.
Локальный DNS-сервер в большинстве случаев взаимодействует с другими DNS-серверами из региона, в котором находится запрошенный сайт. После нескольких обращений к таким серверам локальный DNS-сервер получает искомое и отправляет эти данные в браузер — запрошенный сайт открывается. Полученные данные сохраняются на локальном сервере, что значительно ускоряет его работу. Поскольку, единожды «узнав» IP-адрес сайта, запрошенного пользователем, локальный DNS сохраняет эту информацию. Процесс сохранения полученных ранее данных и называется кэшированием.
Если пользователь обратится к ранее запрошенному сайту еще раз, то сайт откроется быстрее, поскольку используется сохраненная информация. Правда, хранится кэш не вечно, время хранения зависит от настроек самого сервера.
IP-адрес сайта может измениться — например, при переезде на другой хостинг или сервер в рамках прежнего хостинга. Что происходит в этом случае? В этом случае обращения пользователей к сайту, чей IP-адрес поменялся, некоторое время обрабатываются по-старому, то есть перенаправление идет на прежний «айпишник». И лишь через определенное время (например, сутки) кэш локальных серверов обновляется, после чего обращение к сайту идет уже по новому IP-адресу.
Где находятся главные DNS-серверы?
DNS-серверы верхнего уровня, которые содержат информацию о корневой DNS-зоне, называются корневыми. Этими серверами управляют разные операторы. Изначально корневые серверы находились в Северной Америке, но затем они появились и в других странах. Основных серверов — 13. Но, чтобы повысить устойчивость интернета в случае сбоев, были созданы запасные копии, реплики корневых серверов. Так, количество корневых серверов увеличилось с 13 до 123.
В Северной Америке находятся 40 серверов (32,5%), в Европе – 35 (28,5%), еще 6 серверов располагаются в Южной Америке (4,9%) и 3 – в Африке (2,4%). Если взглянуть на карту, то DNS-серверы расположены согласно интенсивности использования интернет-инфраструктуры. Есть сервера в Австралии, Китае, Бразилии, ОАЭ и других странах, включая Исландию.
В России тоже есть несколько реплик корневых серверов DNS, среди которых:
- F.root (Москва);
- I.root (Санкт-Петербург);
- J.root (Москва, Санкт-Петербург);
- K.root (Москва, Санкт-Петербург, Новосибирск);
- L.root (Москва, Ростов-на-Дону, Екатеринбург).
Один из узлов корневого DNS-сервера K-root размещен в Selectel.
Что такое DNS-зоны?
В этой статье мы рассматриваем лишь вариант «один домен — один IP-адрес». На самом деле, ситуация может быть и сложнее. Так, с определенным доменным именем может быть связано несколько ресурсов — сайт и почтовый сервер. У этих ресурсов вполне могут быть разные IP-адреса, что дает возможность повысить надежность и эффективность работы сайта или почтовой системы. Есть у сайтов и поддомены, IP-адреса которых тоже могут быть разными.
Вся эта информация о связи сайта, поддоменов, почтовой системы хранится в специальном файле на DNS-сервере. Его содержимое называется DNS-зона. Файл содержит следующие типы записей:
- А — адрес веб-ресурса, который привязан к конкретному имени домена.
- MX — адрес почтового сервера.
- CNAME — чаще всего этот тип записи используется для подключения поддомена.
- NS — адрес DNS-сервера, который отвечает за содержимое других ресурсных записей.
- TXT — любая текстовая информация о доменном имени.
- SPF — данные с указанием списка серверов, которые входят в список доверенных для отправки писем от имени указанного домена.
- SOA — исходная запись зоны, в которой указаны сведения о сервере и которая содержит шаблонную информацию о доменном имени.
А что с новыми доменами?
После регистрации доменного имени нужно «рассказать» о нем DNS-серверам. Для этого нужно прописать ресурсные записи, что обычно делается в админке хостинг-провайдера или доменного провайдера. Примерно через сутки DNS-записи пропишутся в локальном сервере, также они попадут и в реестры всех прочих DNS-серверов. Как только это произойдет, новый домен станет нормально открываться браузером. «DNS сайта», как иногда ошибочно называют доменное имя, активируется.
Еще немного о DNS
Инфраструктура DNS-серверов, вернее, ее основа, была заложена в начале 1980-х годов. С тех пор менялась она лишь незначительно — например, добавлялись новые доменные зоны. Так, в РФ в 2010 году появился кириллический домен .рф. До этого доменные имена могли быть лишь латинскими.
От DNS-инфраструктуры зависит нормальная работа всей глобальной сети, поэтому за работоспособностью серверов постоянно следят. В частности, предпринимаются меры по усилению безопасности системы. Кроме того, вводятся и меры на случай стихийных бедствий, проблем с электричеством и других экстренных ситуаций.
DNS-хостинг
В Selectel вы можете купить домен и сразу делегировать его на NS-серверы компании. Либо разместить уже зарегистрированный домен на наших NS-серверах — в Санкт-Петербурге, Москве, Екатеринбурге, Новосибирске, Киеве, Нью-Йорке, Пало-Альто, Лондоне, Амстердаме и Франкфурте. Услуга DNS-хостинга бесплатна при наличии активного аккаунта.
Технология Anycast, используемая в услугах, делает DNS-системы более надежными, безопасными, отказоустойчивыми. Есть два рекурсивных кэширующих DNS-сервера. Подробнее читайте в Базе знаний Selectel.
Добавление домена и управление им
Зайдите в панель управления my.selectel.ru либо зарегистрируйтесь в ней.
Для добавления домена нажмите кнопку Добавить домен. В открывшемся окне введите имя домена и завершите действие кнопкой Добавить домен.
Для удаление домена выберите домен, отметьте его галочкой и нажмите Удалить. Можно выбрать и удалить несколько доменов одновременно.
Делегирование домена на NS-серверы Selectel происходит по умолчанию.
При необходимости добавьте новые DNS-записи к домену. Для этого выберите нужный домен из списка и нажмите кнопку Добавить запись.
Заполните поля Тип, Имя записи, TTL и Значение. Нажмите Добавить запись.
DNS-записи можно редактировать и удалять.
Для редактирования настроек домена откройте домен и перейдите на соответствующую вкладку. Внесите необходимые изменения и нажмите Сохранить.
Задумывались ли вы как мы вообще попадаем на какой-либо сайт? Где он лежит и почему адреса в интернете выглядит именно так? Сегодня мы поговорим о том,что такое DNS и IP адрес. Откуда появилось WWW? Как можно быстро и просто ускорить интернет, а также обезопасить себя в сети? И что мы будем делать, если или точнее когда адреса закончатся?
Все мы с вами живем с неким заблуждением в голове. Открывая любой браузер сверху мы видим адресную строку. Но что если я вам скажу, что все адреса сайтов, которые мы знаем, типа: google.com, yandex.ru, youtube.com — все это не адреса, а доменные имена сайтов. Они придуманы, для того чтобы людям было удобно их запоминать. Настоящие же адреса сайтов, по сути, состоят исключительно из цифр, это те самые знакомые многим IP-адреса и выглядят они: примерно так:
- google.com > 64.233.165.100
- yandex.ru > 5.255.255.70
- youtube.com > 64.233.165.190
То есть по большому счёту адреса в интернете работают по принципу телефонной книги. Чтобы не запоминать номер человека, мы сохраняем его в контактах и присваиваем имя. Но одно дело контакты в телефоне, другое дело — целый интернет. Откуда он знает, что вводя в адресной строке Droider.ru, я хочу попасть именно на этот сайт? Давайте разбираться.
Система доменных имён
Поначалу, когда интернет только зарождался, IP-адрес сайтов и соответствующие им доменные имена хранились прямо на компе, в файле hosts. Пользователи Adobe Creative Cloud прекрасно знают этот файл.
Но, естественно, файл очень быстро стал расти, он не успевал обновляться, возникали различные конфликты имён.
И тогда в 1983 году Пол Мокапетрис придумал другую систему: автоматизированную, децентрализованную и надежную. И назвали её системой доменных имён или DNS — Domain, Name, System. Что это за система такая?
Структура доменного имени
Для начала давайте разберем структуру доменного имени. Возьмем к примеру — www.youtube.com. Доменное имя всегда состоит из нескольких частей, которые отделены точками.
- com — это домен верхнего уровня
- youtube — домен второго уровня
- www — имя компьютера
В данном случае у нас получилось три уровня, но на самом деле их четыре, потому что в конце каждого имени есть скрытая точка, которая указывает, что есть корневой домен.
Итого, мы получаем вот такую иерархию DNS-серверов. Зачем она нужна?
Дело в том, что адресов в сети много и хранить их все в одной базе нецелесообразно. Поэтому придумали доменные зоны.
Корневая доменная зона содержит записи всех доменов верхнего уровня: com, ru, org и т.д. Зона ru содержит записи всех доменов второго уровня. А, к примеру yandex адреса своих поддоменов — maps, taxi и других.
Кстати, тройное W в имени сайта — необязательная вещь, просто эта аббревиатура символ всемирной паутины: WWW — World Wide Web.
DNS Resolver
Получается какая-то громоздкая система. Исходя из этой структуры, для того, чтобы узнать IP-адрес интересующего нас сайта, к примеру maps.yandex.ru, мы должны пройти всю иерархию сверху вниз:
- сначала спросить у корневого сервера, какой там адрес у RU-сервера,
- потом у, нашего родного, RU-сервера узнать где лежит Yandex,
- у Яндекса спросить где там maps.
Короче, это долго. Поэтому, когда мы вбиваем адрес в строку браузера, наш компьютер не обращается напрямую к верховной жрице всех доменных имён, то есть корневому серверу. Вместо этого он стучится к северу находящемуся неподалёку, как правило у нашего провайдера. Такой сервер называется DNS RESOLVER, но, как правило, его просто называют локальный DNS-сервер. Как он работает?
Когда в DNS RESOLVER поступает запрос, найти адрес того или иного сайта, он делает всю грязную работу за нас, то есть отправляет запрос в корневой сервер и дальше по порядку. После чего, когда получает искомый адрес он отправляет его нам и одновременно записывает этот адрес себе в кэш. Поэтому, когда к нему повторно поступает такой же запрос, он может быстро вытащить адрес из кэша. При этом кэш обновляется каждые 24 часа, поэтому чаще всего записи там актуальные.
Иными словами, DNS resolver — это наш путеводитель по сети Интернет, все наши запросы проходят именно через этот сервер и без ресолвера мы бы вообще никуда не попали. В итоге, перед нами достаточно могущественная штука, которой часто хотят воспользоваться мошенники…
DNS и безопасность
Например, просто подменив адрес DNS-сервера в настройках вашего роутера или системы. Новый DNS сможет подсовывать вам вместо правильных IP-адресов, адреса сайтов клонов, которые смогут без проблем утащить у вас важную информацию: данные кредитных карт, пароли от аккаунтов и прочее.
Ну или бывает более лайтовый вариант: подменив DNS-сервер можно просто заполонить ваш браузер всякой рекламой, сервер будет просто подменять часть контента на рекламный. В общем, вариантов махинаций масса. Также DNS сервер вашего провайдера может быть просто медленный.
CISCO UMBRELLA
Но как эту проблему решить? Если говорить о домашнем использовании, можно самостоятельно прописать адреса надежного публичного DNS-сервера для своего роутера и всех устройств.
Например, один из самых быстрых и надежных сервисов — это OpenDNS от Cisco. Работает быстро, стабильно и плюс ко всему блокирует фишинг-сайты и делает дополнительную ваб-фильтрацию. Сервис бесплатный, хотя для продвинутых юзеров есть платные тарифы. В сети есть куча инструкций, как это сделать, одну их них мы нашли тут.
А вот для компаний, особенно сейчас, в период работы на удаленке необходимы более продвинутые инструменты. Одно из самых крутых корпоративных решений — это Cisco Umbrella. Это облачная платформа обеспечения безопасности, которая при помощи глубоких нейронных сетей анализирует шаблоны интернет-трафика и автоматически выявляет инфраструктуру злоумышленников, вычисляет планируемые атаки, и заранее блокирует запросы к вредоносным узлам.
Система защиты состоит из 5 компонентов:
- Защиты на уровне DNS — защищенный рекурсивный DNS;
- Веб-прокси с возможностью отправки подозрительных файлов на анализ в песочницу;
- L3/L4/L7 межсетевой экран (Cloud Delivery Firewall);
- Cloud Access Security Broker (CASB) — система безопасного доступа с различным облачным сервисам типа Google Диск или Office 365
- Инструмент проведения расследований.
Подойдет как для небольших компаний, так и для крупного бизнеса. У них гибкая система тарифов, поэтому, бизнесмены, обратите внимание.
IP-адреса
Но есть с адресами в интернете и другая проблема — они закончились! Дело в том, что сейчас большая часть сети работает через интернет протокол версии 4: IPv4 — Internet Protocol version 4. В этой версии протокола длина IP адреса всего 4 байта или 32 бита, где каждые 8 бит — отдельная часть адреса. Кстати, называется она октетом.
В общем, это всего 2 в 32-й степени вариантов. А последний пул свободных IP-адресов был распределен еще в начале 2010-х.
Но тогда каким образом интернет продолжает работать?
Динамика количества свободных блоков /8 с 1995 года
Есть один трюк: на одном IP-адресе может лежать несколько сайтов. Дело в том, что когда сервер получает запрос открыть сайт по такому-то IP адресу в запросе также указывается доменное имя сайта, поэтому на одном IP-шнике могут лежать тысячи сайтов.
Но это всё равно костыль и проблему полностью не решает. Например, если ваш сайт делит один IP-адрес с ресурсом, который по какой-либо причине решил заблокировать Роскомнадзор, то и ваш сайт будет заблокирован. Именно поэтому во время активных попыток блокировки Telegram под раздачу попало полинтернета. Потому как крупные хостинги типа Amazon очень активно шарят IP-адреса между различными сайтами. Но решение проблемы есть. И называется оно IPv6, т.е. интернет протокол 6-й версии.
Несмотря на то, что этот протокол придумали еще в 1996 году. Его всемирный запуск состоялся только в 2012-м. Он шикарно работает, и с постепенным обновлением старого оборудования он полностью вытеснит IPv4.
Основное преимущество IPv6, в том что дkина адреса в нём не 4 байта, как в IPv4, а 16 байт. Выглядят новые IP-шники вот так:
Пример адреса IPv6 — 2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d
Дополнительные байты обеспечивают возможность использования более 300 миллионов IP-адресов на каждого жителя Земли. Поэтому в будущем у каждого из нас будет по выделенному IP адресу, а Роскомнадзору, судя по всему, будет попроще блокировать отдельные сайты.
А у нас на этом сегодня всё. Дайте нам знать в комментариях, если вам интересна тема безопасности в сети. Про что бы вы еще хотели узнать? Как работают антивирус, к примеру? Или может чем отличается IPv4 от IPv6.
Автор25 января 2021 в 07:44Используемые источники:
- https://hostiq.ua/blog/how-does-dns-work/
- https://selectel.ru/blog/dns-server/
- https://droider.ru/post/kak-rabotayut-adresa-v-internete-chto-takoe-dns-i-ip-adresa-razbor-25-01-2021/