Как установить DNS-сервер
DNS-сервер переводит понятные человеку доменные имена (например, ittelo.ru) в IP-адреса, по которым устройства находят друг друга в сети. Что такое DNS и как он устроен, мы разбирали в отдельной статье - что такое DNS-сервер. Здесь - про практику.
Фразу «установить DNS-сервер» понимают двумя способами, и это разные задачи:
- Сменить DNS-сервер на компьютере или роутере - прописать в настройках сети чужой публичный DNS (скажем, 8.8.8.8 вместо провайдерского). Это пара минут, сервер поднимать не нужно.
- Поднять собственный DNS-сервер - на Windows Server или Linux, чтобы обслуживать свою сеть, локальный домен и внутренние имена.
Начнём с быстрого варианта, потом разберём установку своего сервера.
Как сменить DNS-сервер на компьютере
Если задача - просто указать другой DNS (быстрее провайдерского или чтобы открыть заблокированный на уровне провайдера ресурс), сервер устанавливать не нужно. В Windows 10/11:
- Откройте «Параметры» → «Сеть и Интернет» → «Свойства» активного подключения (Wi-Fi или Ethernet).
- Найдите «Назначение DNS-сервера» → «Изменить» → выберите «Вручную» и включите IPv4.
- Впишите предпочитаемый и альтернативный DNS из таблицы ниже и сохраните.
Популярные публичные DNS:
| Провайдер | Предпочитаемый | Альтернативный |
|---|---|---|
| Google Public DNS | 8.8.8.8 | 8.8.4.4 |
| Cloudflare | 1.1.1.1 | 1.0.0.1 |
| Яндекс | 77.88.8.8 | 77.88.8.1 |
Чтобы DNS сменился сразу для всех устройств в сети, пропишите его не на каждом ПК, а в настройках роутера (раздел DHCP/LAN). После смены проверьте результат командой nslookup ittelo.ru - в ответе должен быть указан выбранный сервер.
Когда нужен собственный DNS-сервер
Свой DNS-сервер имеет смысл поднимать, когда:
- в сети есть домен Active Directory - DNS обязателен для его работы (как устроена связка Active Directory, DNS и DHCP, мы разбирали отдельно);
- нужны внутренние имена для серверов и сервисов (server1.local вместо запоминания IP);
- хочется кеширующий резолвер внутри сети - ускоряет повторные запросы и снижает зависимость от внешних DNS;
- вы держите свои домены и хотите сами управлять их зонами и записями.
Программно выбор сводится к двум вариантам: Microsoft DNS (роль Windows Server, удобна в домене AD) и BIND (стандарт для Linux; есть и более лёгкие dnsmasq, PowerDNS). Дальше - по обоим.
Установка DNS-сервера на Windows Server
DNS на Windows Server ставится как серверная роль:
- Назначьте серверу статический IP - DNS не должен «переезжать» при перезапуске.
- Откройте «Диспетчер серверов» → «Управление» → «Добавить роли и компоненты».
- В мастере дойдите до «Роли сервера», отметьте DNS-сервер, подтвердите добавление компонентов и завершите установку.
- После установки откройте оснастку DNS (Диспетчер серверов → «Средства» → DNS).
Роль готова - дальше создаём зону и добавляем записи.
.jpg)
Создание первичной зоны и записей
- В оснастке DNS разверните сервер, правой кнопкой по «Зоны прямого просмотра» → «Создать зону».
- Выберите тип Основная зона, задайте имя (например,
company.local) и оставьте мастер дописать параметры по умолчанию. - В созданной зоне правой кнопкой → «Создать узел (A)» и впишите имя хоста и его IP. Так же добавляются другие записи.
Типы записей, которые приходится заводить чаще всего:
| Запись | Назначение |
|---|---|
| A | Имя → IPv4-адрес |
| AAAA | Имя → IPv6-адрес |
| CNAME | Псевдоним (алиас) на другое имя |
| MX | Почтовый сервер домена |
| NS | Какой DNS-сервер отвечает за зону |
| PTR | Обратное преобразование IP → имя (зона обратного просмотра) |
| TXT | Произвольный текст: SPF, DKIM, подтверждение владения доменом |
Установка DNS-сервера на Linux (BIND)
На Debian/Ubuntu BIND ставится из репозитория, зоны описываются в текстовых файлах. Минимальный пример для локального домена example.local:
# установка
sudo apt update && sudo apt install bind9
# описание зоны в /etc/bind/named.conf.local
zone "example.local" {
type master;
file "/etc/bind/db.example.local";
};
Файл зоны /etc/bind/db.example.local:
$TTL 604800
@ IN SOA ns1.example.local. admin.example.local. (
2026062401 ; Serial (увеличивайте при каждой правке)
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
@ IN NS ns1.example.local.
ns1 IN A 192.168.1.10
www IN A 192.168.1.20
Проверка и запуск:
sudo named-checkconf # синтаксис конфигурации
sudo named-checkzone example.local /etc/bind/db.example.local
sudo systemctl restart bind9
dig @localhost www.example.local # проверка ответа
Если dig вернул нужный IP в секции ANSWER - сервер отвечает.
Форвардинг и корневые подсказки
DNS-сервер не обязан знать всё сам. Когда запрос выходит за пределы его зон, есть два пути:
- Форвардеры (переадресация) - сервер пересылает «чужие» запросы вышестоящему DNS (провайдера или публичному). Самый частый сценарий для офисной сети: внутренние имена резолвит сам, всё остальное - через форвардер. В Windows форвардеры задаются в свойствах сервера, в BIND - директивой
forwardersвnamed.conf.options. - Корневые подсказки (root hints) - список корневых серверов ICANN, с которых начинается рекурсивный поиск, если форвардеров нет. По умолчанию они уже прописаны и в Windows DNS, и в BIND, трогать их обычно не нужно.
Проверка и типичные ошибки
- Проверяйте резолв командами
nslookup имяилиdig имя- и с самого сервера, и с клиента. - Клиенты не видят сервер - проверьте, что в их сетевых настройках (или в DHCP) указан адрес вашего DNS, а на сервере открыт порт 53 (UDP и TCP) в брандмауэре.
- Зона не обновляется - после правки файла зоны в BIND увеличьте Serial и перезапустите службу, иначе изменения не подхватятся.
Не оставляйте сервер открытым рекурсором. DNS-сервер, который отвечает на рекурсивные запросы из интернета, используют в DDoS-атаках с усилением. Ограничьте рекурсию своей подсетью: allow-recursion в BIND, аналогичная настройка в свойствах Windows DNS.
Короткие ответы на частые вопросы
Чем «установить DNS-сервер» отличается от «подключить»?
«Подключить/сменить» - указать на устройстве адрес чужого DNS (8.8.8.8 и т. п.), сервер не нужен. «Установить/поднять» - развернуть собственный DNS-сервер на Windows Server или Linux.
Какой DNS прописать на компьютере?
Подойдут публичные: Google (8.8.8.8), Cloudflare (1.1.1.1), Яндекс (77.88.8.8). Для устройств в домене - адрес внутреннего DNS-сервера, иначе доменные имена не разрешатся.
BIND или Microsoft DNS - что выбрать?
В сети с Active Directory - Microsoft DNS (роль Windows Server), он тесно интегрирован с доменом. На Linux-инфраструктуре - BIND; для простого кеширующего резолвера хватит и dnsmasq.
Как проверить, что DNS-сервер работает?
Командой nslookup имя сервер или dig @адрес_сервера имя. Если в ответе есть корректный IP - сервер отвечает.
Нужен ли свой DNS-сервер небольшому офису?
Если нет домена AD и внутренних сервисов - достаточно DNS роутера или публичного. Свой сервер оправдан с появлением домена, внутренних имён или потребности в кешировании и собственных зонах.
Поднимаете DNS, домен или контроллер домена в своей сети?
Инженеры ITTELO подберут сервер под роль контроллера домена с DNS и DHCP, соберут и протестируют конфигурацию под вашу сеть перед отгрузкой, с гарантией. На рынке серверов 11+ лет.
Серверы под контроллер домена · +7 (800) 551-80-12 · info@ittelo.ru


