从输入网址到访问页面——浏览器和服务器做了什么?这是一个值得探究的问题
当我们把网址输入到浏览器的地址栏之后,之后要做的事就是等待,然而在这一秒钟等待的过程,发生了什么?
首先,当浏览器拿到输入的URL时,它开始查找URL的IP地址,查找IP地址势必要用到DNS,那么把话语权交给DNS。
DNS查找过程如下:
1. 浏览器缓存——浏览器会缓存DNS记录一段时间,这个时候,操作系统是不会告诉浏览器存储DNS记录的时间,这样不同的浏览器会存储一个自固定的时间(一般2到30分钟)
2. 系统缓存——当在浏览器缓存中找不到需要的记录时,浏览器会调用系统中的windows下的getthostbyname,这便是系统缓存中的记录
3. 路由缓存——前面在做查询,查询请求会发向路由器,它一般会有自己的DNS缓存
4. ISP DNS缓存——接下来就是ISP缓存DNS服务器,一般都能找到相应的缓存记录
5. 递归搜索——ISP的DNS服务器从根域名服务器开始进行递归搜索,从顶级域名.com域名服务器中的域名进行匹配
可能有点不好理解,那么把他们归成概念简便一些
-
浏览器输入地址栏
-
浏览器会先查看浏览器缓存–系统缓存–路由缓存,如果缓存存在,就直接显示。如果没有,跳到第三