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

domain-name-system – DNS超时应该如何工作?

我最近遇到一个问题,即请求我的服务器(带有托管DNS提供商)的IP地址的远程服务响应:
DNS problem: SERVFAIL looking up A for MysqL.xavamedia.nl

(更新:这里提到的远程服务是Let’s Encrypt;我提交了a bug针对他们的问题跟踪器,这导致我走上了这条道路.)

在我的本地网络上进行测试时,我能够看到我有时从托管的DNS服务器获得空DNS响应.显然这是间歇性的,因为它只在DNS记录不在缓存中时才会发生,而且只有当DNS服务器真的很忙时才会出现问题.

这是一个空响应消息的Wireshark描述:

当然,由于大多数DNS查询和响应都是通过UDP发送的,因此本地解析器只会等待一段时间才能响应,然后放弃.我现在想知道的是,是否存在DNS响应时间指南?我的DNS主机有点耸耸肩,并说我的本地解析器很快发出了空响应.我之前从未遇到过这个问题,但我对失败模式感到惊讶 – 没有错误代码的空DNS响应.

有人知道一些关于如何工作的指导方针,以及我何时/如何证明我的DNS托管做错了什么?

解决方法

您正在查看的空响应是一个称为 NODATA的合成状态.NODATA和NXDOMAIN都表示该名称不存在,但NXDOMAIN也适用于指定记录下的所有名称. NODATA建议该名称与未请求类型的记录相关联,或者其他记录位于您请求的下方. (即example.test.xavamedia.nl.)

在这种情况下,你从NODATA和NXDOMAIN的外卖实际上是相同的:所请求的名称和类型的记录不存在.已到达请求的域的权威名称服务器,它回复说明该名称和类型的记录不存在.这不是通信错误.权威服务器说它没有数据.您正在与之交谈的服务器很可能已经处理了此请求,并且负面缓存了在过去四小时内缺少该记录的情况. (14400秒是由xavamedia.nl的SOA记录定义的负缓存间隔.)

在此实例中遇到NXDOMAIN或NODATA本身都不会导致超时,但您的解析程序库可能会从此处继续附加DNS搜索后缀,这可能反过来触发搜索域的权威DNS服务器的超时.

应该注意的是,这没有解释为什么在查找MysqL.xavamedia.nl时遇到SERVFAIL响应的原因.这表明递归服务器从权威服务器获得答案时出现问题.权威服务器回复SERVFAIL,递归服务器无法访问任何权威服务器,或者递归服务器确定返回的数据无效.这些都不能通过您提供的信息得到证实.

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

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

相关推荐