Составляем dns-запрос вручную
Содержание:
- Multi-CDN: An advanced use case for CNAME
- Зачем в интернете нужны DNS-серверы
- Что такое дочерние NS-серверы
- Теги и метаданные
- Какие бывают NS-записи для домена
- SOA
- CNAME record format
- Записи MX
- Отправка регистратору DS/KSK записи
- Устаревшие типы записей
- Структура доменного имени
- SRV-запись
- Как добавить CNAME запись в аккаунте HostGator?
- разрешение DNS
- DNAME record
Multi-CDN: An advanced use case for CNAME
A common way to deploy Content Delivery Networks (CDN) is to add the address of the CDN as a CNAME record for the origin server that hosts website content. This way, anyone accessing resources on the origin server is redirected to the CDN.
With next-generation DNS technology, the same CNAME record can allow users to be redirected to one of several CDNs based on dynamic parameters.
A DNS platform can be made aware of CDN attributes such as current load, geographical location of nearest Point of Presence (PoP), bandwidth, or even cost. When a user looks up the origin server and is redirected to the CNAME address, that address is dynamically modified to the CDN that can provide the best experience for the end user.
NS1 is a next-generation managed DNS platform that can dynamically route users to the most optimal CDN server (or any other server for that matter) based on:
- Filter chains which give you hundreds of ways to customize DNS answers for every user based on rich parameters that describe the capabilities and performance of the target system.
- Real User Monitoring (RUM) Steering which automatically routes traffic based on up-to-the-minute performance data from real users.
Get a free trial of NS1 and see for yourself how a simple CNAME record can result in intelligent routing of users among multiple global systems, resulting in a vastly improved user experience.
Зачем в интернете нужны DNS-серверы
На заре существования всемирной сети подключенных компьютеров было немного, а пользователями были опытные специалисты.
Каждую точку подключения (клиентский компьютер) идентифицировали в сети при помощи IP-адреса. Что расшифровывается как Internet Protocol Address – адрес интернет-протокола.
IP-адрес выглядит примерно, как номер сотового телефона:
- 59.109.189
- 59.110.48
- 59.109.207
Со временем количество пользователей интернета значительно увеличилось и тогда, для облегчения задачи серфинга в сети, было предложено ассоциировать цифровые IP-адреса сайтов с вербальными (словесными) доменными именами.
Чтобы обеспечивать назначение каждому цифровому IP-адресу веб-сайта удобного для восприятия имени была создана глобальная система доменных имен.
По-английски Domain Name System или сокращенно DNS.
Система доменных имен представляет собой распределенную инфраструктуру из большого числа серверов, расположенных по всей планете. Эта серверная структура DNS выстроена по принципу иерархического подчинения.
- Сервера доменных имен верхнего уровня – COM, RU и так далее.
- Сервера со списками доменных имен второго уровня – google.com.
- Сервера доменов третьего уровня – api.google.com.
Самую верхнюю позицию в иерархии занимают корневые DNS-сервера, на которых хранятся списки серверов доменных имен верхнего уровня. Корневых ДНС-серверов во всем мире чуть более 10 штук.
Говоря простыми словами, система доменных имен функционирует, как глобальный адресный стол для всемирной сети.
В локальных отделениях DNS хранятся ассоциированные с доменными именами IP адреса сайтов, относящиеся к данному региону. Если на местном сервере DNS оказывается невозможно найти адрес сайта по запрашиваемому доменному имени, запрос делегируется к следующему уровню системы.
И вот таким образом поиск IP-адреса по заданному браузером доменному имени происходит до тех пор, пока нужный сайт не будет обнаружен на одном из ответственных за его хранение серверов DNS.
Пример работы, как браузер находит сайт
Чтобы понять, как все это работает, давайте рассмотрим на конкретном примере поиска какого-либо сайта.
Такой достаточно сложный алгоритм поиска IP адреса сайта по доменному имени получается потому, что сегодня интернет-ресурсов во всемирной сети уже более миллиарда.
Hosts-файл
Чуть выше было упомянуто, что записи об адресах сайтов могут находиться в операционной системе компьютера. Действительно, среди системных файлов имеется документ по имени Hosts.
Это обычный текстовый файл, но не имеющий расширения txt. Дело в том, что Hosts-файлы могут присутствовать на компьютерах и других операционных систем, а не только Windows.
На альтернативных OS расширения файлов могут не совпадать, поэтому договорились использовать текстовый документ Hosts вообще без указания типа файла.
Hosts-файл содержит список сопоставления доменных имен известных пользователю интернет-ресурсов и их IP-адресов.
127.0.0.1 localhost
Сначала прописывается IP-адрес, а затем название интернет-ресурса.
Считается, что Hosts-файл является архаизмом. Этот файл использовался в прежние времена, когда компьютеры имели малую мощность и использовалась любая возможность ускорить процессы.
Указанная выше запись из Hosts-файла означает, что по такому IP адресу находится сам пользовательский компьютер. В большинстве случаев на современных персональных компьютерах эта запись является единственной.
Иногда продвинутые пользователи, для того, чтобы заблокировать посещение какого-либо сайта, добавляют в Hosts-файл запись, в которой сопоставляют доменное имя нежелательного ресурса с IP-адресом компьютера.
В случае запроса браузера по данному доменному имени происходит обращение к локальной системе и перейти на сайт оказывается невозможно.
Например, пользователь не хочет, чтобы его дети посещали какие-либо сайты. Тогда можно отредактировать Hosts-файл и указать в качестве IP-адреса нежелательного сайта локальный хост.
Hosts-файл иногда используется хакерами для того чтобы перенаправить пользователя на фишинговые страницы. Если пользователь посетит зараженный сайт и загрузит оттуда вирус, то этот вирус может произвести изменения в записях Hosts-файла.
Например, доменному имени надежного онлайн-банка будет ассоциирован IP-адрес мошеннического ресурса. Набрав в браузере адрес банка, пользователь попадет на сайт мошенников и потеряет свои деньги.
Сегодня Host-файл потерял свою значимость и может вообще не содержать никаких записей. Это никак не отразится на функциональности компьютера и возможностях работы в интернете.
Что такое дочерние NS-серверы
Иногда NS-серверы для домена находятся на его поддоменах. В вышеприведенном примере домен MYDOMAIN.COM делегирован на NS-серверы ns1.mydomain.com, ns2.mydomain.com и т.д. Как же это возможно? Ведь чтобы обратиться к этим NS-серверам нужно узнать их ip-адрес. Все просто — корневой сервер зоны .COM при таком варианте требует указания не только доменных имен NS-серверов, но и их ip-адресов. Поэтому DNS-сервер знает, куда обратиться за подробностями.
Рассмотрим пример двух доменов — с дочерним NS-сервером и без:
NS-запись у домена diphost.ru
;; ANSWER SECTION: diphost.ru. 292 IN NS ns1.bz8.ru.
NS-запись у домена bz8.ru
;; ANSWER SECTION: bz8.ru. 300 IN NS ns1.bz8.ru. ;; ADDITIONAL SECTION: ns1.bz8.ru. 95617 IN A 185.35.220.5 ns1.bz8.ru. 95617 IN AAAA 2a00:e460:2a00:c01d::9:aaaa
Как видите, все просто. Такая настройка у зарубежных регистраторов называется Child NameServers
Теги и метаданные
Теги
Теги — это список пар «имя — значение», которые используются Azure Resource Manager для пометки ресурсов. Azure Resource Manager использует теги, чтобы обеспечить отфильтрованные представления счетов Azure, а также позволяет задать политику, для которой необходимы теги. Дополнительные сведения о тегах см. в статье Использование тегов для организации ресурсов в Azure.
Azure DNS поддерживает использование тегов Azure Resource Manager в ресурсах зоны DNS. Эта служба не поддерживает использование тегов в наборе записей DNS, хотя в качестве альтернативы в наборе записей DNS поддерживаются метаданные, как описано ниже.
Метаданные
В качестве альтернативы тегам наборов записей Azure DNS поддерживает создание заметок к наборам записей с помощью метаданных. Так же как и теги, метаданные позволяют связывать пары «имя — значение» с каждым набором записей. К примеру, это может пригодиться для записи назначения каждого набора записей. В отличие от тегов метаданные нельзя использовать, чтобы обеспечить отфильтрованное представление счетов Azure, и указывать в политике Azure Resource Manager.
Какие бывают NS-записи для домена
NS-запись — указывает, на каких NS-серверах находится домен. Эта запись должна повторять значения для домена, находящиеся на корневых серверах зоны. Только в этом случае домен будет ДЕЛЕГИРОВАН.
mydomain.com. 1448 IN NS ns3.mydomain.com.
A-запись — указывает IPv4 адрес сервера, к которому нужно обратиться по доменному имени. A-записей у домена может быть несколько. В этом случае выбирается случайный.
mydomain.com. 248 IN A 65.254.242.180
AAAA-запись — указывает на IPv6 адрес сервера. Также, эта запись иногда упоминается как Квадра-А (четыре А)
MX-запись — указывает на ip-адрес или доменное имя сервера, отвечающего за прием почты на этот домен (MX-сервер). В нашем примере, вся почта на любой адрес домена MYDOMAIN.COM будет поступать на сервер mail.mydomain.com.
mydomain.com. 3248 IN MX 0 mail.mydomain.com.
MX-записей тоже может быть несколько. MX-запись кроме имени сервера также имеет поле «Приоритет». Оно указывает, в каком порядке нужно обращаться к MX-серверам домена. Чем меньше значение приоритета, тем приоритетнее сервер.
TXT-запись — Сюда записывают различную служебную информацию, для которой нет выделенных полей. Можно записать контактные данные администратора, или что угодно. TXT-записи также используются для хранения SPF и DKIM записей, использующихся для защиты от спама.
mydomain.com. 86048 IN TXT "v=spf1 ip4:38.113.1.0/24 ip4:38.113.20.0/24 ip4:12.45.243.128/26 ip4:65.254.224.0/19 ?all"
CNAME-запись — служит для указания, что домен является синонимом (алиасом) другого домена. По этой же причине, у домена с записью CNAME не может быть никаких других записей.
SOA-запись — генерируется автоматически NS-сервером и содержит служебную информацию: адрес электронной почты ответственного за NS-сервер, дату и время последнего обновления домена, предельное время кеширования зоны (TTL) и т.д.
SRV-запись — служит для хранения адресов различных серверов, обслуживающих домен. Обычно они не совпадают с адресом web-сервера, указанного в A-записи и, как и MX-сервер, расположены на других адресах. В эту запись можно добавить адреса JABBER, TeamSpeak серверов и т.д.
SOA
Запись SOA (Start Of Authorisation) — начальная запись зоны, указывает на основной сервер который отвечает за данный домен. Для каждой зоны должна быть только одна и единственная зона SOA.
Так что из себя представляет запись SOA Давайте посмотрим:
Все эксперименты будут проведены на примере домена thetech.сom.ua.
Открываем командную строку cmd.exe и набираем в ней:
nslookup -type=SOA download.openlib.org.ua
в ответ получаем:
download.openlib.org.ua primary name server = ns1.gigahost.ua responsible mail addr = hostmaster.gigahost.ua serial = 2010102009 refresh = 14400 (4 hours) retry = 7200 (2 hours) expire = 604800 (7 days)default TTL = 3600 (1 hour) |
CNAME record format
The structure of an A record follows the standard top-level format definition defined . The RDATA section is composed of one single element:
Element | Description |
---|---|
domain-name | A domain name which specifies the canonical or primary name for the record. |
The canonical representation is:
where is a fully-qualified domain name such as .
In DNSimple, the CNAME record is represented by the following customizable elements:
Element | Description |
---|---|
Name | The host name for the record, without the domain name. This is generally referred to as “subdomain”. We automatically append the domain name. |
TTL | The time-to-live in seconds. This is the amount of time the record is allowed to be cached by a resolver. |
Content | The domain-name the CNAME maps to. |
Записи MX
Во-первых, мне нужно зарегистрироваться на почтовом сервисе типа Google Apps или FastMail, чтобы разместить там почту. Во-вторых, мне надо сконфигурировать записи MX так, чтобы почта шла на эти серверы.
Например, так будет выглядеть конфигурация Google Apps:
А для FastMail так:
Если вы захотите запустить свой собственный почтовый сервер, вам нужно указать в записи MX IP-адрес этого сервера.
Многие пользователи используют MX Toolbox для просмотра записей MX, но это может сделать и любой другой сервис просмотра DNS.
Смена провайдера Email и перенос почты
Записи MX инструктируют систему DNS куда отправлять сегодняшнее письмо — ваше письмо сохранится в облачной базе данных вашего провайдера почты. Если вы хотите перенести все имеющиеся сообщения, вам надо использовать инструменты для миграции почты или возможности вашей почтовой программы. И, конечно, вам надо обновить записи M, добавив нового провайдера почты.
В течение процесса обновления DNS письма могут приходить на старый адрес.
Смена записи MX не повредит содержимое вашего старого хранилища почты, просто новые письма перестанут туда поступать.
Отправка регистратору DS/KSK записи
DNSSEC подписание своей доменной зоны на своём или любом стороннем ДНС сервере не означает, что DNSSEC уже включен и полноценно работает. Последним шагом на пути к окончательной активации DNSSEC будет отправка DS/KSK (Delegation of Signing, Key Signing key) записи на ДНС сервера корневых зон, которая выполняется непосредственно через регистратора доменного имени ибо только регистратор домена имеет право доступа к ДНС серверам корневых доменных зон.
В большинстве случаев нам нужна именно KSK запись, которую мы пожем получить либо непосредственно из ключа соданного ранее коммандой «» с флагом «»:
$ less varnamedkeysremoteshaman.comKremoteshaman.com.+008+46435.key ; This is a key-signing key, keyid 46435, for remoteshaman.com. ; Created: 20160324135802 (Thu Mar 24 16:58:02 2016) ; Publish: 20160324135802 (Thu Mar 24 16:58:02 2016) ; Activate: 20160324135802 (Thu Mar 24 16:58:02 2016) remoteshaman.com. IN DNSKEY 257 3 8 AwEAAZsoe6EOeUXWfn3hnelwRVobfZzRLD3BShe5jahasPshQoyhAtt8 mjMQJrnsUEgDgpu3wUNA1FMQtqQ2g+s+1EXjm2bao6wW06LclvypdPU YA9DTBbnnY9nv5LFSMjPB2cU1zmfJGalPrtbH1qy7UBZtv8uhNlr6+z8 WmBnHBFR4u6VQs4v8kwQFsVIVJrmn72Zw81xtFsKU988NJAV3fmcpIF Hcs9ZnUSJJziTAgOaMfZ9ex9gQ6eIkmZxS2IYG+L5ugHCuNZ+mm5 pBMVQzHFdAfnJfDB9hu69d5lJ6uQDGqSbyLz31c39QFUfePg8OmecnY bc6ktIvl8Pc=
Либо выполнив ДНС запрос коммандой:
$ dig @93.170.128.114 remoteshaman.com. DNSKEY +multiline +noall +answer ; <<>> DiG 9.9.5-9+deb8u6-Debian <<>> @93.170.128.114 remoteshaman.com. DNSKEY +multiline +noall +answer ; (1 server found) ;; global options: +cmd remoteshaman.com. 259200 IN DNSKEY 256 3 8 ( AwEAAdnGo5DvjZzhPBxTwYxq6kd+IeWONdZSCzahxR49 bzT2y9BUVbdr1nV0mYyqG6oJ+HUR8tdlW9ayb+3qNYeR 4T2CkpKdEZjxmJ2flhTc7LwBFVeAqa91FQSE+YRi0uEn +C//VWXMeZ9orCpotm3mb+KYWWt+CxgaNDQk5xFE+y5 ) ; ZSK; alg = RSASHA256; key id = 756 remoteshaman.com. 259200 IN DNSKEY 257 3 8 ( AwEAAZsoe6EOeUXWfn3hnelwRVobfZzRLD3BShe5jaha sPshQoyhAtt8mjMQJrnsUEgDgpu3wUNA1FMQtqQ2g+s+ 1EXjm2bao6wW06LclvypdPUYA9DTBbnnY9nv5LFSMjP B2cU1zmfJGalPrtbH1qy7UBZtv8uhNlr6+z8WmBnHBFR 4u6VQs4v8kwQFsVIVJrmn72Zw81xtFsKU988NJAV3fm cpIFHcs9ZnUSJJziTAgOaMfZ9ex9gQ6eIkmZxS2IY G+L5ugHCuNZ+mm5pBMVQzHFdAfnJfDB9hu69d5lJ6uQ DGqSbyLz31c39QFUfePg8OmecnYbc6ktIvl8Pc= ) ; KSK; alg = RSASHA256; key id = 46435
Однако для полноты счастья, если регистратору вместо KSK потребуется именно запись формата DS, мы сгенерируем записи DS от созданного ранее KSK (Kremoteshaman.com.+008+46435.key) с использованием трёх различных алгоритмов хэширования (SHA-1 (type 1), SHA-256 (type 2) и SHA-384 (type 4) соответственно):
$ cd varnamedkeysremoteshaman.com $ dnssec-dsfromkey -a SHA-1 Kremoteshaman.com.+008+46435.key remoteshaman.com. IN DS 46435 8 1 61225075311C0FE44FE421F64D5BA153525CFEBA $ dnssec-dsfromkey -a SHA-256 Kremoteshaman.com.+008+46435.key remoteshaman.com. IN DS 46435 8 2 82CDE38A69D69F0B9452ADD235629D6FD7E24DB13A252DD3B903576536CFB488 $ dnssec-dsfromkey -a SHA-384 Kremoteshaman.com.+008+46435.key remoteshaman.com. IN DS 46435 8 4 A7D507EF058F0C8A03EE03FC4B64094EE271F4C3F2AF9EA7984C0F710002E79EE3F47E7F5297779BFED280D1A94FE171
В итоге, для завершения активации DNSSEC на нашем домене remoteshaman.com, мы должны отправить нешему регистратору доменных имён такую вот инфу:
Key id (ака Key tag) 46435 Algorithm RSASHA256 (type 8) Digest type 1 (SHA-1) 61225075311C0FE44FE421F64D5BA153525CFEBA Digest type 2 (SHA-256) 82CDE38A69D69F0B9452ADD235629D6FD7E24DB13A252DD3B903576536CFB488 Digest type 4 (SHA-384) A7D507EF058F0C8A03EE03FC4B64094EE271F4C3F2AF9EA7984C0F710002E79EE3F47E7F5297779BFED280D1A94FE171 DNSKEY (flags 257, KSK) AwEAAZsoe6EOeUXWfn3hnelwRVobfZzRLD3BShe5jahasPshQoyhAtt8mjMQJrnsUEgDgpu3wUNA1FMQtqQ2g+s+1EXjm2bao6wW06LclvypdPUYA9DTBbnnY9nv5LFSMjPB2cU1zmfJGalPrtbH1qy7UBZtv8uhNlr6+z8WmBnHBFR4u6VQs4v8kwQFsVIVJrmn72Zw81xtFsKU988NJAV3fmcpIFHcs9ZnUSJJziTAgOaMfZ9ex9gQ6eIkmZxS2IYG+L5ugHCuNZ+mm5pBMVQzHFdAfnJfDB9hu69d5lJ6uQDGqSbyLz31c39QFUfePg8OmecnYbc6ktIvl8Pc=
Для справки
- RSA/MD5 (RSAMD5)
- Diffie-Hellman (DH)
- DSA/SHA1 (DSA)
- — Reserved
- RSA/SHA-1 (RSASHA1)
- DSA-NSEC3-SHA1
- RSASHA1-NSEC3-SHA1
- RSA/SHA-256 (RSASHA256)
- — Reserved
- RSA/SHA-512 (RSASHA512)
- — Reserved
- ГОСТ Р 34.10-2001 (ECC-GOST)
- ECDSA Curve P-256 with SHA-256 (ECDSAP256SHA256)
- ECDSA Curve P-384 with SHA-384 (ECDSAP384SHA384)
- SHA-1
- SHA-256
- —
- SHA-384
Устаревшие типы записей
Прогресс сделал некоторые из первоначально определенных типов записей устаревшими. Из записей, перечисленных в IANA, некоторые имеют ограниченное использование по разным причинам. Некоторые из них помечены в списке как устаревшие, некоторые предназначены для очень малоизвестных служб, некоторые — для более старых версий служб, а некоторые имеют специальные примечания, в которых говорится, что они «неправильные».
Тип | Введите идентификатор.(десятичный) | Определение RFC | Устарело | Описание |
---|---|---|---|---|
MD | 3 | |||
MF | 4 | |||
MAILA | 254 | |||
МБ | 7 | |||
MG | 8 | |||
МИСТЕР | 9 | |||
МИНФО | 14 | |||
ПОЧТА | 253 | |||
WKS | 11 | Запись для описания общеизвестных услуг, поддерживаемых хостом. На практике не используется. Текущая рекомендация и практика заключаются в том, чтобы определить, поддерживается ли услуга на IP-адресе, путем попытки подключиться к нему. SMTP даже запрещено использовать записи WKS при обработке MX. | ||
NB | 32 | |||
NBSTAT | 33 | |||
НОЛЬ | 10 | |||
A6 | 38 | |||
NXT | 30 | |||
КЛЮЧ | 25 | |||
SIG | 24 | |||
HINFO | 13 | Запись предназначена для предоставления информации о типе центрального процессора и операционной системе. Он был предназначен для того, чтобы протоколы могли оптимизировать обработку при взаимодействии с аналогичными узлами. | ||
RP | 17 | RP может использоваться для определенной удобочитаемой информации относительно другой точки контакта для конкретного хоста, подсети или другой метки уровня домена, отличной от той, которая используется в записи SOA. | ||
X25 | 19 | Не используется в настоящее время ни одним из известных приложений | ||
ISDN | 20 | Не используется в настоящее время ни одним из известных приложений | ||
RT | 21 | Не используется в настоящее время ни одним из известных приложений | ||
NSAP | 22 | Не используется в настоящее время ни одним из известных приложений | ||
NSAP-PTR | 23 | Не используется в настоящее время ни одним из известных приложений | ||
PX | 26 | Не используется в настоящее время ни одним из известных приложений | ||
EID | 31 | Нет данных | ||
НИМЛОК | 32 | Нет данных | ||
ATMA | 34 | Нет данных | Определено Комитетом Форума ОрВД. | |
APL | 42 | Укажите списки диапазонов адресов, например в CIDR формат, для различных семейств адресов. Экспериментальный. | ||
РАКОВИНА | 40 | Нет данных | ||
GPOS | 27 | Более ограниченная ранняя версия записи LOC | ||
УИНФО | 100 | Нет данных | ||
UID | 101 | Нет данных | ||
GID | 102 | Нет данных | ||
UNSPEC | 103 | Нет данных | ||
SPF | 99 | |||
НИНФО | 56 | Нет данных | Используется для предоставления информации о состоянии зоны. Запрошен для проекта IETF «Запись ресурса DNS статуса зоны (ZS)» в 2008 г. Срок действия истек без принятия. | |
RKEY | 57 | Нет данных | Используется для шифрования записей NAPTR. Запрошен для проекта IETF «Запись ресурса DNS RKEY» в 2008 г. Срок действия истек без принятия. | |
ТАЛИНК | 58 | Нет данных | ||
NID | 104 | Не используется ни одним из известных приложений и отмечен как «экспериментальный». | ||
L32 | 105 | |||
L64 | 106 | |||
LP | 107 | |||
DOA | 259 | Нет данных |
Структура доменного имени
Вместо обычных имен компьютеров, которые состоят из одного слова в системе DNS используются доменные имена. Имя компьютера состоит из нескольких частей, которые отделены друг от друга точками. Например, веб-сервер сайта о Мобильной связи и Технологиях имеет следующие имя www.zvondozvon.ru. Имя состоит из следующих частей ru это домен верхнего уровня, следующий домен отделён от него точкой zvondozvon домен второго уровня, и последний компонент www это имя компьютера в домене второго уровня.
Корневой домен
Важным элементом доменного имени, которое обычно не пишут, является корневой домен, он указывается точкой в конце. Если вы не укажете точку, то ничего страшного не произойдет, она подразумевается в конце каждого доменного имени.
Дерево доменных имен
Доменные имена образуют дерево. Корнем дерева является корневой домен, который представлен точкой. Затем идут домены верхнего уровня, которые бывают трех типов:
- Домены для различных типов организаций, которые используются, как правило внутри США (org, com, net). Домен org для некоммерческих организаций, com для коммерческих организаций, net для организации связанных с компьютерными сетями, есть также и другие домены.
- Тип доменов верхнего уровня, домены для стран. Каждая страна имеет свой домен. Домен Россия ru, домен Великобритании uk, и относительно недавно появились новые типы доменов верхнего уровня в которых можно использовать не только символы английского алфавита. Для России это домен рф.
- Затем идут домены второго уровня, например cisco.com, yandex.ru или яндекс.рф русскими буквами.
- На третьем уровне могут находиться, как домены следующего уровня их называют поддомены или адреса компьютера в домене второго уровня. Например, в домене yandex.ru есть компьютеры с адресами www.yandex.ru веб-сервер компании yandex, maps.yandex.ru сервер яндекс карт, такси.yandex.ru сервер яндекс такси и большое количество других серверов.
Доменная зона
Важным понятием в системе DNS является доменная зона. Это запись адресов всех компьютеров и всех поддоменов в некотором домене.
Корневая доменная зона содержит записи всех поддоменов первого уровня (org com net ru uk рф). Зона ru содержит записи всех доменов второго уровня (yandex urfu), зона urfu.ru записи всех поддоменов и всех компьютеров в домене urfu, и вот здесь еще показаны две отдельные зоны для разных институтов urfu, институт естественных наук (ins) и институт математики и компьютерных наук (imkn). Эти зоны содержат DNS-записи, о компьютерах соответствующих институтов.
Доменная зона является некоторым аналогом файла itc/hosts только в ней содержится не вся информация об именах компьютерах в сети, а некоторый ее фрагмент. Доменные зоны распределены по серверам DNS. Одну и ту же доменную зону может обслуживать несколько серверов DNS.
Например, корневую зону обслуживают больше всего серверов, так как к ним больше всего запросов. Все корневые серверы DNS содержат одинаковые записи. Зону ru также обслуживает несколько серверов DNS, у которых одна и та же база данных записи и доменов второго уровня.
Необязательно иметь выделенные DNS сервер для каждой доменной зоны, например DNS-сервер urfu может обслуживать зоны urfu.ru и ins.urfu.ru, а институт математики и компьютерных наук может иметь свой выделенный DNS сервер, который будет обслуживать зону imkn.urfu.ru.
Важным понятием в системе DNS является делегирование. Например DNS-сервер urfu отвечает за зону urfu.ru, но только часть информации об этой зоне хранится непосредственно на этом сервере, то что относится к urfu.ru и ins.urfu.ru. А для зоны imkn.urfu.ru создан отдельный сервер, таким образом сервер urfu.ru делегирует полномочия управления под доменом imkn.urfu.ru другому серверу. Чтобы было возможно делегирование на DNS сервере urfu.ru делаются соответствующие конфигурационные записи, которые указывают на DNS-сервер ответственный за зон, в нашем случае imkn.urfu.ru.
Инфраструктура DNS
Инфраструктура системы доменных имен состоит из следующих компонентов.
Дерево серверов DNS, которые мы рассмотрели выше, клиент DNS это как правило наш компьютер, и сервер разрешения имен DNS по-английски его называют DNS resolver, он получает запрос от клиента и выполняет поиск необходимого ip-адреса в дереве доменных имен.
SRV-запись
При создании записи можно указать следующие параметры:
- сервис — имя сервиса согласно RFC-3232 (IANA Assigned Port Numbers);
- протокол — протокол, по которому предоставляется сервис (, );
- домен — имя домена, на котором расположен данный сервис;
- сервер — доменное имя, услуги по которому предоставляет сервис. Точка в конце обязательна, иначе к имени будет автоматически добавлен домен используемой зоны;
- порт — порт работы сервиса;
- приоритет — используется для равномерного распределения нагрузки в случае нескольких серверов одного вида сервиса в домене. Более низкое значение показывает более высокий приоритет;
- вес — число в диапазоне от 0 до 65535. Учитывается в случае наличия нескольких SRV-записей с одинаковым приоритетом. С помощью данного значения осуществляется балансировка: значение определяет, какая доля запросов направляется на хост.
Нажмите «Добавить» — созданная запись появится в списке.
Как добавить CNAME запись в аккаунте HostGator?
Чтобы создать CNAME запись в HostGator необходимо сделать следующее:
1. Войдите в свой аккаунт HostGator.2. Перейдите в простой редактор DNS зоны (под секцией Домены в cPanel).3. После того, как Вы кликнете иконку простого редактора DNS зоны, Вам будет предложено добавить CNAME запись.
- В поле Имя введите имя субдомена. Например, если Вы используете promo.example.com, введите «promo». Если Вы используете корневой домен, введите «www».
- В поле CNAME введите squeeze.gr8.com.
4. Кликните Добавить CNAME Запись.
Более детальная информация о смене DNS зон (MX, CNAME и A Records) доступна в ресурсах поддержки HostGator.
разрешение DNS
DNS-рекурсор
DNS-рекурсор также называется DNS resolver. Это сервер, который отвечает за прием запросов от клиентских машин через приложения, такие как интернет-браузеры.
Корневой сервер имен
Существует 13 корневых серверов, стратегически распределенных по всему миру. Функция перенаправления DNS-рецидива на сервер имен ДВУ. Это очень похоже на индекс, который работает как ссылка для определения IP-адреса узла сайта.
Сервер имен домена верхнего уровня (ДВУ)
В зависимости от ДВУ доменного имени серверы имен ДВУ различают веб-сайты, оканчивающиеся на .com, .net и .org. Затем сервер имен ДВУ перенаправляет ретранслятор на соответствующий уполномоченный сервер имен.
Авторитетный сервер имен
Серверы имен ДВУ имеют уполномоченные серверы имен, которые могут получать определенный IP-адрес для веб-доменов.
Посредством этих компонентов пользователь может получить доступ к веб-сайту, просто набрав имя веб-сайта. Далее процесс разрешения DNS разбит на следующие этапы:
- Пользователь вводит доменное имя в веб-браузер.
- Контакты и запросы устройства DNS повторяются. DNS-рецидивы могут иметь IP-адрес сайта, кэшированный в их базе данных.
- Если информация еще не попала в их систему, DNS запрашивает корневые DNS-серверы имен, которые, в свою очередь, перенаправляют ее на указанный сервер ДВУ на основе ДВУ веб-сайта.
- Каждый ДВУ имеет свой собственный набор серверов имен. Они направляют повторяющиеся запросы на уполномоченный сервер имен, основанный на домене второго уровня, и повторяющиеся запросы на упомянутый уполномоченный сервер имен.
- Рекурсор извлечет данные и сохранит запись в локальном кэше. Затем он посылает IP-адрес на ваш компьютер, который считывает и передает IP-адрес вашему браузеру.
- Теперь ваш браузер имеет доступ к веб-сайту.
DNAME record
A DNAME record is very much alike the CNAME record, but while the CNAME record only applies for one name, with a DNAME record one can create alias for all the records for a domain or a sudbomain. However, using DNAME records causes a lot of works for the resolvers, which is why it’s used should be limited, and just for a short time period.
Example of a DNAME record:
research.example.com | IN DNAME | r-and-d.example.com |
military.r-and-d.example.comi | IN A | 192.168.0.5 |
fuel.r-and-d.example.com | IN A | 192.168.0.4 |
This way, all records for r-and-d.example.com will also be present for research.example.com and fuel.r-and-d.example.com will return the same result as fuel.research.example.com.