У меня есть три DNS-сервера: x.y.z.10, настроенный как супермастер, x.y.z.11 и x.y.z.12, которые оба настроены как суперведомые. На всех трех машинах:
- dnsdist работает на порту 53 для (еще не сделано) высокой доступности
- pdns работает на порту 1054 как полномочный сервер
- pdns-recursor работает на порту 1055 как рекурсивный преобразователь
Несмотря на следование совету dnsdist (https://dnsdist.org/advanced/axfr.html), а sudo pdns_control уведомить xxx.de
на мастере выдает ту же ошибку на всех слейвах: pdns_server[]: получено NOTIFY для xxx.de от 127.0.0.1:39562, который не является мастером (отказано)
.
dnsdist
настроен на передачу запросов SOA, AXFR и IXFR, исходящих из сети, в pdns, а все остальное — в pdns-recursor:
addAction(AndRule({OrRule({QTypeRule(DNSQType.AXFR), QTypeRule(DNSQType.IXFR)}), NotRule(makeRule("x.y.z.0/27"))}), RCodeAction(DNSRCode.REFUSED))
addAction(AndRule({OpcodeRule(DNSOpcode.Notify),NotRule(makeRule("x.y.z.0/24"))}), RCodeAction(DNSRCode.REFUSED))
addAction(OrRule({QTypeRule(DNSQType.SOA), QTypeRule(DNSQType.AXFR), QTypeRule(DNSQType.IXFR)}), PoolAction("основной"))
addAction(AllRule(), PoolAction("рекурсор"))
pdns
настроен как (супер)ведомый и принимает AXFR/NOTIFY только от локального хоста:
мастер = нет
раб = да
суперраб = да
разрешить-axfr-ips = 127.0.0.1
отключить-axfr = нет
разрешить-уведомить-от = 127.0.0.1
Что/где я напутал?