我有两个 DNS 服务器(1dns、2dns),当第一个 DNS 无法解析查询时,它必须查询第二个 DNS,但重要的是查询 1dns-2dns 的源 IP 与第一个 DNS IP 相同。
答案1
我最近刚刚为内部 DNS 解决方案完成了此操作。
它的工作原理如下。我们有 2 台 DNS 服务器。它们都运行 PowerDNS 和 PowerDNS-Recursor。它们使用 Postgres-9.1 作为后端,并且在“主”和“备用”之间发生本机 Postgresql 热备用复制。
每台服务器上的 PowerDNS 都会查看本地主机以查找其数据库连接。
PowerDNS 的递归程序被告知查看 Google 的公共 DNS 以查找递归中的下一跳。
还有一个复制检查脚本,它更新表中的时间戳,然后在备用服务器上检查它(但这只是为了我的 OCD 监控风格)。
关于其工作原理的所有文档实际上都列在PDNS 网站。我不会逐字逐句地复制我的配置给你,因为你需要自己学习如何做到这一点。
答案2
基本上有两种方法。要么编写脚本以便它们将更改同时发送到主服务器和从服务器数据库,要么使用主/从配置结合 pdns_control 来发送/检索特定区域的更新。
还有更详细的文档有关此信息可在 PowerDNS 网站上找到。