您好,我刚刚为我的域 example.org 设置了一个 DNS 服务器,其中有 2 个名称服务器 ns1.example.org 和 ns2.example.org。我试图在我的注册商处为 ns1 和 ns2 设置胶水记录。
当我做一个 dig example.org 时它现在似乎工作但是当我做一个 whois example.org 时它列出了 ns1.example.org 和 ns2.example.org 但不是他们的 IP 地址,应该设置为胶水记录.
所以我想知道如何检查胶水记录的存在?我是用 whois 做的吗?我看到 .com 和 .net whois 记录同时包含域名和名称服务器的 IP 地址,.org 是否不同?测试这个的正确方法是什么?
谢谢。
当 DNS 缓存的准确性有问题时,dig +trace往往是确定面向 Internet 的 DNS 记录的权威答案的推荐方法。这在与 配对时似乎特别有用+additional,这也显示了胶水记录。
有时似乎在这一点上存在一些分歧——有人说它依赖本地解析器来查找中间名称服务器的 IP 地址,但命令输出没有提供任何迹象表明这超出了 root 的初始列表名称服务器。如果目的+trace是从根服务器开始并跟踪您的方式,那么假设情况并非如此,这似乎是合乎逻辑的。(至少如果您有正确的根名称服务器列表)
是否dig +trace真的将本地解析器用于根名称服务器之外的任何内容?
$ORIGIN example.com. ; not necessary, using this to self-document
$TTL 3600
@ IN SOA ns1.example.com. admin.example.com. (
1970010100 7200 1800 1209600 300)
@ IN NS ns1.example.com.
@ IN NS ns2.example.com.
@ IN A 198.51.100.1
ns1 IN A 198.51.100.2
ns2 IN A 198.51.100.3
sub1 IN NS ns1.example.edu.
sub2 IN NS ns1.sub2
ns1.sub2 IN A 203.0.113.1 ; inline glue record
Run Code Online (Sandbox Code Playgroud)
NS 记录在域顶点下的作用是众所周知的。它们的存在是为了将子域的权限委托给另一个名称服务器。上面的例子应包括的NS记录sub1和sub2。这些允许名称服务器为它认为自己不具有权威性的域部分分发引用。
在NS的目的,记录在一个域的顶点,ns1而ns2在这种情况下,似乎较少地受到互联网的大了解。我的理解(可能不是整体的)如下:
与我共事的工程团队一直在将设备从一个数据中心转移到另一个数据中心。十天前,我们移动了我们客户域 (ns1.faithhiway.com) 的权威名称服务器之一,并使用其各自的 DNS 提供商 (register.com) 更新了其 IP 地址以指向新的数据中心。完成的所有测试表明,该名称服务器在其新位置正确运行,并且在查询时,为其负责的任何域返回正确的响应。
问题是,在 72 小时后,我们仍然看到旧 IP 地址上的 DNS 活动多于新 IP 地址。好消息是我们暂时保留了一个名称服务器对旧 IP 地址的响应,因此我们没有发现我们的名称服务器负责的域有任何问题,但目标是尽快停用它。正如您从WhatsMyDNS.net中看到的那样,自我们进行此更改以来,过去 10 天内发生了大量传播,但仍有一些位置报告了我们的原始 IP。

