domain-name-system – 在DNS失败期间“守护”DNS应答的Linux守护进程

前端之家收集整理的这篇文章主要介绍了domain-name-system – 在DNS失败期间“守护”DNS应答的Linux守护进程前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否有一个 Linux工具可以在DNS服务器失败期间“持久化”IP地址?因此,尽管远程DNS服务器暂时失败,域仍然可以在此计算机上解析.

方案是我有一台机器,我的Web应用程序部署在它上面.应用程序必须连接到远程资源.此资源不在我的控制之下 – 它是由其他公司提供的第三方Web服务,但它在我的客户的域名下.客户端的DNS服务器不时失败,因此我的应用程序无法解析域名,但此第三方WS仍然可用(客户端的DNS失败与其无关),因此我可以通过IP到达并完成我的工作.

所以我正在寻找工具(DNS缓存?),只要DNS服务器启动,它将通过DNS解析域名,并在DNS服务器关闭时返回最后获得的值.
减少DNS请求数不是我对这种情况感兴趣的,所以“经典”DNS缓存不是这里的解决方案(我认为).

编辑:

具有本地DNS缓存的方案对我不起作用:
1.远程DNS运行良好
2.本地DNS缓存正在缓存来自远程DNS的响应
3.在响应的TTL到期之前,远程DNS崩溃
4.直到响应的TTL到期,缓存提供缓存响应;到现在为止还挺好
5.响应的TTL到期,缓存刷新条目并且无法获得新的响应,因为远程DNS仍然关闭;这个不好

解决方法

正如其他人所建议的那样,你最接近的是服务器上的缓存,无论是nscd还是本地递归服务器.也就是说,这种方法存在许多问题:

>默认情况下,这些解决方案未配置为无限期地记住名称(如您所知),并且将使与各个DNS记录关联的TTL的缓存条目失效.许多记录在五分钟左右都有短TTL.
>该软件可能不允许您实施阻止数据过期的“最小TTL”策略.
>即使该软件允许您强制执行最小TTL,这也会引入其自身的问题.由于某种原因,一些记录的TTL很短.忽略这些短TTL可能会导致意外问题.

最终,您要求的是名称服务器记住最后一次已知的非错误响应,这不是DNS空间中当前存在的功能. There is currently a draft standard in the works to address this由于针对具有DDoS攻击的权威DNS系统的日益普及.一旦超过草案状态,我们可能会在不久的将来看到这种情况的实施.

猜你在找的HTML相关文章