Что такое ресурсные записи dns

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-адреса по доменному имени, но и пересылку электронной почты, подключение дополнительных сервисов аналитики к сайту, настройку защищённого протокола HTTPS. Это чаще всего делается с помощью ресурсных записей DNS.

Рассмотрим, какие ресурсные записи используются, и на что они указывают. Основными ресурсными записями DNS являются:

A-запись — одна из самых важных записей. Именно эта запись указывает на IP-адрес сервера, который привязан к доменному имени.

MX-запись — указывает на сервер, который будет использован при отсылке доменной электронной почты.

NS-запись — указывает на DNS-сервер домена.

CNAME-запись — позволяет одному из поддоменов дублировать DNS-записи своего родителя. Делается это для того, чтобы перенаправить запрос с одного домена на другой (чаще всего для перенаправления домена с поддоменом www на домен без такого поддомена).

TXT-запись — в этой записи хранится текстовая информация о домене. Часто используется для подтверждения прав на владение доменом, посредством добавления определённой строки, которую присылает нам интернет-сервис.

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

Разберём подробнее:

Имя записи — указывается домен, которому принадлежит данная ресурсная запись.

TTL (time to live / время жизни) — время в секундах, на которое будет закешировано значение ресурсной записи. Это необходимо для разгрузки DNS-серверов. Благодаря кешированию и возможна ситуация, что ближайший DNS-сервер знает IP-адрес запрашиваемого домена.

Класс — предполагалось, что DNS может работать не только в сети интернет, поэтому в записи указывается и её класс. На сегодняшний день поддерживается только одно значение — IN (Internet).

Тип — указывает тип ресурсной записи, основные из которых были разобраны выше.

Значение — непосредственно значение ресурсной записи. В зависимости от типа ресурсной записи значения могут быть представлены в разном виде.

Посмотрим, в каком виде эти записи хранятся на DNS-серверах на примере домена ya.ru. Для этого воспользуемся утилитой dig, которая получает все доступные ресурсные DNS-записи от DNS-сервера и выводит их пользователю.

Утилита dig является DNS-клиентом и входит в состав одного из самых распространённых DNS-серверов BIND.

Добавление записи TXT для проверкиAdd a TXT record for verification

Прежде чем вы сможете использовать свой домен при работе с продуктами корпорации Майкрософт, мы должны убедиться в том, что вы являетесь его владельцем. Если вы войдете в свою учетную запись на сайте регистратора доменных имен и создадите запись DNS, для корпорации Майкрософт это послужит подтверждением того, что вы владеете доменом.Before you use your domain with Microsoft, we have to make sure that you own it. Your ability to log in to your account at your domain registrar and create the DNS record proves to Microsoft that you own the domain.

Примечание

Эта запись используется исключительно для проверки принадлежности домена. При желании вы сможете удалить ее позже.This record is used only to verify that you own your domain; it doesn’t affect anything else. You can delete it later, if you like.

  1. Чтобы приступить к работе, откройте страницу со своими доменами в Freenom с помощью этой ссылки.To get started, go to your domains page in Freenom by using this link. Вам потребуется выполнить вход.You’ll be prompted to log in.

  2. Выберите службы, а затем выберите пункт Мои домены.Select Services, and then select My Domains.

  3. Для домена, который требуется изменить, выберите пункт Управление доменом.For the domain that you want to edit, select Manage Domain.

  4. Выберите Управление FREENOM DNS.Select Manage Freenom DNS.

  5. В разделе Add Record (Добавление записи) в столбце Type (Тип) выберите TXT в списке.Under Add Record, in the Type column, choose TXT from the menu.

  6. В поля для новой записи введите (или скопируйте и вставьте) значения из таблицы ниже.In the boxes for the new record, type or copy and paste the values from the following table.

    ИмяName Type (Тип)Type TTL (Срок жизни)TTL Target (Назначение)Target
    (оставьте пустым)(leave blank) TXTTXT 3600 (секунд)3600 (seconds) MS = МсксксксксксксксксMS=msXXXXXXXX Примечание. Это пример.Note: This is an example. Используйте здесь свое конкретное значение Назначение или адрес «Указывает на» из этой таблицы.Use your specific Destination or Points to Address value here, from the table. Как его найти?How do I find this?
  7. Нажмите кнопку сохранить изменения.Select Save Changes.

  8. Подождите несколько минут, пока созданная запись не будет обновлена в Интернете.Wait a few minutes before you continue, so that the record you just created can update across the Internet.

