DNS-сервер: как он работает и как настроить свой сервер на VPS — инструкция для новичка
DNS-сервер переводит доменные имена сайтов в IP-адреса и обеспечивает работу браузера, почты и любого сетевого сервиса. Из статьи вы узнаете, как устроен DNS-сервер, чем рекурсивный сервер отличается от авторитативного и как настроить собственный DNS-сервер на VPS — с портами, командами и разбором типичных ошибок новичков. Больше практических инструкций по серверам и сетям — в разделе Блог.

Коротко
Главные выводы статьи о теме «DNS-сервер» в семи пунктах:
- DNS-сервер отвечает на запросы по порту 53 (UDP и TCP), а защищённые протоколы DoT и DoH используют порты 853 и 443
- Популярный сервер BIND версии 9.18 занимает около 50 МБ оперативной памяти в базовой конфигурации
- Публичные DNS-серверы: Google 8.8.8.8, Cloudflare 1.1.1.1, Яндекс 77.88.8.8
- Для своего DNS-сервера хватает VPS от 1 vCPU и 1 ГБ ОЗУ
- Стандартный TTL DNS-записи — 3600 секунд (1 час), для критичных сервисов его снижают до 300 секунд
- У домена рекомендуют указывать минимум 2 DNS-сервера — основной и резервный
- Основных типов DNS-записей 5: A, AAAA, CNAME, MX и TXT
Что такое DNS-сервер простыми словами
DNS-сервер работает как телефонная книга интернета. Вы знаете имя сайта, например vpsguru.ru, а компьютеру для подключения нужен его номер — IP-адрес (Internet Protocol address). DNS-сервер находит этот номер по имени и за доли секунды отдаёт его браузеру.
DNS расшифровывается как Domain Name System — система доменных имён. Это распределённая база: тысячи серверов по всему миру хранят записи о доменах и отвечают на запросы. Без неё пришлось бы запоминать наборы цифр вроде 77.88.8.8 вместо привычных названий сайтов.
Сервер принимает запросы на порту 53. Короткие запросы идут по UDP (User Datagram Protocol), а крупные ответы и копирование данных между серверами — по TCP (Transmission Control Protocol). Защищённые варианты DNS используют порты 853 и 443. Вот что происходит, когда вы открываете сайт:
- вы вводите в браузере
example.com; - компьютер спрашивает у DNS-сервера IP-адрес этого домена;
- сервер возвращает запись типа A, например
203.0.113.10; - браузер подключается к этому адресу и загружает страницу;
- ответ хранится в кэше 3600 секунд (1 час), поэтому следующий запрос к тому же домену не нужен;
- проверить, какой IP получает домен, можно командой
nslookup example.comв терминале Windows, macOS или Linux.
Как работает DNS-сервер: путь от запроса до ответа
Когда вы вводите адрес сайта, браузер сначала проверяет свой кеш и кеш операционной системы. Если IP-адреса там нет, запрос уходит на рекурсивный резолвер. Это сервер провайдера или публичный сервис, например 8.8.8.8. Резолвер сам опрашивает цепочку серверов и возвращает вам готовый ответ.
Рекурсивный сервер ищет ответ за клиента и кеширует его на время TTL (Time To Live, время жизни записи), обычно на 3600 секунд. Авторитативный сервер ничего не ищет: он хранит зону конкретного домена и отвечает только за неё. Именно такой сервер вы поднимаете на VPS, чтобы самостоятельно управлять записями своего домена.
DNS работает на прикладном уровне модели OSI (Open Systems Interconnection) и стека TCP/IP. Короткие запросы идут через UDP (User Datagram Protocol) на порт 53, а длинные ответы и передача зон между серверами — через TCP на тот же порт. Как эти уровни связаны между собой, объясняем в статье как устроен TCP/IP. Полный путь без кеша занимает в среднем 20–50 мс.
| Шаг | Сервер | Что делает | Время ответа |
|---|---|---|---|
| 1 | Рекурсивный резолвер | Принимает запрос и проверяет свой кеш | 1–10 мс |
| 2 | Корневой сервер (13 адресов, от a.root-servers.net до m.root-servers.net) |
Сообщает адрес TLD-сервера нужной зоны, например .ru |
5–15 мс |
| 3 | TLD-сервер (Top-Level Domain, домен верхнего уровня) | Возвращает NS-записи — адреса авторитативных серверов домена | 5–15 мс |
| 4 | Авторитативный сервер | Отдаёт итоговую запись, например A-запись с IP-адресом | 5–20 мс |
Чтобы увидеть эту цепочку своими глазами, выполните в терминале dig +trace example.ru. Команда покажет ответ каждого сервера по очереди.

