微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

domain-name-system – DNS名称服务器如何回退?

我们的NS记录中列出了两个DNS服务器.昨晚,我们的一台DNS服务器出现故障.正如所料,一些DNS服务器没有解析我们的主机名.我认为这将是暂时的,并且一旦我们的NS记录的TTL到期(1小时)就会开始工作.

一小时后,我仍然从使用Earthlink,Verizon和OpenDNS服务器的桌面获得DNS超时.我测试了其他DNS服务器是否正在回答:

dig @ns2.example.com www.example.com +short

这很有效.

我的问题:

>有没有人得到一个答案,为什么其他DNS服务器即使在TTL过期后也没有打到我们的其他DNS服务器
> DNS服务器更喜欢域的主DNS服务器(来自SOA记录)吗?
>是否有任何算法用于从可用的NS记录中选择名称服务器?我假设这是特定于实现的,但也许有一些适用于此的标准.

解决方法

这是一个不幸的烦恼.多个DNS服务器应该是为了提高可靠性,但在实践中它经常具有相反的效果.

问题是客户端只等待响应这么长时间,服务器等待大约相同的时间.假设您有两个DNS服务器,A和B.说A正在运行而B已经失败.有时候是这样的:

>客户端连接到名称服务器Z并要求其提供信息. Z选择B并发送查询.
>客户端超时,因为名称服务器Z没有响应.
>客户端尝试命名服务器Y.Y选择B并发送查询.
>名称服务器Z超时并尝试A.它得到正确答案,但客户端不再等待.
>客户端超时,因为名称服务器Y没有响应.
>客户端放弃了,其名称服务器都无法响应.
>名称服务器Y超时并尝试A.它得到正确答案,但客户端不再等待.

而且没有好的解决方案.等待查看名称服务器是否回复的时间越长,您需要等待的时间越长,因为您等待的名称服务器等待的时间越长.可以说,问题是Y和Z并没有足够快地放弃B.

从本质上讲,如果你的任何名称服务器都没有出来,一些客户会因为运气不好而超时,因为他们只尝试过那些糟糕的服务器.

好的一面是,如果你有两个名称服务器,一个名称服务器失败,大约75%的名称服务器将获得答案,而不是0%.

原文地址:https://www.jb51.cc/html/229786.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