мета-данные страницы
  •  

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
bind_guide [2026/06/16 22:18] – [add_location_alt 3. Регистрация локальных зон] kim1rbind_guide [2026/06/16 23:36] (текущий) – [Развертывание локального сервера DNS (BIND 9)] kim1r
Строка 6: Строка 6:
  
 **1. Установка пакетов** **1. Установка пакетов**
 +
 Установите сам DNS-сервер и утилиты для диагностики сети (например, dig или nslookup): Установите сам DNS-сервер и утилиты для диагностики сети (например, dig или nslookup):
  
Строка 19: Строка 20:
 no-resolv no-resolv
  
-# Вышестоящий (upstream) DNS-сервер для внешних запросов (например, Яндекс) +# Вышестоящий (upstream) DNS-сервер для внешних запросов  
-server=77.88.8.8+server=<любой по желанию ДНС>
  
 # Слушать запросы на всех доступных сетевых интерфейсах # Слушать запросы на всех доступных сетевых интерфейсах
Строка 32: Строка 33:
  
 **3. Отключение конфликтов с системным resolvconf** **3. Отключение конфликтов с системным resolvconf**
 +
 Чтобы системный менеджер сетевых настроек не затирал конфигурацию dnsmasq, очистите его настройки и удалите дефолтный хук: Чтобы системный менеджер сетевых настроек не затирал конфигурацию dnsmasq, очистите его настройки и удалите дефолтный хук:
  
Строка 48: Строка 50:
 </code> </code>
  
-===== list_alt 4. Заполнение записей прямой зоны ===== +**4. РАЗВЕТВЛЕНИЕ: Планируется ли Samba Active Directory DC?** 
- +На этом шаге вам нужно определиться, будет ли в вашей сети развернута Samba DC (Контроллер домена). От этого зависит, как dnsmasq будет обрабатывать локальные имена. Выбирай один из двух вариантов ниже:
-Откройте созданный файл прямой зоны (''%%vim zone/ваш_домен%%''и приведите его к следующему виду:+
  
 +ВАРИАНТ 1: Samba DC не планируется(Простой DNS на базе локального файла)
 +Если контроллера домена не будет, dnsmasq сам создаст A и PTR записи на основе системного файла /etc/hosts.
 +Открой /etc/hosts и жестко пропиши туда все машины сети:
 <code> <code>
-$TTL    1D +<IP_роутера_1>       <имя_роутера_1>.<ваш_домен
-; Запись SOA содержит имя главного DNS сервера и email администратора (с точкой вместо @) +<IP_сервера_1>       <имя_сервера_1>.<ваш_домен> 
-      IN      SOA     имя_днс_сервера.ваш_домен. root.ваш_домен. ( +<IP_клиента_1>       <имя_клиента_1>.<ваш_домен>
-        2026010100      ; Serial (рекомендуется формат ГГГГММДДXX) +
-        12H             ; Refresh +
-        1H              ; Retry +
-        1W              ; Expire +
-        1H )            ; ncache +
- +
-; Указание Nameserver (NS) +
-        IN      NS      имя_днс_сервера.ваш_домен. +
- +
-; A-запись для самого домена +
-      IN      A       IP_адрес_днс_сервера +
- +
-; Обязательная запись для самого DNS-сервера +
-имя_днс_сервера IN      A       IP_адреснс_сервера +
- +
-; ПРИМЕР: Добавление произвольных узлов инфраструктуры +
-web-server      IN      A       192.168.1.50 +
-db-server       IN      A       192.168.1.51+
 </code> </code>
  
- +ВАРИАНТ 2: Samba AD DC планируется (Форвардинг зоны на контроллер домена) 
- +Если в сети разворачивается контроллер домена, `dnsmasq` не должен сам управлять этой зоной через `/etc/hosts`, так как для работы Active Directory необходимы динамические записи и SRV-службы, создаваемые Самбой. Настраивается перенаправление запросов.
- +
-===== swap_horiz 5. Заполнение записей обратной зоны ===== +
- +
-Аналогично заполним обратную зону (''%%vim zone/ваш_домен.rev%%''). Здесь вместо A-записей используются PTR-записи (Pointer), которые указывают только последний октет IP-адреса: +
 <code> <code>
-$TTL    1D +Откройте основной конфиг `/etc/dnsmasq.conf` и укажите перенаправление локальной зоны и обратной зоны на IP-адрес сервера, где поднимается Samba DC: 
-@       IN      SOA     имя_днс_сервера.ваш_домен. root.ваш_домен. ( +   dnsmasq.conf 
-        2026010100      ; Serial +Перенаправлять запросы к доменной зоне на контроллер домена 
-        12H             ; Refresh +   server=/<ваш_локальный_домен>/<IP_сервера_Samba_DC>
-        1H              ; Retry +
-        1W              ; Expire +
-        1H )            ; ncache+
  
-        IN      NS      имя_днс_сервера.ваш_домен+Перенаправлять запросы обратной зоны (PTRдля вашей подсети (пример для 192.168.0.0/16) 
- +   server=/<обратная_зона_сети.in-addr.arpa>/<IP_сервера_Samba_DC>
-; Запись PTR для самого DNS-сервера (левая часть — последний октет IP) +
-последний_октет_сервера IN      PTR     имя_днс_сервера.ваш_домен+
- +
-; ПРИМЕР: Добавление произвольных узлов инфраструктуры +
-50                      IN      PTR     web-serverаш_домен. +
-51                      IN      PTR     db-server.ваш_домен.+
 </code> </code>
  
- +Применение настроек и запуск 
- +Включите службу в автозагрузку и перезапустите её для применения всех изменений:
- +
-===== play_circle 6. Права доступа и запуск ===== +
- +
-Вернитесь в корневую директорию пользователя. Необходимо выдать сервисному аккаунту ''%%named%%'' права на чтение файлов конфигурации, которые мы только что создали: +
 <code> <code>
-cd ~ +systemctl enable dnsmasq 
-chown -R :named /var/lib/bind/+systemctl restart dnsmasq
-chmod -R 777 /var/lib/bind/*+
 </code> </code>
  
- +Настройка клиентов и проверка 
-warning +1. На всех остальных машинах инфраструктуры (клиенты, другие серверы, роутеры) измените IP-адрес DNS-сервера со внешнего на локальный IP-адрес только что настроенного сервера `dnsmasq``<IP_вашего_DNS_сервера>`. 
-**Примечание безопасности:** Использование прав ''%%777%%'' является небезопасным для продакшен-систем, так как разрешает всем модифицировать файлы зон. В рамках данной конфигурации это используется исключительно для устранения проблем с доступом на этапе обучения/отладки. +2. Перезагрузите машины для гарантированного обновления сетевых параметров: 
- +  <code> 
- +   reboot 
-Включаем автозапуск и стартуем сервис BIND: +  </code> 
- +5. После перезагрузки проверьте корректность разрешения имен (прямой и обратный просмотр) с помощью утилит `host`, `dig` или `nslookup`: 
-<code> +   <code> 
-systemctl enable --now bind +   host <имя_сервера>.<ваш_домен
-</code> +   host <IP_адрес_любой_машины> 
- +  </code>
- +
- +
- +
- +
-===== check_circle 7. Тестирование и клиенты ===== +
- +
-Сначала убедимся, что DNS отвечает локально на самом сервере: +
- +
-<code> +
-nslookup узел_1 127.0.0.1 +
-</code> +
- +
- +
-Если всё успешно, переходите к настройке клиентских машин+
- +
-  * На всех узлах сети замените внешний DNS-сервер (например, ''%%8.8.8.8%%''на IP-адрес вашего нового локального DNS-сервера (''%%IP_адрес_днс_сервера%%''). +
-  Перезагрузите клиентские машины или перезапустите сетевые интерфейсы, чтобы сбросить старый DNS-кэш. +
- +
-Проверьте связность по доменному имени с любой клиентской машины+
- +
-<code+
-ping узел_1 +
-</code> +
- +