Как настроить свой DNS-сервер на VPS: пошаговая инструкция
Свой DNS-сервер разворачивают на отдельном сервере, а не на той же машине, где крутится сайт. Для базовой настройки хватает VPS от 1 vCPU и 1 ГБ ОЗУ — подобрать подходящий тариф можно с запасом на будущие проекты. Дальше остаётся установить программу DNS-сервера, открыть нужный порт и прописать записи домена.
Самый популярный DNS-сервер — BIND (Berkeley Internet Name Domain) версии 9.18, он занимает около 50 МБ оперативной памяти в базовой конфигурации. Как запустить свой DNS-сервер на BIND по шагам — от установки до проверки ответа:
- Арендуйте VPS с чистой Ubuntu или Debian и подключитесь к нему по SSH под пользователем с правами
sudo. - Обновите пакеты и установите сервер:
apt update && apt install bind9 bind9utils. - Откройте порт 53 для UDP и TCP в файрволе:
ufw allow 53/tcpиufw allow 53/udp. - Откройте файл
/etc/bind/named.conf.localи добавьте описание зоны для вашего домена с указанием пути к файлу зоны. - Создайте файл зоны в каталоге
/etc/bind/zones/и пропишите там записи:Aдля IP-адреса сайта,MXдля почтового сервера, при необходимостиAAAA,CNAMEиTXT. - Установите TTL записей — стандартное значение 3600 секунд (1 час), а для критичных сервисов снизьте его до 300 секунд, чтобы изменения применялись быстрее.
- Проверьте синтаксис конфигурации командами
named-checkconfиnamed-checkzone имя_зоны /etc/bind/zones/файл. - Перезапустите службу:
systemctl restart bind9и проверьте её статус черезsystemctl status bind9. - Убедитесь, что сервер отвечает на запросы: выполните
dig @IP_вашего_сервера доменилиnslookup домен IP_вашего_сервера.
Для надёжности домену нужно минимум 2 DNS-сервера — основной и резервный, поэтому второй сервер стоит развернуть на отдельном VPS в другом регионе.

