У меня есть PowerDNS Authoritative & Recursor, работающий на сервере в моей среде. Когда я использую этот узел в качестве DNS-сервера, он без проблем отвечает на запросы A-записи. Однако когда я пытаюсь выполнить обратный поиск, это не удается. Есть идеи, почему?
Вот это снимок экрана некоторых DNS-запросов, демонстрирующих такое поведение.
Вот это снимок экрана, изображающий конфигурацию записи A для Mars
в зоне прямого просмотра.
Вот это снимок экрана с автоматически созданной записью PTR для Mars
в зоне обратного просмотра.
Вот это pdns.conf
файл.
Вот это recursor.conf
файл.
РЕДАКТИРОВАТЬ: Я должен упомянуть, что Pi-Hole находится впереди и ретранслирует запросы к PowerDNS. Однако, если я проинструктирую dig выполнять поиск непосредственно в PowerDNS, результаты будут такими же:
Вперед:
$> dig mars.sol.milkyway @192.168.1.110
; <<>> DiG 9.10.6 <<>> mars.sol.milkyway @192.168.1.110
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19842
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;mars.sol.milkyway. IN A
;; ANSWER SECTION:
mars.sol.milkyway. 2812 IN A 192.168.30.10
;; Query time: 3 msec
;; SERVER: 192.168.1.110#53(192.168.1.110)
;; WHEN: Sun Oct 06 18:35:50 PDT 2019
;; MSG SIZE rcvd: 62
Обеспечить регресс:
$> dig -x 192.168.30.10 @192.168.1.110
; <<>> DiG 9.10.6 <<>> -x 192.168.30.10 @192.168.1.110
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 32029
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;10.30.168.192.in-addr.arpa. IN PTR
;; AUTHORITY SECTION:
168.192.in-addr.arpa. 1687 IN SOA localhost. root. 1 604800 86400 2419200 604800
;; Query time: 4 msec
;; SERVER: 192.168.1.110#53(192.168.1.110)
;; WHEN: Sun Oct 06 18:31:53 PDT 2019
;; MSG SIZE rcvd: 104
Оказывается, необходимо добавить forward-zones
запись для каждой зоны обратного просмотра в /etc/powerdns/recursor.conf
файл.
Например, вместо
forward-zones=sol.milkyway=127.0.0.1:54
Моя конфигурация теперь выглядит так:
forward-zones=sol.milkyway=127.0.0.1:54, 1.168.192.in-addr.arpa=127.0.0.1:54, 10.168.192.in-addr.arpa=127.0.0.1:54, 20.168.192.in-addr.arpa=127.0.0.1:54, 30.168.192.in-addr.arpa=127.0.0.1:54, 40.168.192.in-addr.arpa=127.0.0.1:54, 50.168.192.in-addr.arpa=127.0.0.1:54, 60.168.192.in-addr.arpa=127.0.0.1:54, 70.168.192.in-addr.arpa=127.0.0.1:54
РЕДАКТИРОВАТЬ: На самом деле, как оказалось, необязательно указывать каждую отдельную зону обратного просмотра. Вместо этого вы можете просто включить корень. Например:
forward-zones=sol.milkyway=127.0.0.1:54, 168.192.in-addr.arpa=127.0.0.1:54
РЕДАКТИРОВАТЬ2: Ах, теперь я понимаю язык. forward-zone означает «ЭТИ Зоны вперед», а не «Зоны прямого просмотра».