Протокол DNS. Как это работает: Пара слов о DNS Что такое dns имя

DNS - это специальная система для получения сведений о доменах (Domain Name System).

Зачем нужен DNS?

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

Как работает DNS?

Все сайты хранятся на серверах хостинг-провайдеров. У которых есть сотни или тысячи серверов, и у каждого из них есть свой IP-адрес. Когда пользователь хочет открыть какой-либо сайт (например hostings.info), то он вводит его в браузере и с компьютера уходит запрос.

Сначала запрос идет на DNS-сервер, который подсказывает где можно узнать IP-адрес сервера, на котором хранятся файлы запрашиваемого сайта. В ответе, приходит адрес NS-сервера (ns1.hoster.com и ns2.hoster.com).

После этого идет запрос на сервер с IP 218.106.218.10, тот обрабатывает запрос пользователя и в ответ показывает пользователю сайт, который он хотел открыть.

Как использовать DNS в хостинге?

В первую очередь DNS используют для переезда сайта на новый хостинг, или же для закрепления домена за конкретным провайдером (если домен новый).

Как настроить DNS?

Даже если у вас мало опыта, вскоре вы убедитесь, что изменять настройки DNS очень просто. Все что вам нужно - это зайти в панель управления доменом (она находится либо у регистратора домена, либо у хостера [если вы регистрировали домен через него]). И внести туда названия DNS-серверов (например ns1.hoster.com и ns2.hoster.com), которые можно узнать у хостинг-провайдера. Но чаще всего они приходят вместе с остальными настройками, в первом письме, которое присылает хостинг-провайдер.

Как узнать текущие DNS своего или чужого сайта?

Это можно сделать с помощью любого WHOIS-сервиса, рейтинг которых мы составили .

Важно

Возможность изменения настроек DNS своего интернет-сайта играет важную роль для многих пользователей. Однако, следует знать, что неправильно введенные данные в DNS настройки могут стать причиной нарушений работы сайта и даже его полной неработоспособности в течение длительного периода времени. Это происходит в связи с тем, что изменения DNS вступают в силу не сразу же. Если вы ввели неверные данные, то это приведет к тому, что доступ к сайту будет заблокирован не только для его потенциальных посетителей, но и для вас самих. После исправления ошибки, должно пройти до 72 часов, чтобы корректировки вступили в силу.

Что такое сервер доменных имен (DNS)?

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

Почему это происходит?

Данный алгоритм действий принят в связи с тем, что доменное имя не всегда постоянный адрес. Серверы в Интернете имеют свои IP адреса, представляющие собой определенный набор цифр. Каждый раз, когда сайт меняет хостинг-провайдера, это означает, что он переезжает на другой сервер, а новый сервер, соответственно, имеет свой IP адрес.

На сервере доменных имен хранится запись об имени домена сайта и IP адрес сервера, куда нужно посылать запросы.

Почему в записи домена нужно обязательно указывать сервер имен хостинга?

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

Почему информация об изменениях хостинга так долго вступает в силу?

Когда пользователь меняет хостинг-провайдера или впервые регистрирует доменное имя, данные о записи автоматически поступают на другие серверы доменных имен. Сайт может начать функционировать и спустя 4 часа после регистрации, однако средний промежуток времени распространения информации составляет от 24 до 72 часов. Такая ситуация связано с тем, что, в основном, большинство серверных имен периодически обновляют информацию. Это означает, что хранящаяся информация не всегда актуальна. Обновление информации происходит через определенный промежуток времени, это связано с тем, что информация подобного уровня меняется крайне редко.

Что делать, если домен ссылается на прежний хостинг, хотя там давно нет аккаунта?

Такая ситуация связана со следующими возможными причинами:

1. Данные о прежних DNS сохранилась в записях вашего домена.

Решение проблемы: вам необходимо откорректировать записи своего домена таким образом, чтобы они указывали на сервер имен вашего текущего хостинг-провайдера.

2. ваш прежний хостинг-провайдер не удалил со своего сервера записи о вашем домене.

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

