微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将 DNS 查询从 Linux 转发到另外两个 Windows DNS 服务器

如何解决将 DNS 查询从 Linux 转发到另外两个 Windows DNS 服务器

我已经设置了一个 linux 服务器并配置了 dns 命名服务 (LINDNS1)。这将作为所有内部客户端的主要 DNS。它唯一要做的就是将所有查询转发到现有的 Windows DNS 服务器(WINDNS1 和 WINDNS2)。

因此,当客户端查询到 LINDNS1 时,如果找不到记录,它会将查询转发到 WINDNS1,它将查询转发到 WINDNS2。如果记录在 WINDNS2 中,它将回答查询

我已经在 dns 配置文件上设置了转发器设置。但它不起作用。

named.conf #not much change here except for the standard settings.
         listen-on port 53 { 127.0.0.1; LINDNS1 IP address; };
         allow-query { localhost; any; };  #I just put 'any' for Now while it's in a testing phase.
         allow-query-cache { localhost; any; };
         recursion yes;

转发配置在named.rfcxxxx.zone文件中设置。我也包括了反向区域。

zone "test.net" IN {
      type forward;
      forwarders { 1.1.1.1; 2.2.2.2; };
};

客户端发出 nslookup 没有任何问题,LINDNS1 可以响应并可以查询 WINDNS1 (1.1.1.1) 中的记录。但是查询WINDNS2(2.2.2.2)中的记录时,返回找不到主机。

解决方法

因此,当客户端查询到 LINDNS1 时,如果找不到记录,它会将查询转发到 WINDNS1,它将查询转发到 WINDNS2。如果记录在 WINDNS2 中,它将回答查询。

没有。当 LINDNS 从 WINDNS1 收到答案 NXDOMAIN 时,它没有理由再次询问其他服务器有关此记录的信息。

在您的情况下,仅当 WINDNS 失败(服务器关闭、named 未运行等)时才会查询 WINDNS2

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。