AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 811166
Accepted
Gary
Gary
Asked: 2016-10-26 05:11:22 +0800 CST2016-10-26 05:11:22 +0800 CST 2016-10-26 05:11:22 +0800 CST

部分权威 DNS 中断的现实影响

  • 772

在周五的 Dyn 中断之后,我们正在考虑添加一个二级权威 DNS 提供商。我们想了解如果其中一个供应商出现故障,对现实世界的影响。

例如,如果我们的 NS 记录看起来像

ns1.provider-a.com
ns1.provider-b.com
ns2.provider-a.com
ns2.provider-b.com

并且 provider-a 或 provider-b 出现中断,在最坏的情况下(没有缓存)用户会体验到什么?我希望得到有效响应的延迟增加(如果解析器首先尝试到达停机的服务器),或者可能有 50% 的时间解析失败。如果行为依赖于实现,那么任何对各种行为的传播的理解都会非常有帮助。

domain-name-system
  • 1 1 个回答
  • 273 Views

1 个回答

  • Voted
  1. Best Answer
    Andrew B
    2016-10-26T10:14:39+08:002016-10-26T10:14:39+08:00

    简而言之,它应该按照您需要的方式运行。

    权威 DNS 旨在快速和容错。编写递归解析器是为了尽快从您的服务器池中获得有效的权威响应,其中包括假设一个或多个可能运行缓慢、不负责任或配置错误(SERVFAIL响应)。一个或多个不可用的服务器在获取答案时可能会导致轻微(可忽略的)开销,但一旦获得该答案,它就可以在该记录的 TTL 中指定的持续时间内缓存。只有在记录未缓存时发出请求的用户会看到小延迟,其他请求会立即得到响应。

    通信失败的负缓存是可选的并且经常实现(参见RFC 2308 §7),但不会在退避方面产生太多收益。失败最多只能存储五分钟,并且每次查询只能记住。( <query name, type, class, server IP address>) 如前所述,这不应该是一个问题,我提到这个细节主要是为了避免混淆。

    您将遇到的最大问题是同步。您必须监视所有这些权威服务器的序列号是否不同步。递归解析器将信任您的第一个返回权威响应的服务器。如果一台服务器返回NXDOMAIN但其他服务器没有返回,则该记录的不存在可能会被缓存超过五分钟,具体取决于您的SOA记录的配置方式。


    总而言之,了解无响应/配置错误的服务器的负缓存与正确响应的服务器之间的区别非常重要。功能正常且响应的服务器,但服务于该区域的陈旧副本,可以并且将比在此配置中的非功能对应物造成更大的损害。如果您可以避免陷入该陷阱,那么新配置在您提议的故障场景中应该是可靠的。

    (警告:我假设提供商 A 和提供商 B 都是地理冗余提供商,他们知道自己在做什么。任何打算在内部担任这些角色之一的人都应该完整阅读BCP 16并确保他们拥有 DNS 专家在他们的雇员中。曾经读过一本关于它的书的服务器管理员正在玩火。)

    • 2

相关问题

  • Solaris DNS

  • resolv.conf 在经过一段时间后被更改

  • 为什么有些网站的网址中没有“www”就无法显示?[关闭]

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve