# Пример настройки конфигурационного файла сервера Dnsmasq
# основан на данных из
# https://mnorin.com/nastrojka-dnsmasq-dhcp-dns.html
# https://linux-admins.ru/article.php?id_article=62&article_title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0%20%D0%B8%20%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0%20Dnsmasq

# Конфигурационный файл расположен по адресу:
# /etc/dnsmasq.conf

# DHCP Настройки
# Указываем пользователя и группу с правами которых будет запущен демон
#user=nobody
#group=nobody

# Указываем интерфейсы на которых будут приниматься запросы
interface=eth0
#interface=eth1

# Или интерфейсы на которых не будут приниматься запросы
#except-interface="интерфейс"

# Или ip-адреса
#listen-address= "ip-адрес"

#Если вы хотите что бы интерфейс принимал только DNS запросы
#no-dhcp-interface= "интерфейс"

# Указываем диапозон адресов и время аренды
dhcp-range=192.168.5.101,192.168.5.254,24h

# Для статической привязки адресов указываем MAC-адрес хоста и
#адрес, который будем ему выдавать
#dhcp-host=11:22:33:44:55:66,192.168.0.51

# Если записей статической привязки будет много, удобнее выделить их в отдельный файл
# все файлы в директории /etc/dnsmasq.d/ будут считываться как дополнииельная конфигурация
# например, можно создать файл /etc/dnsmasq.d/static.hosts следующего содержания
#dhcp-host=11:22:33:44:56:77,mail-server,192.168.0.55
#dhcp-host=22:11:55:44:88:81,cloud,192.168.0.56
#и так далее

# или ip-адрес и имя хоста
#dhcp-host=11:22:33:44:56:77,mail-server,192.168.0.55,60m

# Можем выдать один ip-адрес одному из хостов кто первый успеет
#dhcp-host=12:21:33:43:88:11,22:11:55:44:88:81,192.168.0.59

# Указание опций DHCP
# option 1 - маска сети
dhcp-option=1,255.255.255.0

# option 3 - Шлюз по умолчанию
dhcp-option=3,192.168.5.1

# option 42 - NTP сервер
dhcp-option=42,192.168.5.1

# DNS сервер
dhcp-option=6,192.168.5.1

# Лимит на аренду ip-адреса в секундах (по-умолчанию 150)
dhcp-lease-max=3600

# Указание файла для хранения информации об аренде адресов
dhcp-leasefile=/var/lib/dnsmasq/dnsmasq.leases

# Указание, что DHCP сервер работает в режиме authritative
# Указываем что это единственный DHCP сервер.
dhcp-authoritative

####################################################################
# DNS Настройки
# Указание интерфейсов и ip-адрес мы рассмотрели в секции DHCP

# Указываем доменое имя
domain=da2001.ru

# можно указать отдельное доменое имя, для отдельной сети
#domain=wifi.test.un,192.168.100.0/24

#Или для определенного диапозона адресов
#domain=range.test.un,192.168.100.100,192.168.100.200

# Указание серверов для форвардинга запросов
server=8.8.8.8
server=8.8.4.4

# Указание адресов доменных серверов для перенаправления запроса к определенным зонам
#server=/office.un/192.168.50.10

# Аналогично можно указать для обратной зоны
#server=/50.168.192.in-addr.arpa/192.168.50.10

# По умолчанию dnsmasq использует файл /etc/hosts для сопоставления имен
# хостов IP-адресам, но это тоже можно изменить. Если вы не хотите
# использовать /etc/hosts, вы можете указать это при помощи опции
#no-hosts

# Если вы хотите использовать для этих целей другой файл
#addn-hosts= "путь к файлу"

# Записи зоны
# Запись типа А
address=/dns.da2001.ru/192.168.5.1
#address=/ldap.test.un/192.168.0.210

# Запись CNAME
#cname=mail-server,mail # алиасом для mail-server будет имя mail

# Запись типа SRV
#srv-host=_ldap._tcp.test.un,ldap.test.un,389

# Алиасы или подмена ip-адресов
# Кроме задания собственных записей DNS можно изменять информацию,
# получаемую от внешних DNS-серверов путем подмены полученного IP-адреса.
# Для замены одного адреса
#alias=10.10.1.1,172.20.1.1 # если при запросе от внешнего DNS сервера мы получили адрес
						   #10.10.1.1 то мы подменим его на 172.20.1.1

# Или можно заменять целую сеть
#alias=10.10.1.0,172.20.1.0,255,255,255,0

# Dnsmasq читает файл /etc/resolv.conf для определения перечня DNS серверов
# для форвардинга, если вы хотите поменять это и указать другой файл для этих целей
#resolv-file= "путь к файлу"

# Для того, чтобы обращения к DNS шли именно на dnsmasq на том же сервере, где он сам работает,
# необходимо указать первой записью в /etc/resolv.conf следующую строку:
#nameserver 127.0.0.1

# Сам dnsmasq будет игнорировать эту запись, поскольку предполагает, что эта запись обозначает его собственный сервис,
# он начинает использование записей с указанием серверов имен со следующей записи, в которой указывается уже внешний DNS-сервер.
# Во многих системах /etc/resolv.conf генерируется автоматически при получении адреса от провайдера по DHCP,
# оэтому если просто записать эту строчку руками, при переподключении основного сетевого интерфейса
# файл будет перезаписан и эта строка исчезнет.
# Этого можно избежать, если раскомментировать в файле /etc/dhcp/dhclient.conf
# (или /etc/dhcp3/dhclient.conf, в зависимости от системы) строчку
# prepend domain-name-servers 127.0.0.1;

# Тогда даже при получении списка DNS-серверов по DHCP первой строчкой в /etc/resolv.conf будет строчка «nameserver 127.0.0.1.
