DNS协议

一、简介

DNS:域名系统(域名解析协议)。域名和IP地址相互映射的数据库。计算机依赖DNS服务器将域名解释为IP地址来进行访问。
其中域名必须对应一个IP地址,一个IP地址可以有多个域名,而IP地址不一定有域名。

二、DNS层次结构

在这里插入图片描述
(1)国家顶级域名。
如:cn代表中国,us代表美国,uk代表英国,
(2)通用顶级域名。
常见的通用顶级域名有com(公司企业),net(网络服务机构),org(非营利组织),int(国际组织),gov(美国的政府部门),mil(美国的军事部门)。
(3)基础结构域名。
这种顶级域名只有一个,即arpa,用于反向域名解析,因此称为反向域名。

三、DNS查询

1、迭代查询

客户端向DNS服务器询问域名IP,服务器返回IP。如果服务器不知道答案,会引导客户端到另一个DNS服务器查询。

2、递归查询

客户端向DNS服务器发送一个查询请求,服务器返回IP或者错误提示(当服务器不能给出正确答案或者域名不存在时返回错误提
注意:在递归查询中,DNS服务器不能将客户端引导到其他DNS服务器,但它本身可以向其他DNS服务器查询。

3、反向查询

通过IP地址查询域名
在这里插入图片描述

四、DNS解析过程

举例演示整个查询过程:
假定域名为m.xyz.com的主机想知道另一个主机y.abc.com的IP地址。
例如,主机m.xyz.com打算发送邮件给y.abc.com。这时就必须知道主机y.abc.com的IP地址。
1、主机m.abc.com先向本地服务器dns.xyz.com进行递归查询
2、本地服务器采用迭代查询。它先向一个根域名服务器查询。
3、根域名服务器告诉本地服务器,下一次应查询的顶级域名服务器dns.com的IP地址。
4、本地域名服务器向顶级域名服务器dns.com进行查询。
5、顶级域名服务器dns.com告诉本地域名服务器,下一步应查询的权限服务器dns.abc.com的IP地址。
6、本地域名服务器向权限域名服务器dns.abc.com进行查询。
7、权限域名服务器dns.abc.com告诉本地域名服务器,所查询的主机的IP地址。
8、本地域名服务器最后把查询结果告诉m.xyz.com。

五、DNS缓存

上述解析过程共用到了8个UDP报文。
为了提高DNS查询效率,并减轻服务器的负荷和减少因特网上的DNS查询报文数量,在域名服务器中广泛使用了高速缓存,用来存放最近查询过的域名以及从何处获得域名映射信息的记录。
例如,在上面的查询过程中,如果在m.xyz.com的主机上不久前已经有用户查询过y.abc.com的IP地址,那么本地域名服务器就不必向根域名服务器重新查询y.abc.com的IP地址,而是直接把告诉缓存中存放的上次查询结果(即y.abc.com的IP地址)告诉用户。

DNS服务器在解析过程中会缓存接收到的所有消息,高速缓存中的每条记录都包含生存时间TTL,TTL记录反应了DNS记录在缓存中保留的时间。
1、如果客户端查询命中了服务器缓存,服务器返回的TTL则是当前TTL的剩余时间。
2、当权限服务器响应一个不存在的查询记录时,会返回一个负的TTL值来表示该项记录不存在。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值