Теперь, когда запись добавлена на веб-сайт регистратора доменных имен, вернитесь в продукт корпорации Майкрософт и запросите эту запись.Now that you’ve added the record at your domain registrar’s site, you’ll go back to Microsoft and request the record.

Когда продукт корпорации Майкрософт обнаружит правильную запись TXT, ваш домен будет подтвержден.When Microsoft finds the correct TXT record, your domain is verified.

  1. В центре администрирования Майкрософт перейдите на страницу Настройка > Домены.In the Microsoft admin center, go to the Settings > Domains page.

  2. На странице Domains (Домены) выберите домен, который нужно проверить.On the Domains page, select the domain that you are verifying.

  3. На странице Setup (Настройка) выберите Start setup (Начать настройку).On the Setup page, select Start setup.

  4. На странице Проверка домена выберите Проверить.On the Verify domain page, select Verify.

Примечание

Обычно на вступление изменений DNS в силу требуется около 15 минут. Однако иногда распространение внесенного изменения в системе DNS по всему Интернету занимает больше времени. Если после добавления записей DNS возникла проблема с потоком обработки почты или другие неполадки, см. статью Устранение неполадок после смены имени домена или записей DNS.Typically it takes about 15 minutes for DNS changes to take effect. However, it can occasionally take longer for a change you’ve made to update across the Internet’s DNS system. If you’re having trouble with mail flow or other issues after adding DNS records, see Troubleshoot issues after changing your domain name or DNS records.

What is a CNAME Record?

A Canonical Name (CNAME) Record is used in the Domain Name System (DNS) to create an alias from one domain name to another domain name. A common example is the www subdomain which is provided as an alias to the root domain name — users accessing “www.example.com” are referred to the root domain (or DNS zone apex) “example.com”.

A few common uses of CNAME records are:

  • Providing a separate hostname for specific network services, such as email or FTP, and pointing that hostname to the root domain
  • Many hosted services provide a subdomain for each customer on the service provider’s domain (e.g. company.hostname.com), and use CNAME to point to the customer’s domain (www.company.com).
  • Registering the same domain in several countries and pointing the country versions to the main “.com” domain
  • Pointing from several websites owned by the same organization to a primary website

Вопрос

0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F 
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                                               |
/                     QNAME                     /
/                                               /
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                     QTYPE                     |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                     QCLASS                    |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  • QNAME: Эта секция содержит URL, для которого мы хотим найти IP-адрес. Она закодирована как серия надписей (labels). Каждая надпись соответствует секции URL. Так, в адресе две секции: example и com.
    Для составления надписи нужно закодировать каждую секцию URL, получив ряд байтов. Надпись — это ряд байтов, перед которыми стоит байт беззнакового целого, обозначающий количество байт в секции. Для кодирования нашего URL можно просто указать ASCII-код каждого символа.
    Секция QNAME завершается нулевым байтом (00).
  • QTYPE: Тип записи DNS, которую мы ищем. Мы будем искать записи A, чьё значение 1.
  • QCLASS: Класс, который мы ищем. Мы используем интернет, IN, у которого значение класса 1.
07 65 – у 'example' длина 7, e
78 61 – x, a
6D 70 – m, p
6C 65 – l, e
03 63 – у 'com' длина 3, c
6F 6D – o, m
00    - нулевой байт для окончания поля QNAME 
00 01 – QTYPE
00 01 – QCLASS

Где находится DNS домена

Для начала разберемся, как узнать DNS-провайдера, чтобы понять, где хранится DNS. Для этого достаточно вбить домен сайта в сервис Whois и посмотреть значение в строках nserver:

