LINUX.ORG.RU

История изменений

Исправление Shprot, (текущая версия) :

Во-первых, если подсетей больше 3-х, для удобства я бы рекомендовал вынести их в отдельный файл, например /etc/bind/named.conf.acl и подключить его в /etc/bind/named.conf

На примере как у меня

cat /etc/bind/named.conf.acl
acl local_net {
	172.16.3.0/27;
	172.16.3.32/27;
	172.16.3.64/27;
	172.16.3.96/27;
	172.16.222.248/29;
};

Подключенный файл с подсетками

cat /etc/bind/named.conf

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.acl";
include "/etc/bind/named.conf.default-zones";
include "/var/lib/samba/bind-dns/named.conf";

Ну и тулишь теперь local_net в опшены

cat /etc/bind/named.conf.options
options {
	auth-nxdomain yes;
	directory "/var/cache/bind"; #Папка с кешем bind
	notify no;
	empty-zones-enable no;
	tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";
	minimal-responses yes;

	listen-on port 53 {
		172.16.222.254;
	};

	# IP адреса и подсети от которых будут обрабатываться запросы
	allow-query {
		127.0.0.1;
		local_net;
	};

	# IP адреса и подсети от которых будут обрабатываться рекурсивные запросы
	# (Зон не обслуживаемых этим DNS сервером)
	allow-recursion {
		127.0.0.1;
		local_net;
	};

	# Перенаправлять запросы, на которые нет информации в локальной зоне
	# на следующие сервера:
	forwarders {
		172.16.3.1; #IP адрес DNS форвардера
	};

У меня форвард в опшенах один, так как он на пограничном маршрутизаторе и на нём уже форвардов больше, а так я бы рекомендовал не только яндекс в твой форвард прописать, но и ещё пару публичных DNS добавить.

Во-вторых почему у тебя в /var/lib/samba/bind-dns/named.conf все версии бинда включены?
named -v какая у тебя версия…? 9.18 вижу. Вот только её и оставь.

Мой пример (закомментировано всё, кроме 9.18)

named -v
BIND 9.18.28-1~deb12u2-Debian (Extended Support Version) <id:>
cat /var/lib/samba/bind-dns/named.conf
dlz "AD DNS Zone" {
    # For BIND 9.8.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9.so";

    # For BIND 9.9.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_9.so";

    # For BIND 9.10.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_10.so";

    # For BIND 9.11.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_11.so";

    # For BIND 9.12.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_12.so";

    # For BIND 9.14.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_14.so";

    # For BIND 9.16.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_16.so";
    #
    # For BIND 9.18.x
     database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_18.so";
};

Ну и вишенка на торте. Я с подобной проблемой как-то тоже бился пару дней, пока не стал читать про каждый параметр в опшенах. В общем измени в /etc/bind/named.conf.options параметр dnssec-validation с no на yes и это должно осчастливить тебя и твой контроллер…=)

Не помню как точно, но вроде как резолверу надо указать проверять корректность ответов из подписанных зон. В общем я давно на решение наткнулся, применил и забыл.

Исходная версия Shprot, :

Во-первых, если подсетей больше 3-х, для удобства я бы рекомендовал вынести их в отдельный файл, например /etc/bind/named.conf.acl и подключить его в /etc/bind/named.conf

На примере как у меня

cat /etc/bind/named.conf.acl
acl local_net {
	172.16.3.0/27;
	172.16.3.32/27;
	172.16.3.64/27;
	172.16.3.96/27;
	172.16.222.248/29;
};

Подключенный файл с подсетками

cat /etc/bind/named.conf.

include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.acl";
include "/etc/bind/named.conf.default-zones";
include "/var/lib/samba/bind-dns/named.conf";

Ну и тулишь теперь local_net в опшены

cat /etc/bind/named.conf.options
options {
	auth-nxdomain yes;
	directory "/var/cache/bind"; #Папка с кешем bind
	notify no;
	empty-zones-enable no;
	tkey-gssapi-keytab "/var/lib/samba/private/dns.keytab";
	minimal-responses yes;

	listen-on port 53 {
		172.16.222.254;
	};

	# IP адреса и подсети от которых будут обрабатываться запросы
	allow-query {
		127.0.0.1;
		local_net;
	};

	# IP адреса и подсети от которых будут обрабатываться рекурсивные запросы
	# (Зон не обслуживаемых этим DNS сервером)
	allow-recursion {
		127.0.0.1;
		local_net;
	};

	# Перенаправлять запросы, на которые нет информации в локальной зоне
	# на следующие сервера:
	forwarders {
		172.16.3.1; #IP адрес DNS форвардера
	};

У меня форвард в опшенах один, так как он на пограничном маршрутизаторе и на нём уже форвардов больше, а так я бы рекомендовал не только яндекс в твой форвард прописать, но и ещё пару публичных DNS добавить.

Во-вторых почему у тебя в /var/lib/samba/bind-dns/named.conf все версии бинда включены?
named -v какая у тебя версия…? 9.18 вижу. Вот только её и оставь.

Мой пример (закомментировано всё, кроме 9.18)

named -v
BIND 9.18.28-1~deb12u2-Debian (Extended Support Version) <id:>
cat /var/lib/samba/bind-dns/named.conf
dlz "AD DNS Zone" {
    # For BIND 9.8.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9.so";

    # For BIND 9.9.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_9.so";

    # For BIND 9.10.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_10.so";

    # For BIND 9.11.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_11.so";

    # For BIND 9.12.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_12.so";

    # For BIND 9.14.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_14.so";

    # For BIND 9.16.x
    # database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_16.so";
    #
    # For BIND 9.18.x
     database "dlopen /usr/lib/x86_64-linux-gnu/samba/bind9/dlz_bind9_18.so";
};

Ну и вишенка на торте. Я с подобной проблемой как-то тоже бился пару дней, пока не стал читать про каждый параметр в опшенах. В общем измени в /etc/bind/named.conf.options параметр dnssec-validation с no на yes и это должно осчастливить тебя и твой контроллер…=)

Не помню как точно, но вроде как резолверу надо указать проверять корректность ответов из подписанных зон. В общем я давно на решение наткнулся, применил и забыл.