LINUX.ORG.RU
решено ФорумAdmin

bind9 - возврат Authority Section

 , , ,


0

2

Лор, помоги плз, никогда не обращал внимания, а тут заметил, и не въеду никак : Есть bind9 (BIND 9.9.5-9+deb8u4-Debian (Extended Support Version)), с о-о-очень тривиальным конфигом :

$cat /etc/bind/named.local

include "/etc/bind/rndc.key";
include "/etc/bind/bind.keys";


controls {
	inet 127.0.0.1 port 953
		allow { 127.0.0.1; } keys { "rndc-key"; };
};
options {
	directory "/var/bind";
	dnssec-validation auto;
	dnssec-lookaside auto;
	auth-nxdomain no;
	allow-transfer { 172.16.0.54; };
	forward first; 
	forwarders { ГУГЛДНС; };
//	minimal-responses yes;
        listen-on  { 172.16.0.53; 127.0.0.1; };
};
#
# Here comes the ZONE section
#
zone "example.net." {
	type master;
	file "example.net.zone";
	};
zone "0.16.172.in-addr.arpa." {
	type master;
	file "172.16.0.zone";
	};
zone "." {
	type hint;
	file "db.root";
	};

Все вроде ничего, и за отвественные зоны отвечает, и перенаправляет запросы на гуглоднс, и даже разрешает имена в ойпи адреса. Вот что меня бесит, при запросе на клиенте вот такого :

$dig someshit.com 
AUTHORITY SECTION в ответе имеет вот такой вид :
;; ANSWER SECTION:
someshit.com.		21599	IN	A	46.19.36.68

;; AUTHORITY SECTION:
.			6081	IN	NS	k.root-servers.net.
.			6081	IN	NS	b.root-servers.net.
.			6081	IN	NS	a.root-servers.net.
.			6081	IN	NS	i.root-servers.net.
.			6081	IN	NS	m.root-servers.net.
                         ...
Внимание, вопрос - что за нах ?! Почему возвращаются NS для "." ??? Гугление не помогло. При отключении в конфиге форвардинга bind есессна будет опрашивать корневые сервера, при этом возврат AUTHORITY SECTION будет корректен, как например
 ;; ANSWER SECTION:
yahoo.com.		1800	IN	A	98.139.183.24

;; AUTHORITY SECTION:
yahoo.com.		172799	IN	NS	ns1.yahoo.com.

ЧЯДНТ ? Понимаю что можно забить, раскоментив minimal-responses, но хотелось бы понять, что за мэджик происходит.


Очевидно, что проблема в том, что гуглоднс не возвращает AUTHORITY SECTION и твой бинд вместо неё подсовывает рутов.

# dig ya.ru       

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> ya.ru
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33411
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;ya.ru.                         IN      A

;; ANSWER SECTION:
ya.ru.                  3411    IN      A       93.158.134.3
ya.ru.                  3411    IN      A       213.180.193.3
ya.ru.                  3411    IN      A       213.180.204.3

;; AUTHORITY SECTION:
ya.ru.                  1415    IN      NS      ns2.yandex.ru.
ya.ru.                  1415    IN      NS      ns1.yandex.ru.

;; Query time: 7 msec
;; SERVER: 10.1.1.11#53(10.1.1.11)
;; WHEN: Wed Jan 20 14:30:58 2016
;; MSG SIZE  rcvd: 114
# dig ya.ru @8.8.8.8

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> ya.ru @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35925
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;ya.ru.                         IN      A

;; ANSWER SECTION:
ya.ru.                  5614    IN      A       213.180.193.3
ya.ru.                  5614    IN      A       213.180.204.3
ya.ru.                  5614    IN      A       93.158.134.3

;; Query time: 3 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Wed Jan 20 14:31:25 2016
;; MSG SIZE  rcvd: 71
blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

А, ноуср

не, не все так просто оказалось ( или я , тугой, по-прежнему не понимэ) . из-за красных глаз не увидел сразу: попробовал указать в качестве форвардинга те публичные днс-сервера, которые возвращают этот auth.section, вместо гугловских - 107.150.40.234 например( не помню чей). И та же петрушка, при dns-запросе от клиентов к bind'у возвращается auth.section с указанием корневых серверов. tcpdump на выхлопе имеет следующее :

17:24:33.666752 IP 172.16.0.15.46861 > 172.16.0.53.53: 21492+ [1au] A? 1tv.ru. (35)
17:24:33.667575 IP 172.16.0.53.52287 > 107.150.40.234.53: 44928+% [1au] NS? . (28) 
вот нафига спрашивается ему узнавать про NS для "." ????

masq ()
Ответ на: А, ноуср от masq

Сбрось кеш на бинде, рестартани его и посмотри что изменится.

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

Угу, сбрасывал, рестартовал (забыл написать выше) - без изменений. Вообще хз о__0

masq ()
Ответ на: комментарий от blind_oracle

Тенкс за участие. Решение нашлось от таке , если что : dnssec-lookaside no;

masq ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.