Что такое DNS? Компания DNS: компьютерная техника из Владивостока

480 auto

Если спросить среднего пользователя интернета, что такое сайт, скорее всего, он назовёт, например, yandex.ru, mail.ru, google.com, facebook.com, …

В практическом смысле этого вполне достаточно: нашёл интересный сайт, сообщил знакомым его доменное имя (или проще, «адрес»).

Однако настоящим адресом доменное имя не является. Ну это примерно так же, как отправить письмо с надписью на конверте: «город Екатеринбург, Петру Иванову». Здесь дело даже не в том, что Петров Ивановых в Екатеринбурге может быть несколько (представим, что человек с таким именем там единственный). Проблема в том, что адресат может перемещаться, минимум, по городу, и вручить ему письмо будет крайне проблематично.

Но письма-то доставляют и получают! — Да, конечно. Потому что они отправляют по почтовым адресам. Например, «город Ленинград, 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-сервер

Он-то и служит телефонной книгой. Он хранит информацию о том, какому IP-адресу соответствует то или иное доменное имя. В интернете DNS-серверов очень много. У них двойная роль:

  • главная — «телефонная интернет-книга»;
  • дополнительная (но тоже важная) — кэширование записей других DNS-серверов.

Сначала несколько слов о кэшировании. Выяснять связь между названием сайта и его IP-адресом требуется при каждом обращении к этому веб-сайту. Если сайт, который вы хотите посетить, находится достаточно далеко, многочисленные запросы к далёкому первичному DNS-серверу могут отнять много времени и замедлить загрузку веб-страниц. Чтобы избежать задержек, ближайший к вашему компьютеру DNS-сервер (обычно находящийся у вашего интернет-провайдера), сохраняет сведения о ранее запрошенных IP-адресах, и при повторном обращении к тому же сайту он сообщит его адрес очень быстро, так как будет хранить его в своём кэше.

Но чтобы что-то кэшировать, нужно иметь источник кэшируемого. Таким источником служат первичные DNS-сервера, хранящие изначальные связи между доменами и их IP-адресами.

Для регистрации доменного имени достаточно его придумать. Но для того, чтобы оно начало «работать», вы должны сообщить регистратору доменное имя DNS-сервера, который будет хранить подробные данные о регистрируемом вами домене. Об этих данных будет сказано чуть позже.

Обычно используют два DNS-сервера: первичный и вторичный. Но их может быть и больше. Большее число DNS-серверов повышает надёжность доступа к вашему домену: если один окажется недоступен, ответит другой.

В реальном мире двух — вполне достаточно.

Многие регистраторы доменных имён и просто интернет-провайдеры предлагают использовать свои DNS-серверы в режиме платной услуги.

Являясь провайдером виртуальной инфраструктуры, компания 1cloud интересуется сетевыми технологиями, о которых мы регулярно рассказываем в своем блоге. Сегодня мы подготовили материал, затрагивающий тему доменных имен. В нем мы рассмотрим базовые аспекты функционирования DNS и вопросы безопасности DNS-серверов.

Также стоит пару слов сказать про процедуру обратного сопоставления – получение имени по предоставленному 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.

Еще один вариант – использование функции IP Source Guard. Она основывается на технологии uRPF и отслеживании DHCP-пакетов для фильтрации поддельного трафика на отдельных портах коммутатора. IP Source Guard проверяет DHCP-трафик в сети и определяет, какие IP-адреса были назначены сетевым устройствам.

После того как эта информация была собрана и сохранена в таблице объединения отслеживания DHCP-пакетов, IP Source Guard может использовать ее для фильтрации IP-пакетов, полученных сетевым устройством. Если пакет получен с IP-адресом источника, который не соответствует таблице объединения отслеживания DHCP-пакетов, то пакет отбрасывается.

Также стоит отметить утилиту dns-validator, которая наблюдает за передачей всех пакетов DNS, сопоставляет каждый запрос с ответом и в случае несовпадения заголовков уведомляет об этом пользователя. Подробная информация доступна в

(сборочное производство). На середину 2015 года сеть насчитывает более 1400 магазинов в 540 городах России. Штаб-квартира компании находится во Владивостоке .

DNS, ДНС
Тип Частная компания
Основание
Расположение Россия Россия : Владивосток
Ключевые фигуры Дмитрий Юрьевич Алексеев (генеральный директор)
Отрасль розничная торговля (МСОК : 47 )
Оборот
Число сотрудников 15000 чел., центральный офис - 500 чел.
Сайт dns-shop.ru

/ STD 13

Основой DNS является представление об иерархической структуре доменного имени и зонах . Каждый сервер, отвечающий за имя, может делегировать ответственность за дальнейшую часть домена другому серверу (с административной точки зрения - другой организации или человеку), что позволяет возложить ответственность за актуальность информации на серверы различных организаций (людей), отвечающих только за «свою» часть доменного имени.

