一:DNS解析流程图
二:DNS解析流程
1 客户端用户在浏览器访问www.baidu.com,系统会先查找本地的dns缓存以及host文件,确定是否存在www.baidu.com域名对应的IP解析记录,如果有就直接获得到IP地址,然后去访问这个IP地址对应的www.baidu.com域名的服务器,一般第一次请求时,DNS缓存是没有解析记录的,而hosts多为内部临时测试使用
2 如果客户端本地DNS缓存及本地hosts文件没有www.baidu.com域名对应的解析记录,那么系统会把浏览器的解析请求发送给在客户端设置的DNS服务器地址进行解析,通常称这个DNS为LDNS,既local DNS,如果LDNS服务器的本地缓存有对应的解析记录就会直接返回给IP地址给客户端;如果没有,LDNS会负责继续请求其他的DNS服务器
3 LDNS从DNS系统的(".")根开始请求对www.baidu.com域名解析,根DNS服务器在全球一共有13台,根服务器下面没有www.baidu.com域名解析记录的,但是根下面www.baidu.com对应的顶级域名.com的解析记录,因此,根会把.com对应的DNS服务器地址返回给LDNS
4 LDNS获得到.com对应的DNS服务器地址后,就会去.com的服务器请求www.baidu.com的域名解析,而.com服务器下面也没有www.baidu.com域名对应的解析记录,但是有baidu.com的域名的解析记录,因此,.com服务器会把baidu.com
对应的DNS服务器地址返回给LDNS
5 同理,LDNS获取到baidu.com对应的DNS服务器地址后,就会去baidu.com服务器请求对应www.baidu.com域名解析,baidu.com对应的DNS服务器就是该域名授权DNS服务器,这个DNS服务器正是企业购买域名时用于管理解析的服务器,这个服务器会有www.baidu.com对应的解析记录,如果没有就表示企业还没有对这个域名做解析
6 baidu.com域名DNS服务器会把www.baidu.com对应的ip解析记录发给LDNS
7 LDNS把来自授权DNS服务器的与www.baidu.com对应的IP地址解析记录发送给客户端浏览器,并且LDNS会在本地把域名和IP对应的解析记录缓存起来,以便下一次更快的返回相同解析请求的记录,到这里整个DNS的解析流程就完成了