域名系统DNS的作用就是域名解析为IP地址,因为在网络中传输的是字节,从之前学过的报文结构就可以得知,但是为何不直接在报文中直接传输域名呢?因为IP地址长度是固定的32位(如果是IPV6就是固定的128位),而域名长度不是固定长度的,及其处理比较困难。所以将域名解析成IP地址这个任务就交给了域名服务器了。
理解什么是域名服务器?
域名服务器构成了DNS中的分布式网络系统,其功能主要是为内外主机提供域名与IP地址的互相解析映射服务。域名服务器分布在互联网的各子网中,每个域名服务器负责管理连接到本子网的所有主机,并为其提供服务。
域名服务器分为上面所表示的根域名服务器、顶级域名服务器、权限域名服务器、还有本地域名服务器(在本地电脑里面)
关于本地域名服务器
关于根域名服务器
关于根域名服务器,这里面有个有趣的话题,参考这篇文章: 美国如果把根域名服务器封了,中国会从网络上消失?
理解什么是域名注册商?
域名服务器之所以能知道域名与 IP 地址的映射信息,是因为我们在域名服务商那里提交了域名记录。购买了一个域名之后,我们需要在域名服务商那里设置域名解析的记录,域名服务商把这些记录推送到权威域名服务器,这样我们的域名才能正式生效。 常见的域名服务商有阿里云、腾讯云等等……
注册域名注册商
要成为域名注册商需要提权,具体参考:https://baike.baidu.com/item/%E5%9F%9F%E5%90%8D%E6%B3%A8%E5%86%8C%E5%95%86
ICANN
『互联网名称与数字地址分配机构』
可以看看发展历程
不仅如此,包含全球的域名相关信息的ICANN的数据库管控方式也是极为严格,
像极了电影里面的情节
具体参考:https://baike.baidu.com/item/%E4%BA%92%E8%81%94%E7%BD%91%E5%90%8D%E7%A7%B0%E4%B8%8E%E6%95%B0%E5%AD%97%E5%9C%B0%E5%9D%80%E5%88%86%E9%85%8D%E6%9C%BA%E6%9E%84/2775450?fromtitle=ICANN&fromid=6807198
域名解析过程
:::info 了解了上面一些DNS宏观的设计方式,再来到域名解析就比较好理解了,域名解析就是将域名解析为IP地址,它怎么解析呢?利用在域名服务器里面查找有没有相关的解析记录。 :::
使用工具查看DNS查询过程
Linux下的dig命令
Windows下的trance命令
参考
- DNS 原理入门 - 阮一峰的网络日志
- https://segmentfault.com/a/1190000023696737
- https://baike.baidu.com/item/%E5%9F%9F%E5%90%8D%E6%B3%A8%E5%86%8C%E5%95%86
- https://baike.baidu.com/item/%E4%BA%92%E8%81%94%E7%BD%91%E5%90%8D%E7%A7%B0%E4%B8%8E%E6%95%B0%E5%AD%97%E5%9C%B0%E5%9D%80%E5%88%86%E9%85%8D%E6%9C%BA%E6%9E%84/2775450?fromtitle=ICANN&fromid=6807198