Начиная с 2010 года в систему DNS внедряются средства проверки целостности передаваемых данных, называемые DNS Security Extensions (DNSSEC). Передаваемые данные не шифруются, но их достоверность проверяется криптографическими способами. Внедряемый стандарт DANE обеспечивает передачу средствами DNS достоверной криптографической информации (сертификатов), используемых для установления безопасных и защищённых соединений транспортного и прикладного уровней.

Ключевые характеристики DNS

DNS обладает следующими характеристиками:

  • Распределённость администрирования . Ответственность за разные части иерархической структуры несут разные люди или организации.
  • Распределённость хранения информации . Каждый узел сети в обязательном порядке должен хранить только те данные, которые входят в его зону ответственности , и (возможно) адреса корневых DNS-серверов .
  • Кэширование информации . Узел может хранить некоторое количество данных не из своей зоны ответственности для уменьшения нагрузки на сеть.
  • Иерархическая структура , в которой все узлы объединены в дерево , и каждый узел может или самостоятельно определять работу нижестоящих узлов, или делегировать (передавать) их другим узлам.
  • Резервирование . За хранение и обслуживание своих узлов (зон) отвечают (обычно) несколько серверов, разделённые как физически, так и логически, что обеспечивает сохранность данных и продолжение работы даже в случае сбоя одного из узлов.

Адреса назначались вручную. Чтобы запросить имя хоста и адрес и добавить компьютер в главный файл, пользователи связывались с сетевым информационным центром (NIC) SRI, руководимым Элизабет Фейнлер , по телефону в рабочее время.

К началу 1980-х годов поддержание единой централизованной таблицы хостов стало медленным и громоздким, а развивающейся сети требовалась автоматическая система именования для решения технических и кадровых вопросов. Постел поставил перед собой задачу выработать компромисс между пятью конкурирующими предложениями для решения задачи, сформулированной Полом Мокапетрисом. Мокапетрис вместо этого создал концепцию иерархической системы доменных имен.

Для подтверждения результатов DNS также могут использоваться такие методы, как обратный DNS с подтверждением прямых записей, но криптографически достоверными они не являются; при этом не учитывается вариант подмены маршрутной информации (англ. BGP hijacking ).

Терминология и принципы работы

Ключевыми понятиями DNS являются:

  • Доме́н (англ. domain «область») - узел в дереве имён, вместе со всеми подчинёнными ему узлами (если таковые имеются), то есть именованная ветвь или поддерево в дереве имён. Структура доменного имени отражает порядок следования узлов в иерархии; доменное имя читается слева направо от младших доменов к доменам высшего уровня (в порядке повышения значимости): вверху находится корневой домен (имеющий идентификатор « . »(точка)), ниже идут домены первого уровня (доменные зоны), затем - домены второго уровня, третьего и т. д. (например, для адреса ru.wikipedia.org. домен первого уровня - org , второго - wikipedia , третьего - ru). DNS позволяет не указывать точку корневого домена.
  • Поддомен (англ. subdomain ) - подчинённый домен (например, wikipedia.org - поддомен домена org , а ru.wikipedia.org - домена wikipedia.org). Теоретически такое деление может достигать глубины 127 уровней, а каждая метка может содержать до 63 символов, пока общая длина вместе с точками не достигнет 254 символов. Но на практике регистраторы доменных имён используют более строгие ограничения. Например, если у вас есть домен вида mydomain.ru , вы можете создать для него различные поддомены вида mysite1.mydomain.ru , mysite2.mydomain.ru и т. д.
  • Ресурсная запись - единица хранения и передачи информации в DNS. Каждая ресурсная запись имеет имя (то есть привязана к определённому доменному имени , узлу в дереве имён), тип и поле данных , формат и содержание которого зависит от типа .
  • Зона - часть дерева доменных имён (включая ресурсные записи ), размещаемая как единое целое на некотором сервере доменных имён (DNS-сервере , см. ниже), а чаще - одновременно на нескольких серверах (см. ниже). Целью выделения части дерева в отдельную зону является передача ответственности (см. ниже) за соответствующий домен другому лицу или организации. Это называется делегированием (см. ниже). Как связная часть дерева, зона внутри тоже представляет собой дерево. Если рассматривать пространство имён DNS как структуру из зон, а не отдельных узлов/имён, тоже получается дерево; оправданно говорить о родительских и дочерних зонах, о старших и подчинённых. На практике большинство зон 0-го и 1-го уровня (".", ru, com, …) состоят из единственного узла, которому непосредственно подчиняются дочерние зоны. В больших корпоративных доменах (2-го и более уровней) иногда встречается образование дополнительных подчинённых уровней без выделения их в дочерние зоны.
  • Делегирование - операция передачи ответственности за часть дерева доменных имён другому лицу или организации. За счёт делегирования в DNS обеспечивается распределённость администрирования и хранения. Технически делегирование выражается в выделении этой части дерева в отдельную зону , и размещении этой зоны на DNS-сервере (см. ниже), управляемом этим лицом или организацией. При этом в родительскую зону включаются «склеивающие » ресурсные записи (NS и А), содержащие указатели на DNS-сервера дочерней зоны, а вся остальная информация, относящаяся к дочерней зоне, хранится уже на DNS-серверах дочерней зоны.
  • DNS-сервер - специализированное ПО для обслуживания DNS, а также компьютер, на котором это ПО выполняется. DNS-сервер может быть ответственным за некоторые зоны и/или может перенаправлять запросы вышестоящим серверам.
  • DNS-клиент - специализированная библиотека (или программа) для работы с DNS. В ряде случаев DNS-сервер выступает в роли DNS-клиента.
  • Авторитетность (англ. authoritative ) - признак размещения зоны на DNS-сервере. Ответы DNS-сервера могут быть двух типов: авторитетные (когда сервер заявляет, что сам отвечает за зону) и неавторитетные (англ. Non-authoritative ), когда сервер обрабатывает запрос, и возвращает ответ других серверов. В некоторых случаях вместо передачи запроса дальше DNS-сервер может вернуть уже известное ему (по запросам ранее) значение (режим кеширования).
  • DNS-запрос (англ. DNS query ) - запрос от клиента (или сервера) серверу. Запрос может быть рекурсивным или нерекурсивным (см. Рекурсия).

