目录
一、概述
1、作用
2、连接方式
3、因特网的域名结构
1)拓扑
2)分类
3)域名服务器类型划分
二、DNS域名解析过程
1、分类
递归解析
迭代解析
2、解析图
域名解析:DNS服务将域名解析成相应的IP地址。
正向解析:域名->IP
反向解析:IP->域名
域名管理:DNS服务管理互联网上的所有域名,包括注册、续费、修改、删除等操作。
负载均衡:DNS服务可以将请求分发到不同的服务器上,实现负载均衡和高可用性
——DNS使用53端口监听网络
——查看方法:DNS默认以UDP这个较快速的数据传输协议来查询,但没有查询到完整的信息时,就会再次以TCP协议重 新查询则启动DNS时,会同时启动TCP以及UDP的port53
——采用层次树状结构的命名方法
域名(domain name):任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名称
域(domain):是名字空间中一个可被管理的划分结构。
国家顶级域名(采用ISO3166的规定,如:cn代表中国,us代表美国,uk代表英国)
通用顶级域名(常用7个)
com (公司企业) net (网络服务机构) org (非营利组织) int (国际组织)
gov (美国的政府部门) mil (美国的军事部门) edu(教育机构)
基础结构域名(infrastructure domain)
——arpa,用于反向域名解析,因此称为反向域名
根域名服务器:最高层次的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址。根域名服务器并不直接把待查询的域名直接解析出IP地址,而是告诉本地域名服务器下一步 应当找哪一个顶级域名服务器进行查询。
顶级域名服务器:负责管理在该顶级域名服务器注册的二级域名
权威域名服务器:负责一个“区”的域名服务器
本地域名服务器:本地域名服务器不属于域名服务器的层次结构,当主机发出DNS查询时,这个查询报文 就发送给本地域名服务器
为了提高域名服务器的可靠性,DNS域名服务器都把数据复制到几个域名服务器来保存:
主服务器:在特定区域内具有唯一性,负责维护该区域内的域名与 IP 地址之间的对应关系(真正干活的)
从服务器:从主服务器中获得域名与 IP 地址的对应关系并进行维护,以防主服务器宕机等情况(打下手的)
缓存服务器:通过向其他域名解析服务器查询获得域名与 IP 地址的对应关系,并将经常查询的域名 信息保存到服务器本地,以此来提高重复查询时的效率,一般部署在企业内网的网关位置,用于加速 用户的域名查询请求
DNS 服务器在收到用户发起的请求时,必须向用户返回一个准确的查询结果。如果 DNS 服务器本地没有存储与之对应的信息,则该服务器需要询问其他服务器,并将返回的查询结果提交给用户
DNS 服务器在收到用户发起的请求时,并不直接回复查询结果,而是告诉另一台 DNS 服务器的地址,用户再向这台 DNS 服务器提交请求,依次反复,直到返回查询结果
从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间使用的交互查询就是迭代查询
第一步:在浏览器中输入www . google .com 域名,本地电脑会检查浏览器缓存中有没有这个域名对应的解析过的 IP 地址,如果缓存中有,这个解析过程就结束。
第二步:如果浏览器缓存中没有数据,浏览器会查找操作系统缓存中是否有这个域名对应的 DNS 解析结果。
第三步:前两步是在本地电脑上完成的,若无法解析时,就要用到我们网络配置中的 "DNS 服务器地址" 了。操作系统会把这个域名发送给这个本地 DNS 服务器。
第四步:如果本地 DNS 服务器仍然没有命中,就直接到根 DNS 服务器请求解析。
第五步:根 DNS 服务器返回给本地 DNS 域名服务器一个顶级 DNS 服务器地址。
第六步:本地 DNS 服务器再向上一步获得的顶级 DNS 服务器发送解析请求。
第七步:接受请求的顶级 DNS 服务器查找并返回此域名对应的 Name Server 域名服务器的地址。
第八步:返回该域名对应的 IP 和 TTL 值,本地 DNS 服务器会缓存这个域名和 IP 的对应关系,缓存时间 由 TTL 值控制。
第九步:Name Server 服务器收到查询请求后再其数据库中进行查询,找到映射关系后将其IP地址返回给本地DNS服务器。
第十步:本地DNS服务器把解析的结果返回给本地电脑,本地电脑根据 TTL 值缓存在本地系统缓存中。