首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >来自DNS权威服务器的随机响应是否正常?

来自DNS权威服务器的随机响应是否正常?
EN

Server Fault用户
提问于 2022-06-02 17:58:59
回答 1查看 179关注 0票数 0

我们正在尝试使用让我们加密和dns01解决程序来设置证书经理证书颁发。我们使用梦想之家作为DNS提供程序,并创建了连接RFC-2136证书管理器和Dreamhost API之间的胶水组件。

我们遇到的问题是,尽管添加了所需的(TXT)记录,但权威的DNS服务器正在随机返回它们--两个请求一个接一个地返回答案,而其他请求则不返回任何内容。这导致证书管理器等待不可预测的时间,直到幸运的是它能够确认TXT记录的存在,在某些情况下导致让加密域检查失败。

这是DNS权威服务器所期望的吗?或者这是我们应该向DNS提供者提出的吗?

贝娄就是这种情况的例子(就目前而言,分隔域被收回)。如你所见

代码语言:javascript
复制
dig @ns1.dreamhost.com. _acme-challenge.keycloak.tenant-a.k8s-dev.redacted.redacted. TXT 

; <<>> DiG 9.16.15-Ubuntu <<>> @ns1.dreamhost.com. _acme-challenge.keycloak.tenant-a.k8s-dev.redacted.redacted. TXT
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 38336
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;_acme-challenge.keycloak.tenant-a.k8s-dev.redacted.redacted. IN    TXT

;; AUTHORITY SECTION:
redacted.       300 IN  SOA ns1.dreamhost.com. hostmaster.dreamhost.com. 2022060209 18661 600 1814400 300

;; Query time: 20 msec
;; SERVER: 162.159.26.14#53(162.159.26.14)
;; WHEN: czw cze 02 19:40:17 CEST 2022
;; MSG SIZE  rcvd: 152

dig @ns1.dreamhost.com. _acme-challenge.keycloak.tenant-a.k8s-dev.redacted.redacted. TXT 

; <<>> DiG 9.16.15-Ubuntu <<>> @ns1.dreamhost.com. _acme-challenge.keycloak.tenant-a.k8s-dev.redacted.redacted. TXT
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41439
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;_acme-challenge.keycloak.tenant-a.k8s-dev.redacted.redacted. IN    TXT

;; ANSWER SECTION:
_acme-challenge.keycloak.tenant-a.k8s-dev.redacted.redacted. 300 IN TXT "Uyr1nHC1CRWQcmOWDvObc4RMd-mNhKaE9bbNZTf3L2k"

;; Query time: 16 msec
;; SERVER: 162.159.26.14#53(162.159.26.14)
;; WHEN: czw cze 02 19:40:18 CEST 2022
;; MSG SIZE  rcvd: 144

如你所见

  • 响应的时间戳是相同的。
  • 一个响应包含TXT记录,另一个不包含TXT记录。
  • 相同的dns服务器(162.159.26.14 - ns1.dreamhost.com)正在响应,我相信这是权威服务器。
EN

回答 1

Server Fault用户

回答已采纳

发布于 2022-06-03 18:39:54

相同的dns服务器(162.159.26.14 - ns1.dreamhost.com)正在响应,我相信这是权威服务器。

就像web服务器一样,一个IP地址可能隐藏多个DNS服务器响应您的请求。甚至来自同一位置的查询也可以通过负载均衡器或多路径路由分配到多个节点。(有时"ns1“和"ns2”完全是为了显示,两者都会导致相同的服务器池。)

是的,理想情况下,集群中的所有权威服务器都应该知道完全相同的数据,但是根据它们的实现方式,集群可能会有一些服务器与Dreamhost的权威数据库暂时不同步,原因有很多。例如(完全假设--我不知道Dreamhost的系统是如何工作的),“重载”请求可能会及时传播,以减少数据库的负载。

在我从不同的国家(使用云VPS)检查后,我得到了不同的答案模式。

在更广泛的范围内,当您从不同的位置查询时,BGP选播可以将您引导到完全不同的集群。一个很好的例子是公共DNS解析器或根服务器--世界上有许多1.1.1.1的实例,还有许多"f.root-servers.net“实例。如果Dreamhost使用anycast在多个物理位置托管"ns1“(可能是为了减少延迟),那么在您进行更改之后,它们很可能会在短时间内失去同步。(这是"DNS传播“不是谎言的一个领域。)

许多DNS服务器支持使用各自名称答复的特殊hostname.bind和/或id.server查询。从不同的位置尝试这个:

代码语言:javascript
复制
dig +short @ns1.dreamhost.com hostname.bind. chaos txt

但总的来说,上述任何一项都不会真正改变任何事情--您的问题与拥有独立的服务器并保持它们的同步并没有太大的不同。例如,即使只有使用传统DNS AXFR复制的普通ns1/ns2/ns3服务器,每当新数据加载到主服务器时,发送NOTIFY到副本并由它们传输更改也需要几秒钟时间。查看NS记录的解析器完全不知道这一点,可以随机选择已经有新数据的服务器或没有新数据的服务器。

因此,无论您的DNS主机如何工作,以及它有多少服务器,您都不应该期望更新是100%即时的;找出提供者是发布预期的时间,还是等待任意的5或10秒。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1102349

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档