3. Информация о новой записи вашего веб-сайта еще не успела распространиться на все серверы имен. Такая ситуация происходит тогда, когда вы изменяете запись указателя сервера имен домена вашего веб-сайта.

Решение проблемы: подождите 24-72 часов, за это время настройки вступят в силу. Однако если проблема не решается, обратитесь к вашему новому хостинг-провайдеру.

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

Скорее всего, записи о вашем домене уже успели обновиться у провайдера, к которому они подсоединены. В течение 72 часов эти записи также обновятся и у вашего провайдера.

  • Перевод

Внимательный читатель найдет на этой картинке IPv6


Люди часто озадачены доменами. Почему мой сайт не работает? Почему эта хрень поломана, ничего не помогает, я просто хочу, чтобы это работало! Обычно, вопрошающий или не знает про DNS, или не понимает фундаментальных идей. Для многих DNS - страшная и непонятная штука. Эта статья - попытка развеять такой страх. DNS - это просто , если понять несколько базовых концепций.

Что такое DNS

DNS расшифровывается как Domain Name System . Это глобальное распределенное хранилище ключей и значений. Сервера по всему миру могут предоставить вам значение по ключу, а если им неизвестен ключ, то они попросят помощи у другого сервера.


Вот и все. Правда. Вы или ваш браузер запрашивает значение для ключа www.example.com , и получает в ответ 1.2.3.4 .

Базовые штуки

Большой плюс DNS в том, что это публичная услуга, и можно потыкать в сервера если хочется разобраться. Давайте попробуем. У меня есть домен petekeen.net , который хостится на машине web01.bugsplat.info . Команды, используемые ниже, можно запустить из командной строки OS X (ой, то есть macOS, - прим. пер. ).


Давайте взглянем на маппинг между именем и адресом:


$ dig web01.bugsplat.info

Команда dig это такой швейцарский армейский нож для DNS-запросов. Крутой, многофункциональный инструмент. Вот первая часть ответа:


; <<>> DiG 9.7.6-P1 <<>> web01.bugsplat.info ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51539 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

Здесь есть только одна интересная деталь: информация о самом запросе. Говорится, что мы запросили запись и получили ровно один ответ. Вот:


;; QUESTION SECTION: ;web01.bugsplat.info. IN A

dig по-умолчанию запрашивает A -записи. A это address (адрес), и это один из фундаментальных видов записей в DNS. A содержит один IPv4 -адрес. Есть эквивалент для IPv6 -адресов - AAAA . Давайте взглянем на ответ:


;; ANSWER SECTION: web01.bugsplat.info. 300 IN A 192.241.250.244

Оставшаяся часть ответа описывает сам ответ:


;; Query time: 20 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Fri Jul 19 20:01:16 2013 ;; MSG SIZE rcvd: 56

В частности, здесь говорится, как долго сервер откликался, какой у сервера IP-адрес (192.168.1.1), на какой порт стучался dig (53 , DNS-порт по-умолчанию), когда запрос был завершен и сколько байтов было в ответе.


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


Но в этом примере не видно, что DNS-сервер 192.168.1.1 связался с кучей других серверов чтобы ответить на простой вопрос: «куда указывает адрес web01.bugsplat.info ?». Давайте запустим трейс чтобы узнать о всей возможной цепочке, которую пришлось бы пройти dig "у, если бы информация не был закэширована:


