ACLClouds
ACLClouds

Направить домен на VPS: записи A и AAAA

Записи A, AAAA и CNAME, примеры DNS-зоны и проверка по шагам перед установкой сайта на VPS.

Доменное имя не знает, где находится ваш сервер: это сообщает DNS-зона. Нескольких записей хватает, чтобы направить example.com на адрес вашего VPS, если понимать, что делает каждая из них.

  • Запись A направляет имя на IPv4, AAAA — на IPv6, CNAME — на другое имя.
  • Голое имя (@) не может иметь CNAME: для основного домена используйте A или AAAA.
  • Проверьте через dig на публичном резолвере, прежде чем запрашивать сертификат HTTPS.

Узнать IP-адрес VPS

Прежде чем создавать запись, запишите публичный адрес VPS. Две команды на сервере его покажут. Для большинства сайтов достаточно IPv4; IPv6 необязателен.

  • curl -4 ifconfig.me: показывает публичный IPv4 сервера, тот, что он отдаёт в Интернет.
  • curl -6 ifconfig.me: показывает публичный IPv6, если он есть у VPS.
  • Запишите эти адреса: они станут значениями записей A и AAAA.

Создать записи A, AAAA и CNAME

В DNS-зоне домена, у регистратора или у выбранного DNS-провайдера добавьте записи ниже. Имя @ обозначает голый домен, example.com, а www — поддомен www.

  • A @ 203.0.113.10: example.com указывает на IPv4 VPS.
  • A www 203.0.113.10: www.example.com указывает на ту же машину.
  • AAAA @ 2001:db8::10: та же цель в IPv6, если вы его используете.
  • CNAME blog example.com.: blog.example.com следует за целью example.com.

Проверить перед установкой сайта

Изменения DNS иногда распространяются несколько минут, дольше, если у старой записи большой TTL. Не запрашивайте сертификат HTTPS, пока имя не разрешается правильно: проверка не пройдёт.

  • dig +short example.com A: должен вернуть 203.0.113.10.
  • dig +short blog.example.com: должен вернуть example.com. и затем IP-адрес.
  • nslookup example.com 1.1.1.1: запрашивает публичный резолвер, минуя кеш вашего роутера.

Часто задаваемые вопросы

В чём разница между доменом и поддоменом?

Домен — это имя, которое вы покупаете, например example.com. Поддомен добавляет префикс, например blog.example.com. Оба управляются в одной DNS-зоне, каждый со своими записями.

Почему www отвечает, а голый домен нет?

Обычно у голого имени нет записи A, или старое значение ещё в кеше. Сравните вывод dig для www и для голого имени, затем дождитесь истечения TTL.

Нужно ли менять DNS-серверы у регистратора?

Только если зону ведёт другой провайдер. Тогда серверы имён домена должны указывать на него, иначе ваши записи не будут прочитаны.