DNS-сервер — это сервер системы DNS (Domain Name System), отвечающий за сопоставление имён доменов Интернета с IP-адресами компьютеров, на которых эти домены физически находятся. DNS-серверы позволяют пользователям набирать в браузере обычные адреса сайтов и избавляют от необходимости запоминать IP-адреса.
Что такое DNS-сервер простыми словами
Как работает DNS
Как настроить DNS-серверы
Основные DNS записи
Что такое DNS-сервер простыми словами
Сеть Интернет — это огромное количество сайтов, расположенных на физически существующих компьютерах и серверах. Каждая из этих машин имеет уникальный идентификатор во всемирной сети — IP-адрес. Он состоит из четырёх групп цифр, разделённых точками. Чтобы открыть сайт, нужно обратиться к серверу, на котором он находится, по IP-адресу.
Применительно к обычным пользователям это выглядит нереалистично. Каждый день многие из нас посещают десятки и сотни сайтов — и совершенно невозможно допустить, чтобы мы запоминали десятки и сотни последовательностей цифр. Об этой проблеме задумались давно, и ещё в 80-годах разработали её решение — систему доменных имён, или DNS (Domain Name System).
Как найти быстрый DNS сервер? DNS Jumper на русском
Серверы, входящие в DNS, хранят в себе специальные таблицы соответствий. Доменные имена, то есть привычные всем буквенные имена веб-сайтов, сопоставлены в них с IP-адресами серверов, на которых эти сайты физически находятся.
Проще говоря, любой server системы DNS — это что-то вроде раздела «Контакты» смартфона, в котором имена людей сопоставлены с их телефонными номерами. Вам не нужно вспоминать цифры — вы просто выбираете человека, и вот вы уже разговариваете с ним. DNS-серверы работают точно так же! Впрочем, это — весьма упрощённое описание. Если углубиться в вопрос, мы увидим немало нюансов.
Как работает DNS
Система Domain Name System работает следующим образом. Вы решили посетить тот или иной сайт и вводите в адресной строке браузера его URL. Строго говоря, узла с таким названием во всемирной сети не существует — как было сказано выше, в ней есть лишь узлы с числовыми IP-адресами.
Именно поэтому первое, что делает браузер — обращается к DNS-серверу, который указан в настройках вашего подключения (о том, как задать такие настройки, будет подробно рассказано далее). Сервер, получив доменное имя, ищет в таблице соответствующий ему IP-адрес, и, найдя его, возвращает вашему клиентскому устройству. Лишь после этого браузер обращается непосредственно к узлу, на котором хранится интересующий вас сайт, и по протоколу HTTP получает его содержимое, которое и отображается на вашем экране.
Наша планета огромна, и количество узлов, на которых хранится контент сайтов, не поддаётся исчислению. Невозможно представить некий единый 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).
Источник: galtsystems.com
Как это работает: Пара слов о DNS
Являясь провайдером виртуальной инфраструктуры, компания 1cloud интересуется сетевыми технологиями, о которых мы регулярно рассказываем в своем блоге. Сегодня мы подготовили материал, затрагивающий тему доменных имен. В нем мы рассмотрим базовые аспекты функционирования DNS и вопросы безопасности DNS-серверов.
/ фото James Cridland CC
Изначально, до распространения интернета, адреса преобразовывались согласно содержимому файла hosts, рассылаемого на каждую из машин в сети. Однако по мере её роста такой метод перестал оправдывать себя – появилась потребность в новом механизме, которым и стала DNS, разработанная в 1983 году Полом Мокапетрисом (Paul Mockapetris).
Что такое DNS?
Система доменных имен (DNS) является одной из фундаментальных технологий современной интернет-среды и представляет собой распределенную систему хранения и обработки информации о доменных зонах. Она необходима, в первую очередь, для соотнесения IP-адресов устройств в сети и более удобных для человеческого восприятия символьных имен.
DNS состоит из распределенной базы имен, чья структура напоминает логическое дерево, называемое пространством имен домена. Каждый узел в этом пространстве имеет свое уникальное имя. Это логическое дерево «растет» из корневого домена, который является самым верхним уровнем иерархии DNS и обозначается символом – точкой. А уже от корневого элемента ответвляются поддоменые зоны или узлы (компьютеры).
Пространство имен, которое сопоставляет адреса и уникальные имена, может быть организовано двумя путями: плоско и иерархически. В первом случае имя назначается каждому адресу и является последовательностью символов без структуры, закрепленной какими-либо правилами. Главный недостаток плоского пространства имен – оно не может быть использовано в больших системах, таких как интернет, из-за своей хаотичности, поскольку в этом случае достаточно сложно провести проверку неоднозначности и дублирования.
В иерархическом же пространстве имен каждое имя составлено из нескольких частей: например, домена первого уровня .ru, домена второго уровня 1cloud.ru, домена третьего уровня panel.1cloud.ru и т. д. Этот тип пространства имен позволяет легко проводить проверки на дубликаты, и при этом организациям не нужно беспокоиться, что префикс, выбранный для хоста, занят кем-то другим – полный адрес будет отличаться.
Сопоставление имен
Давайте взглянем, как происходит сопоставление имен и IP-адресов. Предположим, пользователь набирает в строке браузера www.1cloud.ru и нажимает Enter. Браузер посылает запрос DNS-серверу сети, а сервер, в свою очередь, либо отвечает сам (если ответ ему известен), либо пересылает запрос одному из высокоуровневых доменных серверов (или корневому).
Затем запрос начинает свое путешествие – корневой сервер пересылает его серверу первого уровня (поддерживающего зону .ru). Тот – серверу второго уровня (1cloud) и так далее, пока не найдется сервер, который точно знает запрошенное имя и адрес, либо знает, что такого имени не существует. После этого запрос начинает движение обратно. Чтобы наглядно объяснить, как это работает, ребята из dnssimple подготовили красочный комикс, который вы можете найти по ссылке.
Также стоит пару слов сказать про процедуру обратного сопоставления – получение имени по предоставленному IP-адресу. Это происходит, например, при проверках сервера электронной почты. Существует специальный домен in-addr.arpa, записи в котором используются для преобразования IP-адресов в символьные имена. Например, для получения DNS-имени для адреса 11.22.33.44 можно запросить у DNS-сервера запись 44.33.22.11.in-addr.arpa, и тот вернёт соответствующее символьное имя.
Кто управляет и поддерживает DNS-сервера?
Когда вы вводите адрес интернет-ресурса в строку браузера, он отправляет запрос на DNS-сервер отвечающий за корневую зону. Таких серверов 13 и они управляются различными операторами и организациями. Например, сервер a.root-servers.net имеет IP-адрес 198.41.0.4 и находится в ведении компании Verisign, а e.root-servers.net (192.203.230.10) обслуживает НАСА.
Каждый из этих операторов предоставляет данную услугу бесплатно, а также обеспечивает бесперебойную работу, поскольку при отказе любого из этих серверов станут недоступны целые зоны интернета. Ранее корневые DNS-серверы, являющиеся основой для обработки всех запросов о доменных именах в интернете, располагались в Северной Америке. Однако с внедрением технологии альтернативной адресации они «распространились» по всему миру, и фактически их число увеличилось с 13 до 123, что позволило повысить надёжность фундамента DNS.
Например, в Северной Америке находятся 40 серверов (32,5%), в Европе – 35 (28,5%), еще 6 серверов располагаются в Южной Америке (4,9%) и 3 – в Африке (2,4%). Если взглянуть на карту, то DNS-серверы расположены согласно интенсивности использования интернет-инфраструктуры.
Защита от атак
Атаки на DNS – далеко не новая стратегия хакеров, однако только недавно борьба с этим видом угроз стала принимать глобальный характер.
«В прошлом уже происходили атаки на DNS-сервера, приводящие к массовым сбоям. Как-то из-за подмены DNS-записи в течение часа для пользователей был недоступен известный всем сервис Twitter, – рассказывает Алексей Шевченко, руководитель направления инфраструктурных решений российского представительства ESET. – Но куда опаснее атаки на корневые DNS-сервера. В частности, широкую огласку получили атаки в октябре 2002 года, когда неизвестные пытались провести DDoS-атаку на 10 из 13 DNS-серверов верхнего уровня».
Протокол DNS использует для работы TCP- или UDP-порт для ответов на запросы. Традиционно они отправляются в виде одной UDP-датаграммы. Однако UDP является протоколом без установления соединения и поэтому обладает уязвимостями, связанными с подделкой адресов – многие из атак, проводимых на DNS-сервера, полагаются на подмену. Чтобы этому препятствовать, используют ряд методик, направленных на повышение безопасности.
Одним из вариантов может служить технология uRPF (Unicast Reverse Path Forwarding), идея которой заключается в определении того, может ли пакет с определенным адресом отправителя быть принят на конкретном сетевом интерфейсе. Если пакет получен с сетевого интерфейса, который используется для передачи данных, адресованных отправителю этого пакета, то пакет считается прошедшим проверку. В противном случае он отбрасывается.
Несмотря на то что, данная функция может помочь обнаружить и отфильтровать некоторую часть поддельного трафика, uRPF не обеспечивает полную защиту от подмены. uRPF предполагает, что прием и передача данных для конкретного адреса производится через один и тот же интерфейс, а это усложняет положение вещей в случае нескольких провайдеров. Более подробную информацию о uRPF можно найти здесь.
Еще один вариант – использование функции IP Source Guard. Она основывается на технологии uRPF и отслеживании DHCP-пакетов для фильтрации поддельного трафика на отдельных портах коммутатора. IP Source Guard проверяет DHCP-трафик в сети и определяет, какие IP-адреса были назначены сетевым устройствам.
После того как эта информация была собрана и сохранена в таблице объединения отслеживания DHCP-пакетов, IP Source Guard может использовать ее для фильтрации IP-пакетов, полученных сетевым устройством. Если пакет получен с IP-адресом источника, который не соответствует таблице объединения отслеживания DHCP-пакетов, то пакет отбрасывается.
Также стоит отметить утилиту dns-validator, которая наблюдает за передачей всех пакетов DNS, сопоставляет каждый запрос с ответом и в случае несовпадения заголовков уведомляет об этом пользователя. Подробная информация доступна в репозитории на GitHub.
Система доменных имён разработана в еще 80-х годах прошлого века и продолжает обеспечивать удобство работы с адресным пространством интернета до сих пор. Более того, технологии DNS постоянно развиваются, например, одним из значимых нововведений недавнего времени стало внедрение доменных имен на национальных алфавитах (в том числе кириллический домен первого уровня.рф).
Постоянно ведутся работы по повышению надежности, чтобы сделать систему менее чувствительной к сбоям (стихийные бедствия, отключения электросети и т. д.), и это очень важно, поскольку интернет стал неотъемлемой частью нашей жизни, и «терять» его, даже на пару минут, совершенно не хочется.
Кстати, компания 1cloud предлагает своим пользователям VPS бесплатную услугу «DNS-хостинг» – инструмент, упрощающий администрирование ваших проектов за счет работы с общим интерфейсом для управления хостами и ссылающимися на них доменами.
О чем еще мы пишем:
- Мифы об облачных технологиях. Часть 1
- Мифы об облачных технологиях. Часть 2
- Как создать провайдера виртуальной инфраструктуры
- Как выбрать направление для развития ИТ-проекта
- Что нужно знать об IaaS-провайдере до начала работы
Источник: habr.com
Что такое DNS простыми словами и для чего он нужен?
Приветствую на fast-wolker и желаю всем добра! Что такое IP адрес мы уже знаем. И первые небольшие компьютерные сети работали при помощи этой технологии вполне успешно. Для связи с другими компьютерами использовались так же и их имена (хосты) , которые прописывались в hosts — файле. Этого по началу хватало.
Сети росли и разработчики IP пришли к выводу, что нужна другая система именования, которая позволила бы неограниченному числу компьютеров без ошибок связываться друг с другом. Ведь знать имена всех компьютеров и постоянно пополнять ими файл hosts — задача невыполнимая. Да и в начале создания этой новой системы разработчики
не предполагали, что она в недалеком будущем будет успешно работать в глобальном масштабе. Ведь изначально DNS создавался для локальных компьютерных сетей. Интернет с тех пор шагнул далеко вперед — но работает он по прежнему на нерушимых принципах IP и DNS .
Объясните, что такое DNS и его назначение?
Способ, к которому прибегли разработчики для понимания и прост и сложен. Они создали доменную систему именования компьютеров (Domain Name System) или DNS. Слово «домен» подразумевает некую иерархию, которая является правилом присвоения DNS -имени тому или иному узлу. Для лучшего понимания структуры DNS сначала рекомендую ознакомиться с материалам «Что такое домен сайта«, где подробнее описана принятая иерархия доменных имен.
Простыми словами DNS работает следующим образом. Компьютеру (серверу) на котором физически расположен нужный сайт присваивается некий IP адрес, который нам неизвестен. Но известно доменное имя нужного сайта. В процессе поиска сайта компьютер по цепочке получает нужный IP. Возможно и обратное преобразование — из IP адреса можно получить доменное имя сервера.
Назначение DNS — обеспечение связи между компьютерами сети в глобальном масштабе. Например, когда вы ввели в поисковую строку адрес нужного сайта (www.fast-wolker.ru) компьютер на доли секунды задумывается, преобразовывая набранное имя. Сначала ваш компьютер формирует служебное сообщение DNS серверу вашего интернет- провайдера.
DNS сервер «просматривает» сформированное сообщение, получает нужный IP адрес от других DNS -серверов (мы об этом еще поговорим) и возвращает ответное сообщение вашему компьютеру. Только после этого ваш компьютер отправляет запрос уже на искомый сайт. Если положительный ответ получен — связь установлена.
Процесс преобразования доменных имен в IP адрес принято называть «Разрешение имен». Программа, которая преобразует называется «интерпретатором» (resolver) и является обязательной составной частью любой операционной системы.
Основы и технические особенности DNS были подробно описаны в RFC 1034 и RFC 1035. Сам протокол DNS непрерывно совершенствуется и развивается — в ногу со временем.
Что такое DNS сервер простыми словами?
Главное правило — доменные имена в интернет пространстве (или доменной сети) должны иметь иерархию и никогда не повторяться. DNS -имена таким образом формируют актуальную структуру всего интернета. И всю нагрузку по обеспечению работоспособности интернета делят между собой DNS серверы и их администраторы.
DNS-имена серверов так же назначены по иерархическому принципу. Существуют корневые DNS сервера (root-name server). Они содержат список доменов первого уровня, а так же IP- адреса их управляющих серверов.
Управляющим сервером или (authoritative server) называется компьютер хранящий всю информацию о конкретном домене. На администраторах DNS лежит большая ответственность за непрерывную работоспособность серверов.
Давайте разберемся, что происходит на DNS сервере, который получил пакет от вашего компьютера. Пытаясь разрешить нужное имя сервер формирует запрос об адресе на корневой DNS сервер домена первого уровня (RU).
Управляющий DNS сервер первого доменного уровня в ответ сформировал пакет с адресом управляющего DNS- сервера c доменами второго уровня и отправил его на ваш компьютер обратно. После чего ваш компьютер снова формирует запрос на управляющий сервер уже второго доменного уровня с запросом адреса нужного сайта и так далее, пока не получит пакет с конечным адресом..
Уже рассказывалось, что в любом домене можно сформировать поддомен, а внутри еще один — как в матрешке. Поиск нужного происходит сегодня в доли секунды — на серверах DNS служебные записи о сайтах (доменах) хранится в кэше. Для популярных ресурсов уже не нужно связываться со всеми серверами цепочки — ответ формируется из сохраненных однажды данных кэша «ближайшего» сервера.
Единицей хранения информации на DNS сервере является «запись ресурса». Они формируются как вручную так и автоматически Эти записи вставляются в сообщения и используется в вычислениях для разрешаемого имени. Виды записи ресурса многочисленны и для разных уровней доменов имеют свой формат.
Как настроить ip адрес DNS на компьютере?
Теперь понятно, что без соответствующих правильных настроек работа интернета на вашем компьютере будет невозможна. Подробно про ошибку «DNS-сервер не отвечает» и способах ее устранения уже было рассказано. Но как правило, большинству пользователей интернета беспокоится не о чем — провайдер автоматически все настройки уже сделал.
Однако, если провайдер выдал вам интернет с выделенным IP, тогда настройку DNS делаем сначала на роутере. На компьютере локальной сети после этого можно указать выданные провайдером адреса DNS сервера в настройках подключения :
В качестве примера в моем случае предпочитаемый DNS сервер указан адрес шлюза роутера, (на котором уже прописаны DNS адреса провайдера). Адрес гугла указан в поле «Альтернативный DNS».
Можно указать и DNS адреса провайдера. Будет работать! Если намудрили с настройками — сбрасываем роутер на заводские настройки и делаем все с нуля. Вот мы и убедились, что DNS тесно связано с IP и одно без другого работать не будет, если дело касается интернета.
Источник: fast-wolker.ru