$ dig +trace web01.bugsplat.info ; <<>> DiG 9.7.6-P1 <<>> +trace web01.bugsplat.info ;; global options: +cmd . 137375 IN NS l.root-servers.net. . 137375 IN NS m.root-servers.net. . 137375 IN NS a.root-servers.net. . 137375 IN NS b.root-servers.net. . 137375 IN NS c.root-servers.net. . 137375 IN NS d.root-servers.net. . 137375 IN NS e.root-servers.net. . 137375 IN NS f.root-servers.net. . 137375 IN NS g.root-servers.net. . 137375 IN NS h.root-servers.net. . 137375 IN NS i.root-servers.net. . 137375 IN NS j.root-servers.net. . 137375 IN NS k.root-servers.net. ;; Received 512 bytes from 192.168.1.1#53(192.168.1.1) in 189 ms info. 172800 IN NS c0.info.afilias-nst.info. info. 172800 IN NS a2.info.afilias-nst.info. info. 172800 IN NS d0.info.afilias-nst.org. info. 172800 IN NS b2.info.afilias-nst.org. info. 172800 IN NS b0.info.afilias-nst.org. info. 172800 IN NS a0.info.afilias-nst.info. ;; Received 443 bytes from 192.5.5.241#53(192.5.5.241) in 1224 ms bugsplat.info. 86400 IN NS ns-1356.awsdns-41.org. bugsplat.info. 86400 IN NS ns-212.awsdns-26.com. bugsplat.info. 86400 IN NS ns-1580.awsdns-05.co.uk. bugsplat.info. 86400 IN NS ns-911.awsdns-49.net. ;; Received 180 bytes from 199.254.48.1#53(199.254.48.1) in 239 ms web01.bugsplat.info. 300 IN A 192.241.250.244 bugsplat.info. 172800 IN NS ns-1356.awsdns-41.org. bugsplat.info. 172800 IN NS ns-1580.awsdns-05.co.uk. bugsplat.info. 172800 IN NS ns-212.awsdns-26.com. bugsplat.info. 172800 IN NS ns-911.awsdns-49.net. ;; Received 196 bytes from 205.251.195.143#53(205.251.195.143) in 15 ms

Информация выводится в иерархической последовательности. Помните как dig вставил точку. после хоста, web01.bugsplat.info ? Так вот, точка. это важная деталь, и она означает корень иерархии.


Корневые DNS-сервера обслуживаются различными компаниями и государствами по всему миру. Изначально их было мало, но интернет рос, и сейчас их 13 штук. Но у каждого из серверов есть десятки или сотни физических машин, которые прячутся за одним IP.


Итак, в самом верху трейса находятся корневые сервера, каждый определен с помощью NS- записи. NS -запись связывает доменное имя (в данном случае, корневой домен) с DNS-сервером. Когда вы регистрируете доменное имя у регистратора типа Namecheap или Godaddy, они создают NS -записи для вас.


В следующем блоке видно, как dig выбрал случайный корневой сервер, и запросил у него A -запись для web01.bugsplat.info . Видно только IP-адрес корневого сервера (192.5.5.241). Так какой именно корневой сервер это был? Давайте узнаем!


$ dig -x 192.5.5.241 ; <<>> DiG 9.8.3-P1 <<>> -x 192.5.5.241 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2862 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;241.5.5.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 241.5.5.192.in-addr.arpa. 3261 IN PTR f.root-servers.net.

Флаг -x заставляет dig провести обратный поиск по IP-адресу. DNS отвечает записью PTR , которая соединяет IP и хост, в данном случае - f.root-servers.net .


Возвращаясь к нашему начальному запросу: корневой сервер F вернул другой набор NS -серверов. Он отвечает за домен верхнего уровня info . dig запрашивает у одного из этих серверов запись A для web01.bugsplat.info , и получает в ответ еще один набор NS -серверов, и потом запрашивает у одного из этих серверов запись A для web01.bugsplat.info. . И, наконец, получает ответ!


Уф! Сгенерировалось бы много трафика, но почти все эти записи были надолго закэшированы каждым сервером в цепочке. Ваш компьютер тоже кэширует эти данные, как и ваш браузер. Чаще всего DNS-запросы никогда не доходят до корневых серверов, потому что их IP-адреса почти никогда не изменяются («Наверно все таки речь идет о большом TTL для записей в их базе. Если у DNS сервера IP адрес вообще ни разу не изменялся, то это не означает, что его база навечно закеширована» - прим. от rrrav). Домены верхнего уровня com , net , org , и т.д. тоже обычно сильно закэшированы.

Другие типы