Наиболее часто встречаются значения:

  • dns1.yandex.net, dns2.yandex.net — домен делегирован на Яндекс.Коннект.
  • в записях просматривается название хостера, например ns3.nic.ru, ns1.firstvds.ru, ns1.beget.com, ns1.reg.ru и другие — провайдером DNS является соответствующий хостер и/или регистратор домена: nic.ru, firstvds.ru, beget.com, reg.ru.
  • в строке читается комбинация символов AWSDNS — провайдер Amazon.

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

How the DNS System Handles CNAME Records

The DNS records in the above example would look like this:

CNAME from subdomain to parent domain

NAME TYPE VALUE—————————————————www.example.com. CNAME example.com.example.com. A 192.162.100.100

The second record is an A record which translates the human-readable domain name “example.com” to an IP address.

DNS Resolution Process for CNAME Records

  1. A DNS client (such as a browser or network device) requests the address www.example.com, and a DNS request is created.
  2. A DNS resolver receives the request and finds the Authoritative Name Server that holds the DNS Zone file with DNS records for the “example.com” domain.
  3. The DNS request is resolved and the CNAME record is returned to the client.
  4. The client understands www.example.com is only an alias for the real address, “example.com”, and issues a new DNS query for “example.com”
  5. The process is repeated and the resolver returns the A record for “example.com”, containing the IP address.
  6. The DNS client now connects to “example.com” using its IP address.

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

Мы выяснили, где меняются ресурсные записи. Следующим шагом нужно войти в личный кабинет провайдера, чтобы изменить DNS. Дальнейшие действия зависят от провайдера, рассмотрим 2 самых распространенных варианта.

Если домен делегирован на Яндекс.Коннект

NS-записи такого вида в кабинете регистратора домена говорят о том, домен делегирован на Яндекс.Коннект, т.е. DNS-записи хранятся и редактируются в аккаунте Яндекса в настройках сервиса Вебмастер. Самое сложное в этом случае — найти доступы от аккаунта в Яндексе (вида @yandex.ru), под которым домен был заведен в Коннекте.

Чтобы изменить DNS, нужно кликнуть на «Управление DNS» соответствующего домена:

DNS-записи здесь уже заполнены, нужно только указать новый IP-адрес для записи типа А, которая связывает IP с доменным именем:

Готово! Обновление DNS-записей домена происходит в течение 72 часов, но по нашему опыту у некоторых провайдеров сайт начинает открываться уже через пару часов.

Если домен делегирован на хостинг

В личном кабинете регистратора домена можно также встретить NS-записи другого вида:

Конкретно в этом случае они означают, что домен делегирован на хостинг firstvds.ru, значит, и DNS-записи хранятся там. Дальнейшие действия зависят от того, куда переносим сайт.

Перенос сайта на другой сервер того же хостера

В этом случае в панели управления следует найти место, где меняются ресурсные записи домена, и в записи типа A указать IP-адрес нового сервера. Менять остальные DNS-записи не требуется.

Перенос сайта на другой хостинг

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

Шаг 1: Перенос DNS на другой сервер

В Личном кабинете нового хостера необходимо найти место, где прописываются DNS, и прописать такие же записи, как у прежнего хостера, за исключением записи типа A — здесь нужно будет указать IP-адрес нового сервера.

Шаг 2: Проверка MX-записей домена

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

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

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

Шаг 3: Настройка NS-записей

После настройки ресурсных записей необходимо указать NS-записи нового хостера в личном кабинете регистратора домена — перенаправить домен на новый хостинг. Узнать, как должны выглядеть NS-записи для нового хостинга можно в справочных материалах, который предоставляет хостер при покупке тарифа, либо обратившись в службу технической поддержки хостинга. Стоит быть особенно внимательными — при неправильном заполнении NS-записей домена сайт не заработает при обновлении DNS-серверов.

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

  • Владелец сайта хранит на прежнем хостинге несколько сайтов.

