Tid*_*ddo 58 domain-name-system nameserver
我试图更好地理解 DNS,但我仍然没有完全获得 A 和 NS 记录。
据我所知,A 记录告诉我哪个 IP 地址属于(子)域,到目前为止我还很清楚。但据我所知,NS 记录告诉哪个名称服务器点属于(子)域,而该名称服务器应该告诉哪个 IP 地址属于(子)域。但这已经在同一个 DNS 文件的 A 记录中指定了。所以有人可以向我解释 NS 记录和名称服务器到底是做什么的,因为我可能理解错了。
编辑:据我所知,NS 记录告诉您要找到具有某个域的 A 记录的 DNS 服务器,而 A 记录告诉您哪个 IP 地址属于某个域。但是将 A 和 NS 记录放在同一个 DNS 文件中有什么用呢?如果某个域已经有 A 记录,那么为什么您需要指向另一个 DNS 服务器,它可能会给您相同的信息?
vor*_*aq7 59
虚拟foo.com
区域文件中的一些示例
....... SOA record & lots more stuff .......
foo.com. IN NS ns1.bar.com.
foo.com. IN A 192.168.100.1
....... More A/CNAME/AAAA/etc. records .......
Run Code Online (Sandbox Code Playgroud)
A Record = "被称为主机的主机foo.com
位于地址 192.168.100.1"
NS Record = "如果你想了解该foo.com
区域中的主机,请询问名称服务器 ns1.bar.com"
And*_*w B 28
这是一个老问题,但我认为其他答案并没有真正触及混乱的根源。NS
顶点处的NS
记录与顶点下的记录遵循一组不同的规则。
NS
顶点的记录没有定义推荐。相反,它们为这些NS
记录提供权威定义。NS
顶点下的任何记录都定义了推荐。此NS
记录不被视为权威A
记录,共享相同名称的记录也不是权威记录。从这些规则中,我们可以针对A
DNS 服务器上存在同名记录时发生的情况推导出两种不同的行为:
NS
记录没有定义推荐,其他数据可以与它一起存在于同一区域中。由于服务器认为自己对NS
记录和A
记录都具有权威性,因此不存在冲突。这就是为什么其他数据通常与NS
区域顶点的记录一起存在的原因。NS
记录确实定义了一个引用,则该A
记录会被zone cut有效地“屏蔽” 。此A
记录不具有权威性,不得出现在权威性回复的答案部分。它可以潜在地用作显示在参考的附加部分中的胶水数据,但仅此而已。令人困惑?是啊,就是。如果您在执行此操作时遇到问题,请在评论中留言,我会看看我能做些什么。
nos*_*nos 15
A 记录将名称映射到 IP 地址。例如
binary.example.com。在 192.168.1.42
指出 binary.example.com。解析为 192.168.1.42
NS 记录将名称映射到另一个名称服务器,即为该域提供服务的另一个 DNS 服务器。即“我不知道这个名字的 IP 地址,但如果你去问那边的名字服务器,它可能知道”
binary.example.com。IN NS otherbox.example.com otherbox.example.com。在 192.168.1.2
如果您询问具有 binary.example.com 的上述 2 条记录的 DNS 服务器。(或 www.binary.example.com. 或 foo.bar.binary.example.com)。它会告诉你你必须去请求 192.168.1.2 来翻译这些名字(好吧,或者 dns 服务器可以为你做这件事,或者它可以缓存解析的名字并将它们返回给你。)
Duk*_*ion 12
如果您需要将子区域委托给不同的 DNS 服务器,那么在区域中同时拥有 NS 和 A 记录非常重要。
例如,我们有 DNS 服务器 ns1.bar.com 对区域 bar.com 具有权威性。我们需要将 foo.bar.com 委托给 ns1.foo.bar.com。所以我们需要创建区域 foo.bar.com 并将这些记录放在那里:
foo.bar.com. IN NS ns1.foo.bar.com.
ns1.foo.bar.com. IN A 10.10.10.10
Run Code Online (Sandbox Code Playgroud)
如果我们没有 A 记录委派将不起作用。这样的记录对称为粘合记录。
Glue 记录是 DNS 系统查找非根区权威 DNS 服务器准确 IP 的唯一途径。如果您使用dig
wireshark检查任何域的NS记录或查看流量转储,您会看到答案中有“附加”部分。
;; ANSWER SECTION:
foo.bar.com. 10800 IN NS ns1.foo.bar.com.
;; ADDITIONAL SECTION:
ns1.foo.bar.com. 7972 IN A 10.10.10.10
Run Code Online (Sandbox Code Playgroud)
在进行递归请求时,例如 www.foo.bar.com,您的 dns 客户端将请求 foo.bar.com 区域的 DNS 权威并得到答案 ns1.foo.bar.com。
为了更进一步,它需要发送对 ns1.foo.bar.com 的请求,该请求由... ns1.foo.bar.com 提供服务。要打破循环,委托 DNS 服务器应添加此附加部分,并带有 A 记录。
服务器 ns1.foo.bar.com 应该在其区域中具有相同的记录,因此它可以成为 foo.bar.com 区域的权威。
归档时间: |
|
查看次数: |
95653 次 |
最近记录: |