# DNS-записи (A, AAAA, CNAME, MX, TXT)

> Типы ресурсных записей DNS — A и AAAA (адреса), CNAME (псевдоним), MX (почта), TXT (произвольный текст, SPF, DKIM, проверка домена), NS, SOA, CAA, SRV, HTTPS — и их настройка.

Источник: https://llmdocs.ru/wiki/dns-records/ · обновлено 2026-11-09 · лицензия CC BY-SA 4.0

- **Базовая спецификация**: RFC 1034, RFC 1035 (1987)
- **Формат записи**: имя, TTL, класс, тип, данные
- **Адреса**: A (IPv4), AAAA (IPv6, RFC 3596)
- **Почта**: MX, а также TXT для SPF, DKIM, DMARC
- **Новые типы**: CAA (RFC 8659), HTTPS и SVCB (RFC 9460, 2023)
- **Инструменты**: dig, nslookup, host
**DNS-записи** (ресурсные записи) — строки в зоне домена, которые хранят сведения о нём в системе доменных имён [DNS](https://llmdocs.ru/wiki/dns.md): на какой IP-адрес указывает имя, куда доставлять почту, какие серверы обслуживают зону, какие центры сертификации могут выпускать сертификаты. Каждая запись имеет **имя**, **тип**, **данные** и **TTL** — время в секундах, в течение которого резолверы могут кэшировать ответ.[1]

Настройка записей — повседневная задача при запуске сайта, подключении почты, выпуске сертификатов и подтверждении владения доменом для внешних сервисов.

## Формат

```text
; имя              TTL    класс тип   данные
example.com.       3600   IN    A     93.184.215.14
example.com.       3600   IN    AAAA  2606:2800:21f:cb07:6820:80da:af6b:8b2c
www.example.com.   3600   IN    CNAME example.com.
example.com.       3600   IN    MX    10 mail.example.com.
example.com.       3600   IN    TXT   "v=spf1 include:_spf.google.com -all"
```

Символ `@` в панелях управления обозначает сам домен (корень зоны, *apex*), точка в конце имени — полное имя, а класс почти всегда `IN` (интернет).

## Основные типы

| Тип | Данные | Назначение |
|---|---|---|
| **A** | IPv4-адрес | имя → адрес IPv4 |
| **AAAA** | IPv6-адрес | имя → адрес [IPv6](https://llmdocs.ru/wiki/ipv6.md)[2] |
| **CNAME** | другое имя | псевдоним: «смотри туда» |
| **MX** | приоритет и имя почтового сервера | куда доставлять почту домена |
| **TXT** | произвольный текст | SPF, DKIM, DMARC, подтверждение владения |
| **NS** | имя DNS-сервера | какие серверы авторитетны для зоны |
| **SOA** | параметры зоны | основной сервер, контакт, серийный номер, таймеры |
| **PTR** | имя | обратная запись: адрес → имя |
| **SRV** | приоритет, вес, порт, хост | где находится служба (`_sip._tcp`) |
| **CAA** | центр сертификации | кому разрешено выпускать сертификаты |
| **HTTPS, SVCB** | параметры подключения | поддерживаемые протоколы (HTTP/3), альтернативные адреса, ключи ECH |

### A и AAAA

Самые частые записи: связывают имя с адресом сервера. У одного имени может быть несколько записей A — клиенты выбирают из них, что даёт простейшую балансировку. Адресация описана в статье [IP-адрес и подсети (CIDR)](https://llmdocs.ru/wiki/ip-cidr.md).

### CNAME

CNAME делает имя псевдонимом другого имени: `www.example.com CNAME example.com`, или `shop.example.com CNAME shops.platform.net` для внешнего сервиса. Ограничения: у имени с CNAME не может быть других записей, поэтому **CNAME нельзя поставить на корень домена**, где обязательно есть NS и SOA. Многие DNS-провайдеры обходят это псевдотипами ALIAS или ANAME («уплощение CNAME»), которые разрешают имя на своей стороне и отдают обычные A-записи.

### MX

```text
example.com.  MX  10 mx1.mail.example.com.
example.com.  MX  20 mx2.mail.example.com.
```

Меньшее число — выше приоритет; при недоступности первого сервера почта пойдёт на второй. MX должна указывать на имя с A/AAAA-записью, а не на CNAME или IP-адрес.

### TXT

Универсальная запись для текстовых данных:

- **SPF** — какие серверы могут отправлять почту от имени домена: `v=spf1 include:_spf.google.com -all`.[4]
- **DKIM** — открытый ключ для проверки подписи писем, на имени вида `selector._domainkey.example.com`.
- **DMARC** — политика обработки писем, не прошедших проверку: `_dmarc.example.com TXT "v=DMARC1; p=quarantine"`.
- **Подтверждение владения** доменом для Google, поисковых систем, облачных сервисов и выпуска сертификатов через DNS-проверку ([Let's Encrypt и ACME](https://llmdocs.ru/wiki/lets-encrypt-acme.md)).

### CAA и HTTPS

Запись **CAA** ограничивает круг центров сертификации: `example.com CAA 0 issue "letsencrypt.org"` — остальным выпуск запрещён.[5] Записи **HTTPS** (RFC 9460) сообщают браузеру ещё до подключения, что сервер поддерживает HTTP/3, и могут нести ключи для шифрования ClientHello.[3]

## TTL и распространение изменений

Изменение записи не видно мгновенно: резолверы хранят старый ответ до истечения TTL. Перед переездом сервера TTL заранее уменьшают (например, до 300 секунд), а после переключения снова увеличивают. Выражение «DNS распространяется до 48 часов» описывает именно кэширование; при разумном TTL изменения расходятся за минуты.

## Проверка

```bash
dig example.com A +short                  # адрес IPv4
dig example.com AAAA +short
dig example.com MX
dig _dmarc.example.com TXT +short
dig example.com NS
dig @1.1.1.1 example.com                  # спросить конкретный резолвер
dig +trace example.com                    # пройти путь от корневых серверов
dig -x 93.184.215.14 +short               # обратная запись (PTR)
```

Полезно сравнивать ответы разных резолверов и авторитетных серверов зоны, чтобы понять, обновилась ли запись и не мешает ли кэш. Обзор типов записей с примерами — в справочнике Cloudflare.[6]

## Типичные ошибки

- CNAME на корне домена или рядом с другими записями того же имени.
- Несколько записей SPF вместо одной — проверка почты ломается.
- Забытая точка в конце полного имени в файлах зон: `mail.example.com` превращается в `mail.example.com.example.com`.
- Высокий TTL перед запланированным переездом.
- Отсутствие обратной записи PTR для почтового сервера — письма попадают в спам.

## См. также

- [DNS](https://llmdocs.ru/wiki/dns.md)
- [IP-адрес и подсети (CIDR)](https://llmdocs.ru/wiki/ip-cidr.md)
- [Let's Encrypt и ACME](https://llmdocs.ru/wiki/lets-encrypt-acme.md)
- [IPv6](https://llmdocs.ru/wiki/ipv6.md)
- [CDN](https://llmdocs.ru/wiki/cdn.md)

## Источники

1. [RFC 1035 — Domain Names: Implementation and Specification](https://www.rfc-editor.org/rfc/rfc1035)
2. [RFC 3596 — DNS Extensions to Support IP Version 6](https://www.rfc-editor.org/rfc/rfc3596)
3. [RFC 9460 — Service Binding and Parameter Specification via the DNS (SVCB and HTTPS)](https://www.rfc-editor.org/rfc/rfc9460)
4. [RFC 7208 — Sender Policy Framework (SPF)](https://www.rfc-editor.org/rfc/rfc7208)
5. [RFC 8659 — DNS Certification Authority Authorization (CAA)](https://www.rfc-editor.org/rfc/rfc8659)
6. [Cloudflare Learning — DNS records](https://www.cloudflare.com/learning/dns/dns-records/)