В этом случае переносить DNS-записи и перенаправлять NS-сервера домена в панели управления доменом на другой хостинг не обязательно — они могут храниться в прежнем месте. Необходимо только изменить записи типа A, указав IP-адрес нового сервера.

NS-записи и DNS-записи хранятся в одном месте — в панели управления доменом.

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

DNS записи, типа SRV

SRVexample.comjohn в example.com
SRVЗачем может понадобиться использование DNS SRV записей для SIP протокола?SRVSRV

Этот документ описывает записи DNS RR, которые описывают местоположение сервисов для определенных протоколов и доменов.
На данный момент, она может содержать точный адрес сервера для связи с ним, или широковещательный запрос.
Запись SRV RR позволяет администраторам использовать несколько серверов для одного домена, перемещая обслуживание определенного сервиса от хоста к хосту в случайном порядке, и для назначения некоторого сервера основным для заданного сервиса, а другой — в качестве резервного.
Клиент запрашивает нужный ему сервис/протокол для определенного домена (имена используемых здесь доменов должны отвечать требованиям RFC 1034), и получает в ответ имена всех доступных серверов.

  • Вы можете определить SRV запись для своего домена, чтобы SIP прокси других доменов знали, как Вас найти. Как и в случае с e-mail, где один почтовый сервер обрабатывает почту для многих доменов, SIP прокси сервер может обрабатывать вызовы клиентов в нескольких доменах. Значение, заданное для DNS SRV записи в Вашем файле с описанием DNS зоны (voip-info.org), может указывать на какой-нибудь другой адрес SIP прокси сервера (например, sip.iptel.org). При такой конфигурации, вызовы на адрес: user в voip-info.org, будут автоматически отправлены на SIP прокси сервер: sip.iptel.org.
  • В Вашей DNS зоне, Вы можете указать несколько серверов SIP прокси. Если сервер с наивысшим приоритетом недоступен, тогда SIP клиенты (ua) или другие прокси, которые пытаются найти путь к абоненту в заданном домене, будут пытаться отправить вызов на прокси сервер, который определен в записи SRV с меньшим приоритетом.

Пример

SRVтуттутSRVSRVSRVSRVhttp://www.cisco.com/univercd/cc/td/doc/product/voice/sipproxy/admingd/ver2_1/ddns.htm

Пример, с использованием фиктивного домена

SRVSRVSRVSRVSRVSRVSRVSRV

  • проверяет, существует ли SRV запись для заданного домена.
  • Если SRV запись существует, используем их по кругу, пока один из них не ответит в течение заданного периода.
  • Если SRV запись не существует, используется «стандартный» поиск адреса в DNS, для соединения с сервером.

SRVSRVSRVSRVSRVSRVSRVSRVSRV

Сервера DNS, поддерживающие записи SRV.

  • BIND 9
  • djbdns (с патчем или generic SRV records)
  • MyDNS: http://mydns.bboy.net/: Свободно распространяемый DNS сервер для UNIX (записи хранятся в SQL базе — на данный момент поддерживаются mySQL/PostgreSQL)

Ссылки по теме:

  • RFC 2782: http://www.ietf.org/rfc/rfc2782.txt: DNS RR, для определения местонахождения определенных сервисов (DNS SRV)
  • DNS
  • SIP
  • STUN

Оргинал: http://www.voip-info.org/wiki/view/DNS+SRV

CNAMEs and Alternative Record Types

The CNAME Record is typically used alongside other types of DNS Records — A Records and ALIAS Records.

Difference Between A and CNAME

An A Record maps a hostname to one or more IP addresses, while the CNAME record maps a hostname to another hostname.

Difference between ALIAS and CNAME

The ALIAS Record, like CNAME, also maps a hostname to another hostname. However, the ALIAS Record makes it possible to have other DNS records on the same hostname, while CNAME does not. This makes it possible to apply ALIAS at the root domain (DNS zone apex), which is not allowed for CNAME.

In addition, ALIAS has better performance than CNAME because it does not require the DNS client to resolve another hostname — it directly returns an IP. However ALIAS records too need to do recursive lookups behind the scenes which can affect performance.

