• DNS,Domain Name System,域名系统;主要是用来把域名转换成IP地址。

    • 为什么ip不可以直接是域名的字符串样子?

      ip是固定的32位(IPv4)如果是IPv6就是固定的128位,是二进制计算机容易识别。域名是不定长的(虽然有最大程度255字节而且)字符串形式机器直接使用困难,需要翻译。

    • 那直接用ip不就好了,

      为什么要有域名?好记啊。。。ip地址的一大串01数字,对人类太不友好了。

  • 域名系统是一个树结构倒转,最顶部为根,然后子节点是顶级域名,顶级域名的子节点为二级域名以此类推。

    • 规定域名由多级标号组成,如www.mydns.org,这里的www/mydns/org都是标号。标号规定最长为63个字符,域名规定最长为255字符。

    • 为什么选用树型结构?树型结构的分级能比较好的唯一标识一个域名,而且层次比较分明:同样以www.mydns.org为例。解析是右到左的,也即首先解析org,然后是mydns,最后是www,考虑全世界有很多组织,所以顶级域名org代表非营利组织,每个组织有自己的名字,所以mydns组织申请了org顶级域名下的mydns二级域名使用,但是mydns有自己的各个部门,比如web开发的,那么组织可以用自己的二级域名mydns划分一个三级域名www。这样如果有另外的公司也叫mydns,那么它可以注册到顶级域名com下,完整域名就是mydns.com和mydns组织的域名mydns.org不同,所以可以起到一定的重用,比较贴合域名原来的使用含义。

      一般www次级域名都表示web网站,mail表示邮件等

    • 上一点又提组织可以用自己的二级域名mydns划分一个三级域名www一个机构/组织/其他什么的如果申请到了一个域名(无论是顶级还二级还是三级)那么这个机构可以自己划分更次级的域名。这也是为什么申请域名后可以划分子域名的原因

    • 第二点也提到了解析是右到左的,如果本机没有对应的dns缓存,首先解析的就是顶级域名,那么就要先去根域名服务器上请求顶级域名,如果离根域名服务器远或者根域名服务器接受请求多那么响应就会久,网速也就慢了。这也就是为什么根域名服务器很重要的原因(分布是很不均匀,这也是一个资源)。

  • 需要注意一点,有种域名服务器称本地域名服务器是不在上文提到的树结构里面的。每个dns请求都会先发到本地域名服务器上去,若本地域名服务器不能解析再从根域名服务器查起。

    • 为什么需要先经过一个本地域名服务器?因为这样周围的主机询问的dns有可能重复,而把周围所有主机的dns进行一个缓存可以一定程度上减少请求的时间。

最后更新: 2021年01月19日 22:42

原始链接: https://idkhts.github.io/2021/01/19/DNS/