如何使用bind缓存“SERVFAIL”?

时间:2016-12-27 12:09:50

标签: caching bind named reverse-dns

我在过去一小时内在google上搜索过,找不到任何与我的问题相关的东西,我已经安装了绑定并且运行完美,我正在使用多个域和本地反向查找,仍然...一些远程名称服务器处于脱机状态,不会将任何结果返回给我的请求,这会减慢使用bind的应用程序。

例如:

# dig @127.0.0.1 -x 155.1.2.3

; <<>> DiG 9.9.5-9+deb8u8-Debian <<>> @127.0.0.1 -x 155.1.2.3
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 40057
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;3.2.1.155.in-addr.arpa.                IN      PTR

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Dec 27 14:06:14 EET 2016
;; MSG SIZE  rcvd: 51

〜5秒后超时,但如果我重试命令,结果(SERVFAIL)不会被缓存,我的应用程序会反复延迟5秒钟。我知道我可以在应用程序中实现缓存,但我确信在绑定配置中为此创建缓存会更有效。

如何缓存SERVFAIL ...让我们说5分钟? 它受bind支持吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

默认情况下,绑定缓存所有响应。您在SERVFAIL响应中收到的TTL是多少?另请检查客户端解析程序配置中是否将max-ncache-ttl设置为0。