Есть еще несколько типов, о которых стоит знать. Первый это MX . Он соединяет доменное имя с одним или несколькими почтовыми серверами. Электронная почта настолько важна, что у нее есть свой тип DNS-записи. Вот значения MX для petekeen.net:


$ dig petekeen.net mx ; <<>> DiG 9.7.6-P1 <<>> petekeen.net mx ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18765 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;petekeen.net. IN MX ;; ANSWER SECTION: petekeen.net. 86400 IN MX 60 web01.bugsplat.info. ;; Query time: 272 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Fri Jul 19 20:33:43 2013 ;; MSG SIZE rcvd: 93

Заметьте, что MX -запись указывает на имя, а не на IP-адрес.


Еще один тип, который вам скорее всего знаком, это CNAME . Расшифровываетя как Canonical Name (каноническое имя). Он связывает одно имя с другим. Давайте посмотрим на ответ:


$ dig www.petekeen.net ; <<>> DiG 9.7.6-P1 <<>> www.petekeen.net ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16785 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.petekeen.net. IN A ;; ANSWER SECTION: www.petekeen.net. 86400 IN CNAME web01.bugsplat.info. web01.bugsplat.info. 300 IN A 192.241.250.244 ;; Query time: 63 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Fri Jul 19 20:36:58 2013 ;; MSG SIZE rcvd: 86

Сразу видно, что мы получили два ответа. Первый говорит, что www.petekeen.net указывает на web01.bugsplat.info . Второй возвращает запись A для того сервера. Можно считать, что CNAME это псевдоним (или алиас) для другого сервера.

Что не так с CNAME

Записи CNAME очень полезны, но есть важный момент: если есть CNAME с каким-то именем, то нельзя создать другую запись с таким же именем. Ни MX , ни A , ни NS , ничего.


Причина в том, что DNS производит замену таким образом, что все записи того места, куда указывает CNAME , также валидны для CNAME . В нашем примере, записи у www.petekeen.net и web01.bugsplat.info будут совпадать.


Поэтому нельзя делать CNAME на корневом домене вроде petekeen.net , потому что обычно там нужны другие записи, например, MX .

Запросы к другим серверам

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


$ dig www.petekeen.net @8.8.8.8

Символ @ с IP-адресом или хостом заставляет dig прозводить запрос к указанному серверу через порт по-умолчанию. Можно использовать публичный DNS-сервер Гугла или почти-публичный-сервер Level 3 по адресу 4.2.2.2 .

Типичные ситуации

Давайте рассмотрим типичные ситуации, знакомые многим веб-разработчикам.

Редирект домена на www

Часто нужно сделать редирект домена iskettlemanstillopen.com на www.iskettlemanstillopen.com . Регистраторы типа Namecheap или DNSimple называют это URL Redirect . Вот пример из админки Namecheap:



Символ @ означает корневой домен iskettlemanstillopen.com . Давайте посмотрим на запись A у этого домена:


$ dig iskettlemanstillopen.com ;; QUESTION SECTION: ;iskettlemanstillopen.com. IN A ;; ANSWER SECTION: iskettlemanstillopen.com. 500 IN A 192.64.119.118

Этот IP принадлежит Namecheap"у, и там крутится маленький веб-сервер, который просто делает перенаправление на уровне HTTP на адрес http://www.iskettlemanstillopen.com:


$ curl -I iskettlemanstillopen.com curl -I iskettlemanstillopen.com HTTP/1.1 302 Moved Temporarily Server: nginx Date: Fri, 19 Jul 2013 23:53:21 GMT Content-Type: text/html Connection: keep-alive Content-Length: 154 Location: http://www.iskettlemanstillopen.com/

CNAME для Heroku или Github

Взгляните на скриншот выше. На второй строке там CNAME . В этом случае www.iskettlemanstillopen.com указывает на приложение, запущенное на Heroku.


$ heroku domains === warm-journey-3906 Domain Names warm-journey-3906.herokuapp.com www.iskettlemanstillopen.com