Система DNS содержит иерархию DNS-серверов , соответствующую иерархии зон . Каждая зона поддерживается как минимум одним авторитетным сервером DNS (от англ. authoritative - авторитетный), на котором расположена информация о домене.

Для повышения устойчивости системы используется множество серверов, содержащих идентичную информацию, а в протоколе есть средства, позволяющие поддерживать синхронность информации, расположенной на разных серверах. Существует 13 корневых серверов , их адреса практически не изменяются.

Протокол DNS использует для работы TCP - или UDP -порт 53 для ответов на запросы. Традиционно запросы и ответы отправляются в виде одной UDP-датаграммы . TCP используется, когда размер данных ответа превышает 512 байт, и для AXFR -запросов.

Рекурсия

Термином рекурсия в DNS обозначают алгоритм поведения DNS-сервера : выполнение от имени клиента полный поиск нужной информации во всей системе DNS, при необходимости обращаясь к другим DNS-серверам .

DNS-запрос может быть рекурсивным - требующим полного поиска, - и нерекурсивным (или итеративным ) - не требующим полного поиска.

Аналогично - DNS-сервер может быть рекурсивным (умеющим выполнять полный поиск) и нерекурсивным (не умеющим выполнять полный поиск). Некоторые программы DNS-серверов, например, BIND , можно сконфигурировать так, чтобы запросы одних клиентов выполнялись рекурсивно , а запросы других - нерекурсивно .

При ответе на нерекурсивный запрос, а также при неумении или запрете выполнять рекурсивные запросы, DNS-сервер либо возвращает данные о зоне, за которую он ответственен , либо возвращает ошибку. Настройки нерекурсивного сервера, когда при ответе выдаются адреса серверов, которые обладают большим объёмом информации о запрошенной зоне, чем отвечающий сервер (чаще всего - адреса корневых серверов), являются некорректными, и такой сервер может быть использован для организации DoS-атак .

В случае рекурсивного запроса DNS-сервер опрашивает серверы (в порядке убывания уровня зон в имени), пока не найдёт ответ или не обнаружит, что домен не существует (на практике поиск начинается с наиболее близких к искомому DNS-серверов, если информация о них есть в кэше и не устарела, сервер может не запрашивать другие DNS-серверы).

Рассмотрим на примере работу всей системы.

Рекурсивные запросы требуют больше ресурсов от сервера (и создают больше трафика), так что обычно принимаются от «известных» владельцу сервера узлов (например, провайдер предоставляет возможность делать рекурсивные запросы только своим клиентам, в корпоративной сети рекурсивные запросы принимаются только из локального сегмента). Нерекурсивные запросы обычно принимаются ото всех узлов сети (и содержательный ответ даётся только на запросы о зоне, которая размещена на узле, на DNS-запрос о других зонах обычно возвращаются адреса других серверов).

Обратный DNS-запрос

