Полный гид по DNS-записям: A, CNAME, MX, TXT

 

Знаешь это чувство, когда меняешь хостинг или подключаешь почту для домена, а сайт «падает», а письма упорно летят в спам? Чаще всего виноваты не хостинг-провайдеры, а криво настроенные DNS записи. Серьезно, одна маленькая ошибка — и можно получить часы простоя. Давай разберемся, что к чему, на простом языке, без воды.

Это не скучная техничка, а основа основ. DNS-записи — это как инструкции для интернета: куда идти за сайтом, куда нести почту, как подтвердить владение. Я сам не раз наступал на грабли с настройкой DNS записей, пока не разложил для себя всё по полочкам. Делиться буду именно этим опытом.

Что вообще такое DNS и зачем мне, веб-мастеру, в этом копаться?

Представь себе огромную телефонную книгу интернета. Ты ищешь красивое имя «мой-сайт.ru», а книга тебе выдает цифровой адрес сервера, где этот сайт живет. Это и есть DNS (Domain Name System). А DNS записи — это конкретные строчки в этой книге. Без них домен — просто красивая вывеска, которая никуда не ведет.

Вот главные «работяги», с которыми ты столкнешься:

  • A запись — фундамент, связывает домен с IP-адресом твоего хостинга.
  • CNAME — создает псевдонимы, типа «www» для основного домена.
  • MX запись — дирижирует всей электронной почтой твоего домена.
  • TXT запись — нужна для безопасности (чтобы тебя не подделали) и всяких верификаций.

И еще один важный параметр — TTL (Time To Live). Грубо говоря, это срок годности инструкции в кеше. Меняешь что-то? Поставь TLL поменьше, скажем, 300-900 секунд. Всё стабильно? Оставляй 3600+ для скорости. Иначе будешь сутки ждать, когда обновятся данные у провайдеров.

Запись A: старый добрый указатель на IPv4

Самая базовая штука. A запись просто говорит: «Эй, браузер, если кто-то ищет example.com, веди его на сервер с IP-адресом 192.0.2.1». Всё. Именно по этому принципу открывается 99% сайтов.

Когда её использовать? Да почти всегда! Для основного домена (иногда в панелях пишут символ @) и для поддомена «www». Можно даже создать несколько A записей с одним именем, но разными IP — это примитивный способ балансировки нагрузки.

Вот как это выглядит в панели управления (cPanel, Cloudflare или у твоего регистратора):

Тип: A
Имя/Host: @ (или просто оставляем пустым для основного домена)
Значение/Address: 192.0.2.1
TTL: 3600

А для «www» создаешь еще одну, где Имя/Host будет «www», а значение — тот же самый IP.

Важный момент! Это IPv4-адрес. Но мир постепенно переходит на IPv6. Для него есть отдельная AAAA запись, где значение — длиннющая штука типа «2001:db8::1». Если твой хостинг поддерживает IPv6, добавь и её тоже. Без неё часть пользователей (с новыми протоколами) может не увидеть сайт.

Сравниваем A и AAAA записи
Тип записи Для чего нужна Пример значения Насколько важна?
A Указывает IPv4-адрес сервера 192.0.2.1 Обязательна для работы сайта в текущем интернете
AAAA Указывает IPv6-адрес сервера 2001:db8::1 Настоятельно рекомендуется для будущей совместимости

А что с IPv6? Запись AAAA

Не буду грузить деталями, но адреса IPv4 заканчиваются. AAAA запись — это ее аналог для нового пространства адресов IPv6. Если хочешь, чтобы твой сайт был готов к будущему (и некоторые мобильные операторы уже этим будущим живут), настрой и ее. Процесс такой же, как с A-записью, только значение другое.

CNAME: удобные псевдонимы, но с подводными камнями

Любимая и одновременно самая проблемная запись. CNAME (Canonical Name) — это не указатель на IP, а указатель на другое доменное имя. Типа «blog.example.com — это на самом деле тот же самый сайт, что и www.example.com». Удобно! Меняешь IP в одной A записи, а все CNAME на нее автоматически подхватывают изменение.

Но тут начинаются строгие правила протокола DNS, которые все постоянно нарушают, а потом удивляются, почему ничего не работает.

  1. Нет CNAME на корневой домен! На сам example.com (апекс) CNAME ставить нельзя. Точка. Для этого есть специальные записи ALIAS или ANAME у некоторых DNS-хостеров (типа Cloudflare), которые имитируют поведение CNAME для корня.
  2. CNAME — эгоист. Если для поддомена создан CNAME, ты не можешь добавить к нему другие записи (MX, TXT, A). Он переопределяет всё.

Пример правильной настройки для поддомена «www»:

Тип: CNAME
Имя/Host: www
Значение/Target: example.com. (обрати внимание на точку в конце!)
TTL: 3600
A против CNAME: что выбрать?
Характеристика A запись CNAME
Что указывает Непосредственно IP-адрес Другое доменное имя (алиас)
Работает на корневом домене? Да Нет (только поддомены)
Можно ли добавить другие записи рядом? Да (MX, TXT и т.д.) Нет, запрещено протоколом
Где использовать Основной сайт, почтовый сервер Алиасы (www, blog, shop)

MX-записи: дирижируем доставкой почты

