Записи, которые встретятся почти в каждой зоне
Что такое DNS A-запись (и когда нужна AAAA)
A-запись — самая значимая строка в вашей DNS-зоне. Она сопоставляет имя хоста с адресом IPv4, и если она неверна или отсутствует, сайт недоступен, как бы идеально ни было настроено всё остальное.
A означает Address (адрес). Её аналог для IPv6 — AAAA-запись (произносится «квад-A»), названная так потому, что адрес IPv6 вчетверо больше адреса IPv4.
Устройство A-записи
example.com. 3600 IN A 93.184.216.34
www.example.com. 3600 IN A 93.184.216.34
example.com. 3600 IN AAAA 2606:2800:220:1::248Читаем слева направо:
| Поле | Значение | Смысл |
|---|---|---|
| Имя | example.com. | Имя хоста, на которое отвечает эта запись. @ в большинстве панелей управления означает сам домен. |
| TTL | 3600 | Секунды, в течение которых резолверы могут кешировать запись. См. TTL. |
| Класс | IN | Internet. Другое значение вам не понадобится никогда. |
| Тип | A | Запись адреса IPv4. |
| Значение | 93.184.216.34 | Сам адрес — должен быть буквальным IP, а не именем хоста. |
A и AAAA
| A-запись | AAAA-запись | |
|---|---|---|
| Указывает на | Адрес IPv4 | Адрес IPv6 |
| Пример значения | 93.184.216.34 | 2606:2800:220:1::248 |
| Обязательна? | Фактически да | Настоятельно рекомендуется |
| Клиент использует её, когда | У него есть подключение по IPv4 | У него есть подключение по IPv6 |
Это не альтернативы: публикуйте обе. Dual-stack-клиент обычно предпочтёт IPv6 и перейдёт на IPv4, если не получится, поэтому наличие обеих даёт каждому посетителю рабочий путь. Если опубликована только запись A, клиенты только с IPv6, которые встречаются в некоторых мобильных сетях, вообще не смогут до вас добраться.
Несколько A-записей для одного имени
У имени хоста может быть несколько A-записей. Резолверы отдают их все, обычно меняя порядок, что распределяет трафик по серверам — это классический round-robin DNS.
example.com. 300 IN A 93.184.216.34
example.com. 300 IN A 93.184.216.35
example.com. 300 IN A 93.184.216.36Это грубая балансировка нагрузки: DNS не знает, исправен ли сервер, поэтому мёртвый адрес продолжает выдаваться, пока вы не удалите запись. О лучших альтернативах рассказано в статье почему у домена несколько IP.
Четыре ошибки, ломающие сайты
Забытая запись
wwwexample.comиwww.example.com— это разные имена хостов, и им нужны отдельные записи. Если задать одну и не задать другую, половина посетителей попадёт на мёртвое имя.Правка записей не у того провайдера
Если ваши записи
NSделегируют домен хостингу, записи, изменённые у регистратора, полностью игнорируются. Сначала проверьте, какие серверы имён авторитативны.Высокий TTL перед миграцией
Изменение A-записи с TTL в 86400 секунд означает до 24 часов разделённого трафика. Понизьте TTL за сутки до переезда.
Устаревшая A-запись рядом с CNAME
У имени не может одновременно быть CNAME и другие записи. Многие провайдеры молча игнорируют одну из них, из-за чего поведение получается непоследовательным.
Wildcard, поддомены и корень
Три ситуации с именами возникают постоянно и ведут себя достаточно по-разному, чтобы их стоило разделить.
Корневая запись (apex)
Корень — это сам домен example.com без поддомена. В большинстве панелей управления он записывается как @. Это единственное имя, где вы часто обязаны использовать запись A, а не CNAME, потому что протокол запрещает CNAME сосуществовать с записями NS и SOA, которые корень обязан содержать.
Записи поддоменов
Каждый поддомен — независимое имя, которому нужна своя запись. www, blog, shop и api ничего не наследуют от корня: запись A для example.com ничего не делает для www.example.com.
Wildcard-записи
Wildcard отвечает за любое имя, у которого нет собственной записи.
*.example.com. 3600 IN A 93.184.216.34Полезно для мультиарендных продуктов, где каждому клиенту выдаётся their-name.example.com без изменения DNS при каждой регистрации. Прежде чем к этому прибегнуть, учтите два нюанса:
- Явная запись всегда побеждает. Если у
api.example.comесть собственная записьA, wildcard для этого имени не рассматривается. - Wildcard покрывает только один уровень.
*.example.comсоответствуетfoo.example.com, но неfoo.bar.example.com.
Проверка ваших A-записей
dig +short example.com A
dig +short example.com AAAAЛибо разрешите обе сразу в инструменте поиска: он запрашивает A и AAAA независимо и показывает их отдельно, так что сразу видно, настроен ли IPv6 на самом деле.
Ключевой вывод
A-запись — имя в IPv4. AAAA-запись — имя в IPv6. Обе принимают буквальный адрес, а не имя хоста, и именно публикация обеих делает сайт доступным для всех.
Нужно проверить публичные DNS-адреса домена? Воспользуйтесь инструментом Domain IP Lookup.
Бесплатные инструменты по этой теме
Часто задаваемые вопросы
Читайте также
Записи, которые встретятся почти в каждой зоне
CNAME или A-запись: что выбрать?
Всё решается одним вопросом: вы управляете IP-адресом или это делает кто-то другой? И правило для корневого домена, на котором спотыкаются все.
Записи, которые встретятся почти в каждой зоне
Типы DNS-записей: полный справочник
Каждый стоящий внимания тип записи: что он делает, как выглядит и какую ошибку с ним допускают чаще всего — на одной странице справочника.
Выбор TTL на практике
Что такое DNS TTL: как выбрать правильное значение
Одно число определяет, как быстро вступают в силу изменения и сколько DNS-трафика вы создаёте. Как выбрать его осознанно.