客户机需要进行域名请求解析,从域名解析请求的发出,到最后实现域名解析,其过程主要分为两部分:
客户机域名解析顺序
客户机解析过程其顺序如下:首先查看本地DNS缓存
是否有相关的历史记录,如果没有的话,再查看本地HOSTS文件
有没有相对应的记录,如果还是没有,则向本地TCP/IP配置中的首选的DNS服务器
的DNS服务器查询,如果”首选DNS服务器”也没有对应的记录,则会向备用DNS服务器
查询。其查询顺序主要分为三步:”本地DNS缓存”,”本地HOSTS文件”,”DNS服务器”。
服务器域名解析顺序
DNS服务器收到客户端的DNS解析请求后,首先查看本身DNS服务器
的区域里有没有被查询的区域,如果有,则在此区域内查找对应的主要记录;如果DNS服务器缓存中存在对应的DNS记录缓存
,也会向客户端提供解析;假设DNS服务器没有对应区域也没有对应的缓存记录,如果DNS服务器配置了转发器,则会向转置的DNS服务器发出域名解析请求,如果没有配置DNS转发器,则会向根DNS服务器
发出域名解析请求,再由根DNS服务器逐级向下转发相关查询命令。
DNS解析顺序具体案例描述
一台计算机访问Internet的DNS解析过程是(以访问www.baidu.com站点为例),首先查看当前计算机的DNS缓存
里有没有www.baidu.com这条记录;如果没有,再查看当前计算机的hosts
文件,hosts
文件位于C:\WINDOWS\system32\drivers\etc\
(linux路径/etc/
)目录当中;如果hosts文件中没有,就接着查找当前DNS服务器
里有没有www.baidu.com这条记录;如果还是没有,看当前的DNS服务器有没有配置DNS转发器,如果配置了DNS转发器就查找它的上一级DNS服务器,如果没有配置DNS转发器,就直接查找DNS“根”服务器
。查找到DNS“根”服务器后,“根”服务器将DNS请求转到“.com”
域中,“.com”域再将请求转到“baidu”
域中,然后在“baidu”域查找www的A记录,这样一个DNS解析过程就完成了。