域名与DNS

每天上网都离不域名域名系统,这里简单讲解一下。

我们每天访问各种网站,遇到过各种域名,如:www.baidu.com

# 域名的结构

域名由多部分组成,以点分开,自右向左,等级依次递减。lding.xyz 就是由两部分组成,lding 和 xyz。 xyz 叫做顶级域名lding  叫做次级域名或者二级域名。而 www 叫做三级域名。而且还可以继续有四级域名。总共可以有 127 级。

其实所有域名后都还有个 root 域名,叫做根域名。由于对于所有域名来说,其根域名都是一样的,所以就都省略了。

三级域名.二级域名.顶级域名.根域名

如 blog.lding.xyz.root

# 域名解析

访问一个网站的域名,其实质就是要访问该网站的 IP 地址。那怎么找到一个域名所对应的 IP 呢? 答案是 DNS。 怎么查找的呢?

想想我们是怎么查字典的。要查 “域” 这个字,我们就需要先查 “Y”,然后查 “YU”,最后找到 “域” 这个字。DNS 解析就有点类似这个。DNS 是按照域名等级,从右向左查找。如下图

当你在浏览器中输入 lding.xyz 这一域名后,DNS 会先向根域名服务器查找到 提供 xyz 顶级域名解析的服务器 IP 地址,然后向 xyz 顶级域名服务器查找提供次级域名解析的服务器地址,接着再向该次级域名服务器查找 lding.xyz 。最后,该次级域名服务器就告诉了我们的主机 lding.xyz 所对应的 IP 地址。我们就能访问到  lding.xyz 所呈现的内容了。是不是有种 “小蝌蚪找妈妈” 的感觉。

如果每次访问,都经过这么一大圈才能找到要访问的内容,那得多低效啊。聪明的人类当然想到了这一点,于是就有 TTL(Time to live),DNS 解析的缓存有效时间。只有超过这个时间,才会再次 “小蝌蚪找妈妈”

# DNS 的纪录类型

  • A 或者 AAA:IP 地址 Address
  • MX:Mail Exchanger 电子邮件服务器
  • NS:Name Server 域名服务器
  • PTR:逆向 DNS 查询
  • CNAME:别名

本文是对 DNS 的简单介绍,难免有疏漏,如有发现,请指正。