什么是DNS域名解析?
因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,得到该主机名对应的IP地址的过程叫做域名解析。
正向解析:根据域名查询IP地址,是DNS基本也是常用的功能
反向解析:根据IP地址查询域名,不常用
1、缓存检查
浏览器会首先搜索浏览器自身的DNS缓存,缓存时间较短,,且只能容纳1000条缓存,看自身的缓存中是否有对应的条目,而且没有过期,如果有且没有过期则解析到此结束。
2、操作系统缓存检查
如果浏览器的缓存里没有找到对应的条目,操作系统也会有一个域名解析的过程,那么浏览器先搜索操作系统的DNS缓存中是否有这个域名对应的解析结果,如果找到且没有过期则停止搜索,解析到此结束。
3、本地域名服务器解析
如果在文件中也没有找到对应的条目,浏览器会发起一个DNS的系统调用,会向本地配置的DNS服务器发起域名解析请求。
4、根域名服务器解析
如果没有找到对应的条目,则由运营商的DNS代我们的浏览器发起迭代DNS解析请求。它首先是会找根域的DNS的IP地址,找到根域的DNS地址,就会向其发起请求。然后根域名服务器返回给本地域名服务器一个所查询域的主域名服务器地址。
5、主域名服务器
本地域名服务器再向上一步返回的gTLD服务器发送请求。接受请求的gTLD服务器查找并返回此域名对应的域名服务器的地址,这个通常就是你注册的域名服务器,例如你在某个域名服务提供商申请的域名,那么这个域名解析任务就由这个域名提供商的服务器来完成。域名服务器会查询存储的域名和IP的映射关系表,正常情况下都根据域名得到目标IP记录,连同一个TTL值返回给域名服务器。
总结