在我的 2 节点 PowerDNS 集群的主节点上,我在我的测试环境中找到所有要部署到生产的细节,我在日志中收到以下错误:
Request to queue notification for domain 'domain.example' was processed, but no valid nameservers or ALSO-NOTIFYs found. Not notifying!
这与该域上的 NS / A 记录有关,只是我现在找不到我必须做的事情,似乎我的配置是正确的。
主配置:
allow-axfr-ips=10.10.30.32
master=yes
slave=no
从站配置:
allow-axfr-ips=10.10.30.31
master=no
slave=yes
在从节点上,我还在数据库中添加了以下记录:
MariaDB [powerdns]> select * from supermasters;
+-------------+--------------------+---------+
| ip | nameserver | account |
+-------------+--------------------+---------+
| 10.10.30.31 | ns2.domain.example | admin |
+-------------+--------------------+---------+
正如我在文档中所读到的,我个人认为这与数据库有关:
• 名称服务器必须正确设置为NS 域记录,即为每个从属定义一个NS 和A 记录。
• 必须在域表中基于每个域配置主/从状态。即类型列必须分别是 MASTER 或 SLAVE,并且从站需要在域表的主列中以逗号分隔的主节点 IP 地址列表。
但我就是不明白它想说什么。有人有想法吗?
编辑:
在我的从服务器上,域表中有一条错误记录,这导致从服务器将请求发送到错误的服务器,如下所示:
Apr 8 08:56:03 hfr-nl-dns02 pdns_server[2582]: While checking domain freshness: Query to '10.10.30.32' for SOA of 'ns2.domain.example.' did not return a SOA
Apr 8 09:02:12 hfr-nl-dns02 pdns_server[2582]: message repeated 3 times: [ While checking domain freshness: Query to '10.10.30.32' for SOA of 'ns2.domain.example.' did not return a SOA]
将 ip 更改为 .31 后,出现以下错误:
掌握:
Apr 8 10:07:45 hfr-nl-dns01 pdns_server[11803]: AXFR of domain 'ns2.domain.example' initiated by 10.10.30.32
Apr 8 10:07:45 hfr-nl-dns01 pdns_server[11803]: AXFR of domain 'ns2.domain.example' allowed: client IP 10.10.30.32 is in allow-axfr-ips
Apr 8 10:07:45 hfr-nl-dns01 pdns_server[11803]: AXFR of domain 'ns2.domain.example' failed: not authoritative
奴隶:
Apr 8 10:07:45 hfr-nl-dns02 pdns_server[2737]: Initiating transfer of 'ns2.domain.example' from remote '10.10.30.31'
Apr 8 10:07:45 hfr-nl-dns02 pdns_server[2737]: Unable to AXFR zone 'ns2.domain.example' from remote '10.10.30.31' (resolver): AXFR chunk error: Server Not Authoritative for zone / Not Authorized
编辑 2:主数据库记录,在这里看到的 IP,也用 /etc/hosts 文件中定义的名称服务器的主机名进行了尝试。
+----+-----------+--------------------+------+----------------------------------------------------------------------------------+------+------+----------+-----------+------+
| id | domain_id | name | type | content | ttl | prio | disabled | ordername | auth |
+----+-----------+--------------------+------+----------------------------------------------------------------------------------+------+------+----------+-----------+------+
| 14 | 5 | domain.example | NS | 10.10.30.31 | 3600 | 0 | 0 | NULL | 1 |
| 15 | 5 | domain.example | NS | 10.10.30.32 | 3600 | 0 | 0 | NULL | 1 |
我设法为任何想知道的人弄清楚这部分:
• 名称服务器必须正确设置为NS 域记录,即为每个从属定义一个NS 和A 记录。
这是指应该托管域服务器的域名;ns1.example.com / ns2.example.com。使用托管服务器的公共 IP 添加 A 记录,以及指向该 A 记录的 NS 记录。