首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DNS A与NS记录

DNS A与NS记录
EN

Server Fault用户
提问于 2011-01-20 22:49:16
回答 6查看 113.7K关注 0票数 67

我试图更好地理解DNS,但我仍然没有完全得到A和NS记录。

据我所知,A记录告诉我哪个IP地址属于(子)域,到目前为止,我仍然很清楚。但正如我所理解的,NS记录告诉哪个名称服务器点属于(子)域,该名称服务器应该告诉哪个IP地址属于(子)域。但这已在同一DNS文件中的A记录中指定。所以有人能向我解释一下NS记录和命名者到底做了什么,因为我可能理解错了什么。

编辑:正如我正确理解的那样,NS记录告诉您要为某个域查找带有A记录的DNS服务器,而A记录则告诉您哪个ip地址属于某个域。但是把一个A和一个NS记录放在同一个DNS文件中有什么用呢?如果某个域已经有一个A记录,那么为什么需要指向另一个DNS服务器,这可能会给您提供相同的信息?

EN

回答 6

Server Fault用户

回答已采纳

发布于 2011-01-20 23:15:18

虚拟foo.com区域文件中的一些示例

代码语言:javascript
复制
 ....... 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 .......

记录=“名为foo.com的主机的地址为192.168.100.1”

NS Record =“如果您想了解foo.com区域中的主机,请询问名称服务器ns1.bar.com”

票数 71
EN

Server Fault用户

发布于 2016-05-30 19:10:24

这是一个老问题,但我认为其他答案并没有真正触及混乱的根源。在顶点的NS记录遵循一组不同于在顶点下面的NS记录的规则。

  • 在顶点的NS记录没有定义推荐。相反,它们为那些NS记录。
  • 在顶点下面的任何NS记录都定义了推荐。此NS记录不被认为是权威的,共享相同名称的A记录也不具有权威性。

从这些规则中,我们可以派生出两种不同的行为,用于在具有相同名称的DNS服务器上存在A记录时发生的情况:

  • 如果NS记录没有定义引用,则可以在同一区域中与其同时存在其他数据。由于服务器认为自己对NS记录和A记录都具有权威性,所以没有冲突。这就是为什么其他数据通常生活在一个区域顶端的NS记录旁边。
  • 如果NS记录确实定义了引用,那么A记录实际上是由区域切割“屏蔽”的。此A记录不是权威的,不能出现在权威响应的应答部分。它可以作为胶水数据使用,它显示在推荐的其他部分,但仅此而已。

令人困惑?是的,就是这样。如果你在跟踪这方面有困难的话,请在评论中留言,我会看看我能做些什么。

票数 35
EN

Server Fault用户

发布于 2012-06-07 16:44:15

如果您需要将子区域委托给不同的DNS服务器,那么在区域中同时拥有NS和A记录是很重要的。

例如,我们有dns服务器ns1.bar.com权威的区域bar.com。我们需要将foo.bar.com委托给ns1.foo.bar.com。因此,我们需要创建区域foo.bar.com并将这些记录放在那里:

代码语言:javascript
复制
foo.bar.com.     IN NS ns1.foo.bar.com.
ns1.foo.bar.com. IN A  10.10.10.10

如果我们没有唱片的话,代表团就不能工作了。这样的记录对被称为胶水记录。

胶水记录是DNS系统为非根区域找到权威DNS服务器的确切IP的唯一途径。如果您使用dig检查NS记录的任何域,或者使用wireshark查看流量转储,您将看到答案中有“附加”部分。

代码语言:javascript
复制
;; 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

当执行递归请求时,例如www.foo.bar.com,您的dns客户端将请求foo.bar.com区域的DNS权威,并获得答案ns1.foo.bar.com。

为了更进一步,它需要发送一个ns1.foo.bar.com请求,该请求由.ns1.foo.bar.com。要打开循环,委托DNS服务器应该添加这个附加部分,带有一个记录。

服务器ns1.foo.bar.com应该在其区域中有相同的记录,因此它可以对foo.bar.com区域具有权威性。

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

https://serverfault.com/questions/224920

复制
相关文章

相似问题

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