С Github похожая история, но там нужно создать специальный файл в корне репозитория, и назвать его CNAME . См. документацию .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 вас не пугает. Расскажите об этом своим друзьям посредством социальных сетей, пусть также прочтут этот материал и узнают, что такое система доменных имен.

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

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

DNS расшифровывается как Domain Name System, то есть «Система доменных имён». Это такая система, в которой все доменные имена серверов распределены по определённой иерархии. Давайте разберёмся, для чего нужны DNS-сервера, как их настроить на Windows 7, что делать, если сервер не отвечает, и как исправить возможные ошибки.

Что такое DNS и для чего он нужен

На сервере DNS хранится информация о доменах. Для чего это нужно? Дело в том, что компьютеру не понятны наши с вами буквенные обозначения сетевых ресурсов. Вот, например, yandex.ru. Мы называем это адресом сайта, а для компьютера это всего лишь набор символов. Зато компьютер прекрасно понимает IP-адреса и как к ними обращаться. IP-адреса представлены как четыре числа из восьми символов в двоичной системе счисления. Например, 00100010.11110000.00100000.11111110. Для удобства, двоичные IP-адреса записывают в виде тождественных десятичных чисел (255.103.0.68).

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

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

Как узнать, включён ли DNS-сервер на компьютере

Узнать, включён ли DNS-сервер на вашем компьютере и его адрес можно через «Панель управления».

Как установить

Видео: настройка ДНС-сервера

Зачем нужно менять DNS-сервер

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

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

Они имеют функцию фильтрации и осуществлять функцию родительского контроля. Если у вас есть дети, то это оптимальный вариант - сомнительные и не предназначенные для детской аудитории сайты станут для них недоступными.

У них есть встроенный антивирус и чёрный список сайтов. Так что мошеннические сайты и сайты, содержащие вредоносное ПО, будут блокированы, и вы не сможете случайно подхватить вирус.

Сторонние DNS-сервера позволяют обходить блокировки сайтов. Звучит немного абсурдно, ведь мы сказали, что DNS-сервера призваны блокировать нежелательные ресурсы. Но дело в том, что интернет-провайдеры вынуждены запрещать в своих DNS-серверах доступ к сайтам, запрещённым Роскомнадзором. Независимые DNS-сервера Goggle, Яндекса и прочие этого делать совсем не обязаны, поэтому различные торрент-трекеры, социальные сети и прочие сайты будут доступны для посещения.

Как настроить/изменить DNS

Здесь можно настроить порядок обращения к DNS-серверам. Неопытным пользователям стоит объяснить, что не существует одного такого сервера, на котором хранились бы все существующие интернет-адреса. Слишком много веб-сайтов сейчас существует, поэтому DNS-серверов множество. И если введённый адрес не найдётся на одном DNS-сервере, компьютер обращается к следующему. Так вот, в Windows можно настроить, в каком порядке обращаться к DNS-серверам.

Можно настроить DNS-суффиксы. Если вы этого не знаете, то вам эти настройки и не нужны. DNS-суффиксы - очень сложная для понимания вещь и важна скорее самим провайдерам. Если в общих чертах, то все url-адреса делятся на поддомены. Например, server.domain.com. Так вот, com - домен первого уровня, domain - второго, server - третьего. По идее, domain.com и sever.domain.com абсолютно разные ресурсы, с разными IP-адресами и разным содержимым. Однако server.domain.com всё равно находится в пространстве domain.com, который, в свою очередь, находится внутри com. DNS-суффиксом при обращении к server является domain.com. Несмотря на то что IP-адреса разные, server можно найти только через domain.com. В Windows можно настроить, каким образом присваивать суффиксы, что даёт определённые преимущества для внутренних сетей. Что касается интернета, создатели DNS-серверов уже настроили всё необходимое автоматически.

Возможные ошибки и как их исправить

Что делать, если сервер не отвечает или не обнаружен

