【读书笔记】DNS解析

前言

种一棵树最好的时间是十年前。 --谁说的不要紧。

IP地址基础知识

在网络中,所有的设备都会被分配一个地址,这个地址类似于现实中的住宅地址:“XX号XX室”。而“室”对应的号码是分配给子网中的计算机的,这就是网络中的地址。“号”对应的号码称为网络号,“室”对应的号码称为主机号,这个地址的整体称为IP地址。通过IP地址我们可以判断出访问对象服务器的位置,从而将消息发送到服务器。 但现实中我们更多的是使用域名来访问网站,所以我们在使用域名访问网站的时候需要通过DNS查询该域名对应的IP地址。(内多很多网址被墙是由于DNS解析域名污染,如果针对某个单独的被墙的网站可以尝试传送门

抛出问题

DNS(Domain Name System 域名服务系统)服务器会从域名与IP的对照表中查找出相应的记录并返回IP。再那我们先来探索一下这个对照表。那么首先要从域名的结构说起。

域名的层次结构

DNS 中的域名都是用句点来分隔的,比如www.lab.glasscom.com,这里的句点代表了不同层次之间的界限;。在域名中,越靠右的位置表示其层级越高。

级别备注
根域.全球根域DNS服务器对于的IP只有13个,通常www.lab.glasscom.com. 通常写法省略最右边的 '.' 。
顶级域com分为两类:①国家顶级域名;例如中国是cn,美国是us。②国际顶级域名;表示网络提供商的 . net,表示非盈利组织的 . org
二级域glasscom 是指顶级域名之下的域名,它是指域名注册人的网上名称
三级域lab在二级域名下注册
四级域www在三级域名下注册

域名的存储规则

互联网中有数万台DNS服务器,肯定不能一台一台的挨个去找,可以采取以下做法:首先,将负责管理下级域的DNS服务器的IP地址注册到他们的上级DNS服务器中,然后上级DNS服务器服务器的IP地址再注册到更上一级的DNS服务器中,以此类推。那么起点便是的根域。那又如何能找到根域进而查找根域下的子域呢?上面我们已经说过,全球分配给根域的DNS服务器的IP地址地址全球仅有13个,而且这些地址是不会轻易发生变化的,所以这13的IP地址再安装DNS服务器程序的时候就已经被配置好了。

域名查询

客户端首先会访问最近的一台DNS服务器

每台DNS服务器都保存了根域服务器的地址,如果自身查找不到的会就会从根域开始查找。

假设我们要查询www.lab.glasscom.com这台Web服务器的相关信息。由于最近的DNS 服务器中没有存放www.lab.glasscom.com这一域名对应的信息,所以我们需要从顶层开始向下查找。最近的DNS 服务器中保存了根域DNS 服务器的信息,因此它会将来自客户端的查询消息转发给根域DNS 服务器。根域服务器中也没有www.lab.glasscom.com这个域名,但根据域名结构可以判断这个域名属于com 域,因此根域DNS 服务器会返回它所管理的com 域中的DNS 服务器的IP地址,意思是“虽然我不知道你要查的那个域名的地址,但你可以去com 域问问看”。接下来,最近的DNS 服务器又会向com 域的 DNS 服务器发送查询消息。com 域中也没有www.lab.glasscom.com 这个域名的信息,和刚才一样,com 域服务器会返回它下面的glasscom.com 域的DNS 服务器的IP 地址。以此类推,只要重复前面的步骤,就可以顺藤摸 瓜找到目标DNS 服务器,只要向目标DNS 服务器发送查询消息, 就能够得到我们需要的答案,也就是www.lab.glasscom.com 的IP 地址了。

DNS服务器还有一些缓存机制来加速访问的过程。

笔记来源

本文主要是读自于《网络是怎样连接的》。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值