我正在设置tinydns
以提供本地网络(实际上是几台虚拟机)的 DNS 数据,并dnscache
提供有关本地网络和大型互联网的数据。因此,这是我的设置:
- 机器有一个接口,带有两个 IP 地址:10.0.0.4和10.0.0.5
tinydns
提供有关本地网络的数据10.0.0.4dnscache
致力于10.0.0.5使用以下配置:
当进行正向解析时,一切进展顺利(仅显示输出的答案部分):# ls root/servers @ ies.iu # cat root/servers/@ 8.8.8.8 # cat root/servers/ies.iu 10.0.0.4
$ dig earthbind.ies.iu @10.0.0.4
earthbind.ies.iu. 86400 IN A 10.0.0.4
$ dig earthbind.ies.iu @10.0.0.5
earthbind.ies.iu. 83777 IN A 10.0.0.4
到目前为止一切顺利。尝试反向查找:
$ dig -x 10.0.0.4 @10.0.0.4
4.0.0.10.in-addr.arpa. 86400 IN PTR earthbind.ies.iu.
$ dig -x 10.0.0.4 @10.0.0.5 # No answer!
我是否期望dnscache
它能做不应该做的事情?那么正确的方法是什么?
这个问题很重要,因为如果我把10.0.0.5进入/etc/resolv.conf
,ping
(但不是ping -n
)在开始发送数据包之前会有明显的延迟。
答案1
我找到了:在解决问题export FORWARDONLY=1
的运行脚本中dnscache
。不确定为什么。