如何使用绑定缓存"SERVFAIL"?



我在最后一个小时在Google上搜索,找不到与我的问题相关的任何内容,我将安装和运行完整地运行,我用于多个域和本地反向查找,仍然...一些远程名称服务器处于离线状态,并且不会将任何结果归还给我的请求,这正在减慢使用绑定的应用程序。

例如:

# 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秒钟。我知道我可以在应用程序内实现缓存,但是我敢肯定,在Bind Configuration中为此创建缓存会更有效。

我如何缓存Servfail ...假设5分钟?它由绑定?

支撑

谢谢!

默认情况下绑定了所有响应。您在Servfail响应中收到的TTL是什么?另外,请检查客户端解析器配置上的Max-NCache-TTL设置为0。

最新更新