DNS解析及Glue Record

DNS的查询过程大家都知道,从根域名服务器开始,以 huangqifu.com 为例,理论上要经过如下几步域名服务器得到结果:
1:[a-m].root-servers.net.(根域名服务器)
2:[a-m].gtld-servers.net.(顶级域名服务器)
3:f1g1ns[1-2].dnspod.net.(查询域名指定的NS服务器)

刚了解DNS时,我有过一个疑问,如果 qq.com 的域名NS是 ns1.qq.com ,那么上述查询不就陷入死循环了么?因为要知道 ns1.qq.com 对应的IP就需要到 qq.com 的NS服务器去查询,而这个服务器又是 ns1.qq.com ,如此周而复始下去……

当然,解决方法很简单,上级DNS服务器(即负责.com的顶级域名服务器)中保存该NS的IP记录,查询时直接给出。前几天无意看到了这个记录的名称,叫“Glue Record”。所以实际上,我们用到的域名DNS都是需要到域名注册商那里去注册的,否则无法正常使用。在Godaddy中可以通过Host Names设置,万网也可以注册DNS。

在windows的命令提示符下,输入 nslookup qq.com a.gtld-servers.net. ,即可得到如下结果:

名称:    qq.com
Served by:
- ns1.qq.com
          101.226.68.138
          14.17.19.139
          qq.com
- ns2.qq.com
          101.227.169.106
          222.73.76.225
          qq.com
- ns3.qq.com
          182.140.167.157
          182.140.177.149
          qq.com
- ns4.qq.com
          111.161.48.230
          125.39.202.108
          203.205.144.156
          qq.com

里面列出了 qq.com 的NS服务器,以及每个服务器的IP地址。

然后我发现,其实不光是域名的NS为其子域名的情况,只要该NS的域名与要解析的域名的上级DNS相同(即顶级域名服务器相同),都会同时返回NS的IP地址。比如 nslookup huangqifu.com a.gtld-servers.net. ,可以得到:

名称:    huangqifu.com
Served by:
– f1g1ns1.dnspod.net
          111.30.132.180
          113.108.80.138
          125.39.208.193
          180.153.9.189
          182.140.167.166
          huangqifu.com
– f1g1ns2.dnspod.net
          101.226.30.224
          112.90.82.194
          115.236.137.40
          115.236.151.191
          182.140.167.188
          huangqifu.com

虽然 huangqifu.com 与 f1g1ns1.dnspod.net 并无从属关系,但是因为.com与.net后缀的上级DNS服务器都是 a.gtld-servers.net. ,所以查询时直接给出了NS的IP。如果查询 nslookup qifu.me ns.nic.me. ,则无IP地址:

名称:    qifu.me
Served by:
– f1g1ns1.dnspod.net

          qifu.me
– f1g1ns2.dnspod.net

          qifu.me

更明显的,查询 nslookup ustc.edu.cn a.dns.cn ,结果如下:

名称:    ustc.edu.cn
Served by:
– dns.edu.cn
          202.112.0.35
          edu.cn
– ns2.cuhk.hk

          edu.cn
– deneb.dfn.de

          edu.cn
– ns2.cernet.net

          edu.cn
– dns2.edu.cn
          202.112.0.13
          edu.cn

其中是.cn后缀的域名NS记录都直接有IP地址,其它则没有。

根域名服务器的IP地址是直接保存到系统中的,它在给出顶级域名服务器的记录时,会同时有对应的IP地址。

以上个人总结,写出来分享一下,如有纰漏请指出。

随便看看

本文共有11条评论

    1. 我猜应该都有权限的吧,毕竟要在注册域名的注册商处设置glue record。其他的不知道,狗爹、万网和新网都可以。

    1. 这篇文章末尾的问题答案就是我这篇,所以,你的推荐方向反了,哈哈。
      而且,文中提到根域名服务器是不会直接给出hu60.cn的NS的,跳过了一级。
      另外,全球各地有很多根服务器的镜像,但是按要求,它们都应该与源服务器同步,同步所有数据,而且不允许随意删除修改。

你好,哪位? 填写