Хочешь почту вида [email protected]? Без правильно настроенных MX записей — никак. Они указывают не на IP, а на hostname почтового сервера. И у них есть приоритеты (цифры). Чем число МЕНЬШЕ — тем приоритет ВЫШЕ. Сервер с приоритетом 10 будет основным, а с приоритетом 20 — резервным на случай падения первого.

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

1. Тип: MX
   Имя/Host: @
   Приоритет: 10
   Значение/Адрес: mail.tvoj-domain.ru.
   TTL: 3600

2. Тип: A
   Имя/Host: mail
   Значение: 192.0.2.10 (IP-адрес твоего почтового сервера)

Видишь связку? MX запись ведет на имя «mail.tvoj-domain.ru», а это имя, в свою очередь, уже через A запись связано с конкретным IP. Это важно! Прямой IP в MX впихнуть нельзя.

Если берешь корпоративную почту у Google (Gmail) или Яндекс, они просто дадут тебе свои MX записи. Останется только скопировать их в панель. Например, для Google это будут что-то вроде aspmx.l.google.com с разными приоритетами.

TXT-записи: охранники и верификаторы

На первый взгляд, самая простая — просто текст. Но именно TXT записи защищают твою почту от спама и позволяют подтвердить, что домен твой. Без них письма с твоего домена будут лететь прямиком в спам, а подключить Google Search Console не получится.

Основные сценарии:

  • SPF (Sender Policy Framework): Белый список серверов, которым разрешено отправлять письма от твоего имени. Без него любой может слать спам, подделав твой адрес.
  • DKIM (DomainKeys Identified Mail): Цифровая подпись для каждого письма. Почтовые сервисы проверяют ее и убеждаются, что письмо не подделали.
  • Верификация домена: Когда подключаешь Яндекс.Метрику, Google Search Console, SSL-сертификаты — они просят добавить уникальную TXT запись для подтверждения прав.

Пример SPF-записи для домена, который отправляет почту через Google Workspace:

Тип: TXT
Имя/Host: @
Значение: "v=spf1 include:_spf.google.com ~all"
TTL: 3600

Обрати внимание на кавычки! Обычно значение TXT записи нужно вводить в двойных кавычках. Это частая ошибка.

Как выглядит полный набор для простого сайта с почтой?

Давай соберем всё вместе. Вот типичный набор DNS записей для домена example.com с сайтом на хостинге и почтой на том же сервере:

@        A       192.0.2.1              (сайт)
www      CNAME   example.com.          (алиас www)
@        MX 10   mail.example.com.     (почта, приоритет 10)
mail     A       192.0.2.1              (тот же IP для почтового сервера)
@        TXT     "v=spf1 a ~all"       (разрешаем отправку с этого IP)
_dmarc   TXT     "v=DMARC1; p=none;"   (настраиваем политику DMARC)

Частые косяки и как их избежать (личный опыт)

Поверь, я наделал кучу ошибок, пока во всем разобрался. Ловушки, в которые попадают все:

  • Терпение, только терпение. Изменения в DNS распространяются (пропагируются) от 1 до 48 часов. Не паникуй, если сразу не работает. Заранее снизь TTL, чтобы в будущем ждать меньше.
  • CNAME на корень. Повторюсь, потому что это главная ошибка. Нельзя. Для корня — только A/AAAA или ALIAS.
  • Несколько провайдеров. Если домен куплен у Рег.ру, а DNS-серверы прописаны от Cloudflare, настройки надо менять в Cloudflare, а не в Рег.ру. Где NS-серверы — там и зона.
  • Бэкап! Перед любыми изменениями сделай скриншоты или экспорт текущих записей. Откатиться будет проще.
  • Тестируй. Используй команды в командной строке (nslookup, dig) или онлайн-сервисы (типа MXToolbox), чтобы проверить, что видят другие серверы.

FAQ: короткие ответы на больные вопросы

Можно ли использовать CNAME для корневого домена (example.com)?

Нет, напрямую — нельзя. Протокол DNS это запрещает. Но многие продвинутые DNS-хостеры (Cloudflare, DNSMadeEasy) предлагают запись ALIAS/ANAME, которая для корня работает как CNAME. Ищи такую опцию у своего провайдера.

Сколько MX записей нужно минимум?

Достаточно одной. Но для надежности лучше две с разными приоритетами. Если упадет основной почтовый сервер, почта пойдет на резервный.

TXT запись для SPF/DKIM — это обязательно?

Если хочешь, чтобы письма с твоего домена доставлялись в inbox, а не в спам — да, абсолютно обязательно. Без SPF и DKIM почтовые системы считают твои письма подозрительными.

Что лучше для www: A запись или CNAME?

С точки зрения удобства — CNAME. Поменял IP в A-записи для основного домена — и www автоматически переведется на новый адрес. С A-записью придется менять два значения.

Сайт будет работать без AAAA записи (IPv6)?

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

Надеюсь, этот разбор был полезным и не слишком запутанным. Настройка DNS записей — это как сборка конструктора: раз понял логику, всё становится просто. Главное — не бояться и проверять каждый шаг.

Информация в статье основана на официальных технических спецификациях и документации ведущих хостинг-провайдеров и CDN-сетей, а также на личном практическом опыте администрирования доменов.