Что делать, если при попытке зайти на какой-либо сайт, появляется ошибка «Параметры компьютера настроены правильно, но устройство или ресурс (DNS-сервер) не отвечает»? Возможно, что на компьютере по каким-то причинам отключилась служба DNS. Возможно, DNS-сервер, который вы используете, перестал работать.


Неправильно разрешает имена

Если DNS-сервер не разрешает имена либо разрешает имена неправильно, то возможны две причины:

  1. DNS неправильно настроен . Если у вас точно всё настроено верно, то, возможно, ошибка в самом DNS-сервере. Поменяйте DNS-сервер, проблема должна решиться.
  2. Технические неполадки на серверах оператора связи . Решение проблемы то же: использовать другой DNS-сервер.

DHCP-сервер: что это и в чём его особенности

DHCP-сервер автоматически настраивает параметры сети. Такие сервера помогут в домашней сети, чтобы не настраивать каждый подключённый компьютер отдельно. DHCP самостоятельно прописывает параметры сети подключившемуся устройству (включая IP-адрес хоста, IP-адрес шлюза и DNS-сервер).

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

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

Что такое DNS

DNS (domain name system) - это система, обеспечивающая работу привычных нам доменных имен сайтов. Связь между устройствами в сети Интернет осуществляется по IP адресам, например: "192.64.147.209". Однако, запомнить IP адреса сложно, поэтому были придуманы удобные для человека доменные имена, например: "google.com".

Компьютер / сервер не хранит таблицу соответствия доменов и их IP адресов. Точнее, не хранит всю таблицу, а временно запоминает данные для часто используемых доменов. Когда в браузере вводится домен сайта, компьютер автоматически узнает его IP адрес, и отправляет по нему запрос. Этот процесс называется «разрешение адреса домена» (domain resolving).

Разберемся, из чего состоит система DNS, и как она работает.

Как работает DNS

Система доменных имен состоит из следующих компонентов:

Иерархическая структура доменных имен:

  • Доменные зоны верхнего уровня (первого уровня ) – например: "ru", "com", или "org". Они включают в себя все доменные имена, входящие в эту зону. В любую доменную зону может входить неограниченное количество доменов.
  • Доменные имена (доменные зоны второго уровня) – например: "google.com" или "yandex.ru". Т.к. система доменных имен является иерархичной, то "yandex.ru" можно также назвать поддоменом вышестоящей зоны "ru". Поэтому, правильнее указывать именно уровень домена. Однако, на практике, доменную зону любого уровня называют просто «доменом».
  • Поддомены (доменные зоны третьего уровня) – например: "api.google.com" или "mail.yandex.ru". Могут быть доменные зоны 4, 5 уровней и так далее.

Обратите внимание, что "www.gооgle.com" и "google.com" - это, фактически, разные домены. Надо не забывать указывать А-записи для каждого из них.

DNS сервер или NS (name server) сервер – поддерживает (обслуживает) доменные зоны, которые ему делегированы. Он непосредственно хранит данные о ресурсных записях для зоны. Например, что сервер, на котором находится сайт "example.ru", имеет IP адрес "1.1.1.1". DNS сервер отвечает на все запросы, касательной этих доменных зон. Если ему приходит запрос о домене, который ему не делегирован, то он спрашивает ответ у других DNS серверов.

DNS записи (ресурсные записи) – это набор записей о доменной зоне на NS сервере, которые хранят данные необходимые для работы DNS. На основании данных в этих записях, DNS сервер отвечает на запросы по домену. Список записей, и их значение, вы можете найти ниже.

Корневые DNS сервера (на данный момент их 13 во всем мире) хранят данные о том, какие DNS сервера обслуживают зоны верхнего уровня.

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

Для того, чтобы узнать IP адрес, домена компьютер / сервер обращается к DNS-серверу, который указан у него в сетевых настройках. Обычно, это DNS сервер Интернет провайдера. DNS сервер проверяет делегирован домен ему или нет. Если да, то сразу отвечает на запрос. Если нет, то запрашивает информацию о DNS сервере, обслуживающем этот домен, у корневого сервера, и затем у сервера доменных зон верхнего уровня. После этого, непосредственно делает запрос на NS сервер, обслуживающий этот домен, и транслирует ответ вашему компьютеру / серверу.

