EvilMail
📖 Посібник

DNS-записи без таємниць: A, MX, CNAME, TXT та інші

Розбираємо кожен тип DNS-запису та вчимося правильно налаштовувати їх для доставки пошти, верифікації домену та веб-інфраструктури.

EvilMail TeamJanuary 25, 20268 хв читання

DNS — це невидимий шар, який забезпечує роботу інтернету, але більшість власників доменів стикаються з ним лише тоді, коли щось ламається. Після управління DNS-інфраструктурою для тисяч доменів на нашій платформі ми підготували цей довідник, щоб позбавити вас підходу спроб і помилок, на який витрачаються години відлагодження.

A-записи — фундамент A-запис зіставляє доменне ім'я з IPv4-адресою. Це найбазовіший тип DNS-запису, який ваш браузер використовує для пошуку веб-сервера. Коли ви вводите example.com у браузері, DNS-резолвер шукає A-запис, щоб знайти IP-адресу, де розташований сайт. Ви можете мати кілька A-записів для одного домену для реалізації round-robin балансування навантаження. ``` example.com. IN A 203.0.113.50 example.com. IN A 203.0.113.51 ```

AAAA-записи — IPv6-еквівалент Функціонально ідентичний A-запису, але вказує на IPv6-адресу замість IPv4. З поширенням IPv6 наявність обох записів — A та AAAA — гарантує досяжність вашого домену незалежно від мережевої конфігурації відвідувача. ``` example.com. IN AAAA 2001:db8::1 ```

MX-записи — хребет електронної пошти MX-записи (Mail Exchange) є критично важливими для доставки пошти. Вони повідомляють серверам-відправникам, куди доставляти електронну пошту для вашого домену. Число пріоритету має значення — менші значення означають вищий пріоритет. Типова конфігурація з резервним сервером виглядає так: ``` example.com. IN MX 10 mail.example.com. example.com. IN MX 20 backup.example.com. ```

Коли ви налаштовуєте домен у EvilMail, MX-записи створюються автоматично для маршрутизації вхідної пошти на наші сервери. Неправильно налаштовані MX-записи — причина номер один пропажі листів. Завжди перевіряйте їх після будь-яких змін у DNS.

CNAME-записи — псевдонім CNAME-запис (Canonical Name) створює псевдонім від одного доменного імені до іншого. Найчастіше він використовується для спрямування піддоменів на зовнішні сервіси. Наприклад, щоб направити піддомен блогу на хостингову платформу: ``` blog.example.com. IN CNAME your-site.ghost.io. ```

Важливо: CNAME-записи не можуть співіснувати з іншими типами записів на тому ж імені. Не можна мати CNAME і MX-запис для одного піддомену. Це правило специфікації DNS, а не обмеження якогось конкретного провайдера.

TXT-записи — верифікація та безпека TXT-записи зберігають довільні текстові дані та виконують кілька функцій у сучасному DNS. Найпоширеніші застосування — верифікація домену (підтвердження права власності на домен для Google, Microsoft або інших сервісів), SPF-записи для автентифікації пошти та DKIM-підписи. SPF-запис, що авторизує EvilMail відправляти пошту від імені вашого домену, виглядає так: ``` example.com. IN TXT "v=spf1 include:evilmail.pro ~all" ```

NS-записи — делегування повноважень NS-записи (Name Server) визначають, які DNS-сервери є авторитетними для вашого домену. Коли ви реєструєте домен в EvilMail та направляєте nameserver'и на нашу інфраструктуру, ви оновлюєте NS-записи у свого реєстратора для делегування повноважень нашим серверам: ``` example.com. IN NS storm.nesil.dev. example.com. IN NS void.nesil.dev. example.com. IN NS kraken.nesil.dev. example.com. IN NS pandora.nesil.dev. ```

SRV-записи — розташування сервісів SRV-записи вказують розташування конкретних сервісів. Вони використовуються протоколами SIP, XMPP та LDAP. Формат включає назву сервісу, протокол, пріоритет, вагу, порт та ціль: ``` _sip._tcp.example.com. IN SRV 10 60 5060 sipserver.example.com. ```

CAA-записи — авторизація центрів сертифікації CAA-записи визначають, яким центрам сертифікації дозволено видавати SSL-сертифікати для вашого домену. Це захисний механізм, що запобігає несанкціонованій видачі сертифікатів: ``` example.com. IN CAA 0 issue "letsencrypt.org" ```

TTL — час життя запису Кожен DNS-запис має значення TTL, виражене в секундах. Воно повідомляє DNS-резолверам, як довго кешувати запис перед повторним запитом до авторитетного сервера. Менші значення TTL (300 секунд) означають швидше поширення змін, але генерують більше DNS-запитів. Більші значення (86400 секунд) зменшують навантаження запитами, але затримують поширення. Перед критичними змінами в DNS знизьте TTL за 24 години наперед, щоб старі кешовані значення встигли протермінуватися.

Практичне відлагодження DNS Коли щось не працює, перевірте записи з різних точок. Використовуйте dig для перевірки через командний рядок: ``` dig +short MX example.com dig +short A example.com dig +short TXT example.com ```

Якщо записи виглядають правильно, але пошта все одно не працює, пам'ятайте: поширення DNS не миттєве. Нові записи можуть стати видимими по всьому світу протягом 48 годин, залежно від значень TTL та поведінки кешування резолверів. Терпіння в управлінні DNS — це справді технічна необхідність.

Схожі статті