Как привязать домен к VPS: записи A, AAAA, CNAME, MX и TXT
Как работает DNS и TTL, какие записи бывают и зачем, где именно их редактировать, пошаговая привязка домена и www к серверу и проверка через dig. Особенности Cloudflare.

Сервер доступен по IP, но запоминать цифры неудобно, а сертификат HTTPS выдаётся только на домен. Чтобы домен вёл на ваш сервер, нужно создать одну-две DNS-записи. Главная сложность не в самих записях, а в том, чтобы создать их в правильном месте и не ждать «обновления DNS» там, где ждать нечего.
Как работает DNS
Когда вы набираете example.com, компьютер должен узнать IP-адрес за этим именем. Сам он ничего не знает и спрашивает DNS-резолвер — сервер провайдера или публичный 1.1.1.1 / 8.8.8.8. Если резолвер недавно уже отвечал на такой вопрос, он отдаёт ответ из кэша. Если нет — идёт по цепочке.
Цепочка начинается с корневых серверов. Они не знают адрес example.com, но знают, кто отвечает за зону .com. Те не хранят запись, но знают, какие NS-серверы обслуживают сам домен. Вот эти NS-серверы и хранят записи домена.
Какие NS-серверы отвечают за ваш домен, указано у регистратора — компании, где вы купили домен. Чаще всего это DNS регистратора, и записи редактируются в его панели. Но NS можно указать и другие, например Cloudflare, — и тогда записи создаются там, а правки в панели регистратора ни на что не влияют. Это самая частая причина «я добавил запись, а она не работает».
TTL. Получив ответ, резолвер запоминает его на время, указанное в записи, в секундах. При TTL 3600 резолвер час отдаёт сохранённый ответ и не переспрашивает. Отсюда миф про «обновление DNS до 24 часов»: запись на NS-сервере меняется сразу, но резолверы по всему миру продолжают отдавать старый ответ, пока у них не истечёт TTL. Новая запись, которой раньше не было, обычно начинает работать за минуты. Дольше всего — смена самих NS-серверов: зона .com хранит сведения о них 2 суток, .ru — 4.
Какие бывают записи
| Тип | Что делает | Пример |
|---|---|---|
| A | Имя → IPv4-адрес. Главная запись для привязки | example.com → 203.0.113.10 |
| AAAA | Имя → IPv6-адрес | example.com → 2001:db8::10 |
| CNAME | Имя — псевдоним другого имени. Нельзя на сам домен без поддомена | www → example.com |
| MX | Серверы, принимающие почту для домена | по инструкции почтового сервиса |
| TXT | Произвольный текст: SPF, DKIM, коды подтверждения Google/Яндекса | v=spf1 … |
| NS | Серверы, обслуживающие домен. Меняются у регистратора, не в списке записей | ns1.example.net |
| PTR | Обратная: IP → имя. Задаётся у владельца IP, то есть у хостинга, а не регистратора | — |
PTR для IP вашего сервера настраивается в кабинете tanaka.host; она нужна в основном для исходящей почты.
Что нужно
- Домен и доступ к панели, где редактируются его записи.
- IPv4-адрес сервера из кабинета tanaka.host.
- IPv6-адрес, если хотите добавить AAAA. На сервере:
ip -6 addr show scope global— адрес послеinet6до знака/.
1. Где редактировать записи
Сначала проверьте, какие NS-серверы обслуживают домен:
dig +short NS example.com
Серверы регистратора — записи создаются в его панели. *.ns.cloudflare.com — в Cloudflare. Что-то третье — там и ищите. Подробнее про dig — в отдельной статье.
2. Создать записи
В разделе управления DNS добавьте, подставив свои адреса:
| Тип | Имя | Значение | Зачем |
|---|---|---|---|
| A | @ |
203.0.113.10 |
домен ведёт на сервер |
| A | www |
203.0.113.10 |
адрес с www тоже |
| AAAA | @ |
2001:db8::10 |
то же для IPv6, по желанию |
@ — сам домен без поддомена; в некоторых панелях вместо него оставляют поле имени пустым. Для поддомена app.example.com в поле имени пишут только app.
Вместо второй A-записи для www можно сделать CNAME www → example.com: при смене IP править придётся только одну запись.
TTL можно оставить по умолчанию. Если в ближайшее время планируете переезд на другой сервер — заранее поставьте 300 секунд, тогда переключение пройдёт за пять минут.
Удалите старые записи. Если у имени уже есть A или AAAA — заглушка регистратора, старый сервер — уберите их. При нескольких адресах у одного имени посетители будут попадать то на ваш сервер, то на старую страницу.
3. Проверить
Через пару минут:
# Ваш обычный резолвер
dig +short example.com A
# Публичный резолвер Google, у него свой кэш
dig @8.8.8.8 +short example.com A
В Windows — nslookup example.com. Если команда возвращает IP вашего сервера — домен привязан. dig без +short покажет ещё и TTL: число перед IN в строке ответа.
Дальше — настроить веб-сервер и сертификат: Nginx + PHP-FPM + SSL и Let’s Encrypt. Сертификат выдаётся только на домен, который уже указывает на сервер, поэтому порядок именно такой.
Если домен в Cloudflare
У записей в Cloudflare есть переключатель проксирования (оранжевое облако). Когда он включён, dig показывает адреса Cloudflare, а не вашего сервера, и через домен работают только HTTP/HTTPS: SSH, почта, игровые порты через такое имя не пройдут. Если домен нужен не только для сайта — выключите проксирование (режим DNS only), либо заведите отдельный поддомен без прокси для SSH.
Частые ошибки
Запись создана, домен не открывается.
- Проверьте, что запись там, куда указывают NS:
dig +short NS ваш-домен. - Спросите разные резолверы:
dig @8.8.8.8 +short ваш-домениdig @1.1.1.1 +short ваш-домен. Если они отвечают правильно, а ваш компьютер нет — дело в локальном кэше. - Очистите кэш: Windows —
ipconfig /flushdns, macOS —sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder.
DNS_PROBE_FINISHED_NXDOMAIN в браузере — для домена нет ни одной записи. Проверьте, что запись создана именно для того имени, которое открываете (www — отдельно), и что срок регистрации домена не истёк.
Без www открывается, с www нет — для www нужна своя запись: A с IP сервера или CNAME на основной домен.
Сертификат не выдаётся — Let’s Encrypt проверяет домен с внешних резолверов. Пока они видят старый IP, certbot будет падать. Дождитесь истечения TTL.
Почта на домене. Для MX и TXT-записей следуйте инструкции почтового сервиса, где заведён домен. Разница между портами и протоколами — в статье SMTP, POP3 и IMAP.