Кэширование данных используется на всех устройствах (компьютерах, северах, DNS серверах). То есть, они запоминают ответы на последние пришедшие к ним запросы. И когда приходит аналогичный запрос, они просто отвечают то же самое, что и в предыдущий раз. Например, если вы в браузере открыли сайт google.com первый раз после включения, то компьютер сделает DNS запрос, а при последующих запросах будет брать данные, которые ему были присланы DNS сервером в первый раз. Таким образом, для популярных запросов не надо каждый раз проходить всю цепочку и генерировать запросы к NS серверам. Это значительно снижает нагрузку на них, и увеличивает скорость работы. Однако, как результат, обновление данных в системе DNS происходит не сразу. При изменении IP адреса домена, информацию об этом будет расходиться по сети Интернет от 1 до 24 часов.

Регистрация/выделение доменов

У каждой доменной зоны первого уровня есть своя организация, которая устанавливает правила выделения доменов и обеспечивает работу этой зоны. Например, для доменных зон RU, SU и РФ – это Координационный центр национального домена сети Интернет https://cctld.ru . Эти организации устанавливают правила работы и технические требования к регистраторам доменов.

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

Администратор домена (владелец) – лицо, которому непосредственно принадлежат права на доменное имя. Он может управлять доменом, от него регистратор принимает заявки на внесение изменений.

Делегирование домена – указание для него DNS серверов, которые будут его обслуживать.

Основные DNS записи

Существуют следующие основные DNS (ресурсные) записи:

А – содержит информацию об IPv4 адресе хоста (сервера) для домена. Например, 1.1.1.1.

ААА – содержит информацию об IPv6 адресе хоста (сервера) для домена. Например, 2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d.

MX – содержит данные о почтовом сервере домена. При этом указывается именно имя почтового сервера, например mail.example.com. Т.к. у домена может быть несколько почтовых серверов, то для каждого из них указывает приоритет. Приоритет задается числом от 0 до 65535. При этом «0» - это самый высокий приоритет. Принято по умолчанию для первого почтового сервера указывать приоритет «10».

TXT – дополнительная информация о домене в виде произвольного текста. Максимальная длина 255 символов.

SRV – содержит информацию об имени хоста и номере порта, для определенных служб / протоколов в соответствии с RFC 2782 http://www.rfc-editor.org/rfc/rfc2782.txt . Содержит следующие поля:

  • _Service._Proto.Name (Пример: _jabber._tcp.jabber), где:
    • Service: название службы (пример: ldap, kerberos, gc и другие).
    • Proto: протокол, при помощи которого клиенты могут подключиться к данной службе (пример: tcp, udp).
    • Name: имя домена, в котором размещена данная служба.
  • Приоритет – также как для MX записи указывает приоритет для данного сервера. Задается числом от 0 до 65535. При этом «0» - это самый высокий приоритет.
  • Вес – Относительный вес для распределения нагрузки между серверами с одинаковым приоритетом. Задается целым числом.
  • Порт – номер порта, на котором располагается служба на данном сервере.
  • Назначение - доменное имя сервера, предоставляющего данную службу.

NS – имя DNS сервера, поддерживающего данный домен.

CNAME (каноническое имя хоста / canonical name) – используется для перенаправления на другое доменное имя. Например, имя сервера изменилось с example.com на new.com. В таком случае в поле «Alies» для записи cname надо указать - example.com, а в поле «Canonical name» - new.com. Таким образом, все запросы на example.com автоматически будут перенаправлены на new.com.

SOA – базовая запись о домене. В ней хранится само имя домена и время жизни данных о домене - TTL. TTL (time-to-live) определяет какой период времени DNS сервер получив информацию о зоне будет хранить ее у себя в памяти (кэшировать). Рекомендуемое значение 86400 – 1 день. Значение указывается в секундах.

Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: