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 наличие обоих типов записей гарантирует доступность вашего домена вне зависимости от сетевой конфигурации посетителя. ``` 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 и направляете серверы имён на нашу инфраструктуру, вы обновляете 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 — это действительно техническое требование.
