如何配置 DNS BIND 以在一台计算机上本地工作?

如何配置 DNS BIND 以在一台计算机上本地工作?

我想对 BIND 源代码进行一些更改。为了测试这些更改,我希望能够向本地 BIND 服务器发布查询,并使其仅使用本地区域文件。
我知道如何创建区域文件和 named.conf 文件,但我应该在 /etc/resolv.conf 中放入什么?

在 resolv.conf 中目前有一行
nameserver 192.168.0.1
,我猜这是我的路由器 IP 地址,查询通过路由器到达我的 ISP。

我希望这些查询转到本地 BIND 服务器并在我提供的区域文件中寻找答案。

有没有办法使用 resolf.conf 文件来实现这一点,或者我应该做其他事情?

答案1

另外,通过更改相应的选项确保您的测试 BIND 设置为监听 127.0.0.1(且仅监听 127.0.0.1)/etc/bind/named.conf.options(以您使用 Debian Linux 为例)。

您还可以使用 nslookup 命令查询特定的名称服务器,例如nslookup example.invalid 127.0.0.1

为了使其仅使用本地区域文件,您需要确保它/etc/bind/named.conf.options没有forwarders节并且没有任何区域文件引用外部 DNS 服务器。

答案2

您可以使用:

nameserver 127.0.0.1

在 /etc/resolv.conf 中。

但是,更好的想法是使用它dig来测试您的配置,因为它不会破坏您现有的设置。

例如如果你使用命令

dig @127.0.0.1 www.google.com

它将向 127.0.0.1 的名称服务器查询 www.google.com 的地址。

相关内容