Как это работает система DNS?

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

DNS-сервер обращается к одному из корневых NS-серверов интернета, ip-адреса которых жестко заданы и известны и в ответ
Корневой сервер отдает DNS-серверу список ip-адресов серверов, на которых расположена зона .COM
Выглядит этот список примерно так:

a.gtld-servers.net.     160060  IN      A       192.5.6.30
a.gtld-servers.net.     160060  IN      AAAA    2001:503:a83e::2:30
b.gtld-servers.net.     160060  IN      A       192.33.14.30
b.gtld-servers.net.     160060  IN      AAAA    2001:503:231d::2:30
c.gtld-servers.net.     160060  IN      A       192.26.92.30
d.gtld-servers.net.     160060  IN      A       192.31.80.30
e.gtld-servers.net.     160060  IN      A       192.12.94.30
f.gtld-servers.net.     160060  IN      A       192.35.51.30
g.gtld-servers.net.     160060  IN      A       192.42.93.30
h.gtld-servers.net.     160060  IN      A       192.54.112.30
i.gtld-servers.net.     160060  IN      A       192.43.172.30
j.gtld-servers.net.     160060  IN      A       192.48.79.30
k.gtld-servers.net.     160060  IN      A       192.52.178.30
l.gtld-servers.net.     160060  IN      A       192.41.162.30
m.gtld-servers.net.     160060  IN      A       192.55.83.30

DNS-сервер обращается к одному из NS-серверов зоны .COM (Допустим, a.gtld-servers.net — 192.5.6.30) и запрашивает список NS-серверов для домена MYDOMAIN.COM. Эти NS-сервера называются NS-серверами, на которые делегирован домен.

ns1.mydomain.com.       172800  IN      A       66.96.142.148
ns2.mydomain.com.       172800  IN      A       65.254.254.172
ns3.mydomain.com.       172800  IN      A       66.96.142.146
ns4.mydomain.com.       172800  IN      A       65.254.254.170

После чего обращается к одному из полученного списка NS-серверов и запрашивает уже информацию относительно домена MYDOMAIN.COM.
Пример ответа:

mydomain.com.           3248    IN      MX      0 mail.mydomain.com.
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"
mydomain.com.           2208    IN      SOA     ns1.mydomain.com. hostmaster.mydomain.com. 1335787408 16384 2048 1048576 2560
mydomain.com.           248     IN      A       65.254.242.180
mydomain.com.           1448    IN      NS      ns3.mydomain.com.
mydomain.com.           1448    IN      NS      ns2.mydomain.com.
mydomain.com.           1448    IN      NS      ns4.mydomain.com.
mydomain.com.           1448    IN      NS      ns1.mydomain.com.

;; AUTHORITY SECTION:
mydomain.com.           1448    IN      NS      ns3.mydomain.com.
mydomain.com.           1448    IN      NS      ns4.mydomain.com.
mydomain.com.           1448    IN      NS      ns2.mydomain.com.
mydomain.com.           1448    IN      NS      ns1.mydomain.com.

;; ADDITIONAL SECTION:
ns1.mydomain.com.       167564  IN      A       66.96.142.148
ns2.mydomain.com.       167564  IN      A       65.254.254.172
ns3.mydomain.com.       126551  IN      A       66.96.142.146
ns4.mydomain.com.       126551  IN      A       65.254.254.170

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

Restrictions on CNAME Records

  • A CNAME cannot be placed at the root domain level, because the root domain is the DNS Start of Authority (SOA) which must point to an IP address.
  • CNAME records must point to another domain name, never to an IP address.
  • A hostname defined in a CNAME record must have no other resource records of other types (MX, A, etc.), except for DNSSEC records like RRSIG and NSEC.
  • CNAME records can point to other CNAME records, but this is not considered a good practice as it is inefficient.
  • MX and NS records must never point to a CNAME alias.
  • Domains that are used for e-mail may not have a CNAME record — this can have undesirable results with different mail servers.
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector