关于DNS域名解析以及相关命令行的问题

发布于 2022-09-06 11:47:02 字数 1184 浏览 28 评论 0

本人新手, 最近学习网络相关的基础知识遇到了一点困惑, 如下:

1. 对于ns记录, 服务器的不理解:

比如说我在终端中输入:

$ dig +short ns baidu.com

会有如下输出:

dns.baidu.com.
ns2.baidu.com.
ns4.baidu.com.
ns3.baidu.com.
ns7.baidu.com.

所以这个ns是不是指访问baidu.com这个域名可以由这几个ns服务器来进行解析?
另外, 看了阮老师教程里面DNS原理入门里面关于ns介绍说:

NS:域名服务器记录(Name Server),返回保存下一级域名信息的服务器地址。该记录只能设置为域名,不能设置为IP地址。

这里不理解的地方在于, 上面终端输出的那些东西是不是就是那些ns服务器的域名? 以及, dns服务器是不是最后通过对这些ns服务器发出查询请求来查询到www.baidu.com的ip?

2. dig +short命令的困惑

终端中输入:

$ dig +short www.baidu.com

得到结果:

www.a.shifen.com.
111.13.100.91
111.13.100.92

终端输入:

$ dig +short baidu.com

结果只显示ip地址:

111.13.101.208

所以想问的是开始的www.a.shifen.comns记录或者还是其他的东西?

逻辑可能有点混乱, 希望能帮我解答这方面的疑惑谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

执笔绘流年 2022-09-13 11:47:02

首先要搞清楚『域名』和『主机名』的区别。baidu.com是域名吗?www.baidu.com是域名吗?实际上,当你查看DNS设置的时候,会发现有2A记录。如果我们把baidu.com理解为域名的话,域名是不可以访问的,只有主机名才可以访问。那为什么你可以输入http://baidu.com依然能访问呢?这是因为在DNS里有一条@记录指向一个IP地址,这个@的意思就相当于http://@.baidu.com,但是不显示出来,所以变成了http://baidu.com。所以,baidu.com是域名,而@.baidu.comwww.baidu.com是主机名。

对于域名来说,是需要有DNS或者NS解析的。所以当你查询说:请问baidu.com这个域名的NS是什么?返回的结果告诉你ns2.baidu.com这个主机就是用来解析baidu.com这个域名的。下一步,你可以问ns2.baidu.com这台主机:请你告诉我:www.baidu.com这台主机的IP地址是多少?

你的第2个问题,你不要加+short,而直接查询,你会看到www.a.shifen.com是一条CNAME记录,它不是A记录。CNAME的意思是别名,相当于快捷方式,所以在这里,当你访问www.baidu.com这条主机记录的时候,它首先来到www.a.shifen.com这条记录,从这里再转向到下面的数字IP。而baidu.com,我上面讲了,它实际相当于是@.baidu.com,对它没有设置CNAME这样的别名,而是直接设置了IP地址,所以看到的只是数字了。

希望我讲明白了,不明白的可以继续探讨。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文