有两次面试都被问到了这个问题,答得都不太好。正好现在找个机会好好整理下。
访问网页的过程
一、DNS域名解析
DNS,全称Domain Name System,即域名解析系统。通过主机域名,最终得到该主机名对应的IP地址的过程叫做域名解析。
域名:www.baidu.com ——DNS——IPV4:180.76.76.76。
DNS协议运行在UDP协议上,使用端口号53。
主机进行DNS解析前需要的配置:(1)主机IP地址。(2)子网掩码。(3)网关。(4)DNS服务器。
1.主机解析域名的查找顺序
(1)缓存
(2)本机中的hosts文件
(3)DNS服务器
2.DNS服务器递归查找过程
(1)操作系统将请求的域名发送至LDNS(本地域名服务器)。(Windows系统下可以通过ipconfig命令查看,LDNS承担了80%的域名解析)
(2)若未查找到,接到Root Server 根域名服务器请求解析。
(3)根域名服务器返回给本地域名服务器一个所查询的主域名服务器(gTLD Server)地址,gTLD Server:国际顶级域名服务器,共有13台左右包括(cn、com、org等)
(4)本地域名服务器(Local DNS Server)再想上一步返回的gTLD Server发送请求。
(5)gTLD Server返回查询的对应域名的Name Server域名服务器地址,这个就是我们平时注册域名的服务器。
(6)Name Server会查询存储的域名与IP地址的映射关系表,连同一个TTL值返回给DNS Server域名解析服务器。
(7)返回该域名对应的IP和TTL值,由Local DNS Server来缓存,缓存时间由TT