Подобрать сервер под несколько доменов
Если DNS обслуживает 3 и более доменов, возьмите тариф с запасом по ОЗУ.
Сколько стоит DNS-сервер и какие параметры сервера нужны
Собственный DNS-сервер не требует мощного железа: он обрабатывает короткие запросы по порту 53 и держит базу записей в оперативной памяти. Сервер BIND версии 9.18 в базовой конфигурации занимает около 50 МБ оперативной памяти, остальные ресурсы уходят на операционную систему и запас на пиковую нагрузку.
Для одного-двух доменов с небольшим трафиком хватает тарифа от 190 ₽ в месяц: 1 vCPU и 1 ГБ оперативной памяти. Если вы обслуживаете несколько доменов, добавляете резервный сервер или планируете DoT и DoH поверх портов 853 и 443, берите тариф от 2 vCPU и 2 ГБ оперативной памяти.
Диск для DNS-сервера почти не расходуется — зоны с записями A, AAAA, CNAME, MX и TXT весят считаные килобайты. Важнее исходящий трафик: при стандартном TTL в 3600 секунд запросы к серверу повторяются нечасто, но при снижении TTL до 300 секунд для критичных сервисов число обращений и объём трафика заметно растут.
| Тариф, ₽/мес | vCPU | ОЗУ | Диск | Для чего подходит |
|---|---|---|---|---|
| 190 | 1 | 1 ГБ | 10 ГБ SSD | Один домен, малый проект |
| 350 | 1 | 2 ГБ | 20 ГБ SSD | Домен с DNSSEC и запасом по ОЗУ |
| 590 | 2 | 2 ГБ | 30 ГБ SSD | Несколько доменов, DoT/DoH |
| 790 | 2 | 4 ГБ | 40 ГБ SSD | Высокая частота запросов, низкий TTL |
| 990 | 4 | 4 ГБ | 60 ГБ SSD | Много доменов и зон, DoT/DoH под нагрузкой |
При выборе тарифа учитывайте три момента:
- Для домена нужно минимум 2 DNS-сервера — основной и резервный, поэтому берите два отдельных тарифа, лучше в разных регионах: два процесса на одном VPS не помогут, если откажет сам сервер.
- Лимиты на исходящий трафик у большинства тарифов от 190 ₽ до 990 ₽ в месяц с запасом покрывают DNS-нагрузку — она в разы меньше, чем у веб-сервера.
- Подбирайте тариф на странице с VPS-тарифами исходя из числа доменов и планов на DoT или DoH.
Ошибки при настройке DNS-сервера
Большинство сбоев DNS-сервера связаны не со сложными техническими причинами, а с невнимательностью на этапе настройки: забытый порт в файрволе или ошибка в одной строке зоны превращают рабочий сервер в недоступный ресурс. Ниже разберём каждую ошибку по отдельности — от конфигов до планирования.
Первая ошибка: закрыт порт 53
Сервер DNS (Domain Name System) отвечает на запросы по порту 53 на UDP и TCP, а его не открывают в файрволе VPS. Путаницу добавляют защищённые протоколы DoT и DoH: они используют порты 853 и 443, и вместо нужного открывают не то.
Как решить: откройте порт 53 для UDP и TCP и проверьте его доступность командой nc -zv IP 53 с другого сервера.
Вторая ошибка: неверный формат зоны
Пропущенная точка в конце имени или ошибка в записи A, AAAA, CNAME, MX или TXT ломает резолвинг всего домена.
Как решить: перепроверьте каждую запись зоны и точки в конце имён перед применением.
Третья ошибка: один DNS-сервер вместо двух
Ошибки планирования заметить сложнее, но последствия дороже. При падении единственного сервера домен перестаёт резолвиться полностью.
Как решить: для домена рекомендуют минимум 2 сервера — основной и резервный.
Четвёртая ошибка: открытая рекурсия для всех IP
Сервер, который отвечает на рекурсивные запросы с любых IP-адресов, используют для DDoS-усиления, и он становится участником чужой атаки.
Как решить: ограничьте доступ к рекурсивным запросам своей сетью.
Пятая ошибка: TTL не снижен перед переносом
Стандартный TTL — 3600 секунд (1 час). Если перенести домен на новый DNS-сервер, не снизив его, часть пользователей ещё долго получает старые ответы.
Как решить: для критичных сервисов уменьшайте TTL до 300 секунд минимум за сутки до переноса.
Шестая ошибка: нехватка ресурсов VPS
Сервер BIND версии 9.18 в базовой конфигурации занимает около 50 МБ оперативной памяти, и на слишком слабом тарифе ему становится тесно.
Как решить: для своего DNS-сервера хватает VPS от 1 vCPU и 1 ГБ ОЗУ.
Открытые порты, резервный сервер, закрытая рекурсия и аккуратная зона закрывают большинство проблем. Если планируете настраивать зону впервые, стоит взять запас по ресурсам с самого начала — выбрать VPS с запасом ресурсов дешевле, чем потом переносить сервер под нагрузкой.
Свой DNS-сервер или публичный: Google, Cloudflare, Яндекс DNS — что выбрать
Публичные DNS-серверы вроде Google (8.8.8.8), Cloudflare (1.1.1.1) и Яндекс DNS (77.88.8.8) отвечают быстро благодаря сети точек присутствия по всему миру и не требуют настройки. Но вы не управляете их инфраструктурой: изменить TTL записи ниже стандартных 3600 секунд для критичного сервиса или добавить нестандартную запись можно только через свою зону, а не через настройки публичного резолвера. Приватность тоже ограничена — запросы обрабатывает чужой сервер, и вы доверяете ему журналы.
Свой DNS-сервер на BIND 9.18 даёт полный контроль: вы сами задаёте TTL, добавляете и меняете записи A, AAAA, CNAME, MX и TXT без ожидания и настраиваете DNSSEC для защиты от подмены ответов. Для домена всё равно нужно указать минимум 2 сервера — основной и резервный, поэтому даже своя инфраструктура опирается на резервирование. Разница с публичными сервисами в том, что резервный сервер тоже под вашим контролем.
Экономически свой DNS-сервер оправдан от 3 доменов и более: один VPS от 1 vCPU и 1 ГБ ОЗУ обслуживает десятки зон одновременно, и стоимость на домен падает. Для одного-двух сайтов проще и надёжнее подключить публичный DNS-сервис.
По каким критериям сравнивать свой и публичный DNS:
- Скорость: у публичных серверов преимущество за счёт географически распределённых узлов
- Контроль над записями: только свой сервер даёт мгновенные правки TTL и зон
- Приватность: свой сервер не передаёт логи запросов третьим лицам
- DNSSEC: настраивается на обоих вариантах, но на своём сервере вы задаёте параметры сами
- Экономика: своя инфраструктура окупается от 3 доменов
Если решили развернуть собственный сервер, для начала хватит бюджетного тарифа — подобрать подходящий VPS можно по параметрам 1 vCPU и 1 ГБ ОЗУ.