考虑到 TTL 仅为 3600,名称服务器负责该域,因此对我自己或与我一起工作的其他工程师来说,我们遇到此问题没有任何意义。
现在,如果我使用 Register.com DNS 服务器之一(对于 Faithhiway.com 的直接名称服务器)运行 DNS 检查,我会得到以下(正确)结果:
# dig @dns01.gpn.register.com ns1.faithhiway.com A
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5_5.3 <<>> @dns01.gpn.register.com. ns1.faithhiway.com A
; (1 server found)
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43232
;; flags: qr aa; QUERY: 1, ANSWER: 1, AUTHORITY: …Run Code Online (Sandbox Code Playgroud) 我有点知道为什么需要粘合记录(循环依赖),但什么时候需要它们?是否仅在将域的名称服务器设置到我自己在 Internet 上的机器时才需要它们 - 例如“ns1.mydomainonmyserver.com”??
使用外部/托管提供商的名称服务器时,是否需要/点制作胶水记录?
我已经与 BIND 打交道多年,这一直困扰着我。
$ dig google.com ns
;; QUESTION SECTION:
;google.com. IN NS
;; ANSWER SECTION:
google.com. 87046 IN NS ns3.google.com.
etc...
;; ADDITIONAL SECTION:
ns1.google.com. 87274 IN A 216.239.32.10
etc.
Run Code Online (Sandbox Code Playgroud)
我明白,至少在理论上,根服务器处理 .,并将 .com.、.gov. 等任何内容交给正确的服务器(尽管实际上这都缓存了几个级别),但在某些时候,有人要知道向216.239.32.10 的服务器询问whatever.google.com 的A 记录。但是解析器首先是如何解决这个问题的,因为您需要知道 NS 的 A 才能做到这一点?(就此而言,既然我们知道它是一个 Internet NS 而不是 Chaos 或其他东西,为什么您必须使用名称而不是 NS 记录的地址?)
我的域名服务器总是有一些上游人可以找到的名字(例如,我在 foo.com 上托管了 bar.com 的 DNS,而我的上游处理了 foo.com),但我从来没有完全理解像 Google 这样的人是如何克服以 google.com 的名义托管 google.com 的 DNS 的鸡与蛋问题。
这是我的问题:
dig +trace忽略 Glue 记录?digor dig +trace,或者递归名称服务器是否也“手动验证”它收到的粘合记录?这是更长的解释:
这是引发这些问题的 DNS 事务的完整捕获。
我正在使用 dig +trace 来跟踪 DNS 过程,以进行简单的 A 记录解析www.pizza.com。正如预期的那样,第一个请求是发送给我的 DNS 服务器,寻找根名称服务器(数据包 #1)。然后,我的 DNS 服务器会响应所有 13 个名称服务器的列表(数据包 #2):
请注意,在 Packet#2 中,不包含任何附加记录。这会提示我的客户查找每个提供的根名称服务器的 A 记录。这发生在数据包 3 到 28 中:
到目前为止,这是预期的。但接下来就变得有趣了。
数据包 29 是我的客户端,向 192.5.5.241 (f.root-servers.net) 发出请求,查找 www.pizza.com 的 A 记录。显然,根 NS 不知道 A 记录,因此提供.comTLD 名称服务器的 FQDN(a.gtld-servers.net、b.gtld-servers.net 等)。请注意,F 根 NS 还提供“附加记录”,即与每个 .com TLD 名称服务器 FQDN 对应的 A 记录:
接下来就是我的问题所围绕的内容。尽管我的客户收到了与 .com TLD 名称服务器相关的 A …
我的理解是,如果我将 example1.com 和 example2.us 的名称服务器设置为 ns1.example2.us 和 ns2.example2.us,则查找 www.example1.com 将:
如果相反,我们将 example1.com 和 example2.com 的名称服务器设置为 ns1.example2.com 和 ns2.example2.com,查找 www.example1.com 将:
我是否正确,在这种情况下,查找中只有这两个步骤? 具体来说,我似乎在 example2.com 中遇到了大量查找,这表明对 example1.com 的查找并不总是使用胶水记录,从而导致 ns1.example2.com 和/或 ns2.example2.com 的额外步骤通过查询 …
我在 Godaddy 有两个胶水记录,例如:
NS1.MYDNSSERVER.COM
NS2.MYDNSSERVER.COM
Run Code Online (Sandbox Code Playgroud)
我的域中有三个 NS 记录:
NS1.MYDNSSERVER.COM
NS2.MYDNSSERVER.COM
NS3.MYDNSSERVER.COM
Run Code Online (Sandbox Code Playgroud)
glue-record ×10
domain ×3
dig ×2
ns-record ×2
delegation ×1
domain-name ×1
hosting ×1
name ×1
nameserver ×1
opendns ×1