DNS используется в первую очередь для преобразования символьных имён в IP-адреса, но он также может выполнять обратный процесс. Для этого используются уже имеющиеся средства DNS. Дело в том, что с записью DNS могут быть сопоставлены различные данные, в том числе и какое-либо символьное имя. Существует специальный домен in-addr.arpa , записи в котором используются для преобразования IP-адресов в символьные имена. Например, для получения DNS-имени для адреса 11.22.33.44 можно запросить у DNS-сервера запись 44.33.22.11.in-addr.arpa , и тот вернёт соответствующее символьное имя. Обратный порядок записи частей IP-адреса объясняется тем, что в IP-адресах старшие биты расположены в начале, а в символьных DNS-именах старшие (находящиеся ближе к корню) части расположены в конце.

Ссылки

И вы, наверно, заметили, что на пути реализации такой идеи встречаются понятия, о которых ранее вы даже не слышали.

Например, у вас мог возникнуть вопрос: что такое dns? Я думаю, вы сталкивались с подобной аббревиатурой, но, что она означает, знают не многие.

Domain Names System

Итак, на самом деле значение аббревиатуры DNS расшифруется очень просто – Domain Names System (Система доменных имен). Звучит, возможно, не понятно, но это только так кажется. А, между прочим, каждый пользователь сети Интернет сталкивается с этой системой множество раз за день.

Мы привыкли, что адрес веб-сайта написан в виде набора букв, очень удобных для восприятия, например: google.com или mail.ru. Эти буквенные адреса работают именно благодаря системе доменных имен. Для адресов интернет-узлов применяется специальная цифровая кодировка, так называемые IP-адреса, а задача ДНС в том, чтобы связать названия интернет-сайтов в буквенном виде с IP в виде цифр.

Первоочередная задача Domain Names System – это упростить поиск в сети интернет необходимых ресурсов. Например, чтобы попасть на интернет-сайт поисковой системы google, обычно в адресную строку вводим google.com, но ведь можно и IP-адресом воспользоваться, написав 194.122.81.53.

Как видите все достаточно просто, но буквенное отображение адреса запомнить куда проще.

Еще следует сказать, что Domain Names System имеет свою древовидную структуру. Ее узлы называются доменами, каждый из которых может содержать много «подчиненных» доменов. Структуру принято делить на уровни. Начинается система с корневого домена (нулевой уровень). Бывают домены общего назначения (COM, NET, ORG и т.д.), и двухбуквенные коды стран (ru, ua, kz и пр.).

Давайте рассмотрим на примере, чтобы более понятно. Домены первого уровня — это com, org, ru и подобные. Под ними второй уровень — rambler.ru, google.com; а домены третьего уровня выглядят так: banner.org.ru, shops.com.ua и т.д.

Ваш сайт и DNS

Когда создаешь свой интернет-сайт или блог (не важно какого плана ресурс), вы обязательно столкнетесь с такими понятиями как , и конечно dns. Если вы не первый раз читаете мой блог, то знаете, что хостинг является территорией, где размещается ваш веб-ресурс, а домен – это его название (или адрес).

Правильные настройки dns личного сайта – очень важный момент. Если данные были введены некорректно, то это может привести к тому, что веб-сайт не будет работать вообще.

Когда происходит настройка ДНС, вы словно информируете всю Глобальную сеть о том, где искать ваш web-ресурс. Если вы сменили хостинг-провайдера и не изменили информацию в записи своего домена, то все указатели будут посылать пользователей на тот сервер, где его уже давно нет, то есть в «никуда».

Если сделать все правильно, проблем возникнуть не должно. Для чайников дам небольшое напутствие. Во время переноса веб-сайта на другой хостинг вам потребуется изменить в административной панели управления доменом данные dns-сервера. Если вы не знаете, как узнать ваши данные dns, обратитесь к своему провайдеру.

Как все работает?

Я думаю, что вы уже уяснили, что dns преобразовывает буквы в цифры (названия в ip). Когда вы вводите название веб-узла в адресной строке , формируется dns-запрос к серверу имен. В результате определяется ip адрес ресурса, на который мы хотим перейти. То есть символьные обозначения нужны только для удобства людей, а компьютеры для связи в сети интернет используют ip адреса.

Существует два типа серверов имен: те, которые сохраняют всю информацию про доменную зону, и те, которые отвечают на dns-запрос для пользователей сети. Последние сохраняют ответы в кэш для того, чтобы следующий такой запрос происходил намного быстрее. Благодаря кэшированию сокращается количество запросов информации.

Думаю, теперь аббревиатура dns вас не пугает. Расскажите об этом своим друзьям посредством социальных сетей, пусть также прочтут этот материал и узнают, что такое система доменных имен.

Подписывайтесь на обновления блога, чтобы получать рассылку и первыми узнавать о редакции новой статьи, до скорой встречи!

С уважением! Абдуллин Руслан




Top