Когда свой DNS-сервер не нужен
Если у вас 1–2 домена без сложной инфраструктуры, разворачивать отдельный сервер бессмысленно. Панель регистратора или бесплатный DNS-хостинг Cloudflare справляются с базовыми задачами: 5 основных типов записей — A, AAAA, CNAME, MX и TXT — там настраиваются через веб-интерфейс за пару минут. Отдельная VPS с BIND оправдана, только когда записей и зон становится много и ими неудобно управлять руками.
Свой сервер требует администратора: нужно обновлять софт, следить за портом 53 (UDP и TCP), настраивать резервирование — у домена должно быть минимум 2 DNS-сервера, основной и резервный. Если в команде нет человека, который возьмёт это на себя, лучше отдать DNS сторонней инфраструктуре. Публичные резолверы вроде Cloudflare 1.1.1.1 или Google 8.8.8.8 держат отклик быстрее, чем самостоятельно настроенный сервер на скромной VPS.
Свой DNS-сервер также не нужен, если вас устраивает стандартный TTL записи 3600 секунд и нет задачи снижать его до 300 секунд для быстрого переключения критичных сервисов. Тонкая настройка резолва, кастомные зоны и полный контроль над инфраструктурой — это уже другой уровень задач.
Признаки того, что достаточно публичного DNS:
- Домен один или два, зоны меняются редко
- Нет администратора, готового следить за сервером постоянно
- Хватает стандартных записей без кастомной логики
- Устраивает скорость ответа публичных резолверов
Если задача всё же вырастет до собственной инфраструктуры, для старта хватит заказать VPS с 1 vCPU и 1 ГБ ОЗУ — этого достаточно, чтобы BIND 9.18 работал в базовой конфигурации.
Частые вопросы
Что такое DNS-сервер простыми словами?
Какой DNS-сервер использовать по умолчанию?
Как узнать, какой DNS-сервер использует мой компьютер?
Можно ли сделать свой DNS-сервер на VPS?
Какой порт использует DNS-сервер?
Чем рекурсивный DNS-сервер отличается от авторитативного?
Что такое DNS-сервер провайдера и нужно ли его менять?
Как проверить, что DNS-сервер работает правильно?
Сколько DNS-серверов нужно указывать для сайта?
Безопасно ли использовать публичный DNS-сервер?
Итоговый чек-лист
Используйте этот список как финальную проверку: каждый пункт — короткий вывод из статьи выше. Отметьте для себя, что уже сделано, а что осталось.
- Порт 53 открыт на сервере для UDP и TCP
- Указаны минимум два DNS-сервера — основной и резервный
- TTL записей настроен разумно: 3600 секунд в обычном режиме, 300 секунд перед миграцией
- Зона и записи A, AAAA, MX, TXT проверены командой dig или nslookup
- Рекурсия на авторитативном сервере ограничена, чтобы избежать DDoS-усиления
- Настроено логирование запросов к DNS-серверу
- Проверена версия ПО сервера (например, BIND 9.18) на актуальность
Если какой-то пункт пока не выполнен, вернитесь к нужному разделу статьи — там разобрано, как это сделать и на чём чаще всего ошибаются.
Источники
На сайте есть партнёрские ссылки: если вы оформите заказ по ним, мы получим вознаграждение от провайдера. Это не влияет на цену для вас и на место в рейтинге.