浏览器的DNS缓存

在了解URL请求到底发生了什么时接触到DNS缓存,翻寻了几篇文章,记录下新的知识点。有dns的地方,就有缓存。浏览器、操作系统、Local DNS、根域名服务器,它们都会对DNS结果做一定程度的缓存。本文总结一些常见的浏览器和操作系统的DNS缓存时间

浏览器先查询自己的缓存,查不到,则调用域名解析函数库对域名进行解析,以得到此域名对应的IP地址

DNS查询顺序:浏览器缓存→系统缓存→路由器缓存→ISP DNS 缓存→递归搜索

1、chrome:

为了加快访问速度,Google Chrome浏览器采用了预提DNS记录,在本地建立DNS缓存的方法,加快网站的连接速度。chrome://net-internals/#dns 这里可以看各域名的DNS 缓存时间。chrome对每个域名会默认缓存60s。

在url地址栏输入chrome://chrome-urls/可以看到chrome所有的配置界面;

浏览器的DNS缓存_第1张图片
image.png

选择chrome://dns或者chrome://net-internals/#dns可以查看chrome浏览器的dns缓存信息
浏览器的DNS缓存_第2张图片
image.png

浏览器的DNS缓存_第3张图片
image.png

点击“Clear host cache”+然后选择"clear cache"和 " flush socket",可以清空chrome的dns缓存

2、firefox:

配置含义:

network.dnsCacheEntries:缓存的数量

network.dnsCacheExpiration:dns缓存的时间

network.dnsCacheExpirationGracePeriod:dns缓存的时间,设置为0表示不缓存

浏览器的DNS缓存_第4张图片
image

3、浏览器对DNS解析结果的处理

如果一个域名的DNS解析结果会有多个的话,浏览器是如何处理的呢?Chrome浏览器会优先向第一个IP发起HTTP请求,如果不通,再向后面的IP发起HTTP请求

部分文章摘自博客https://www.cnblogs.com/insane-Mr-Li/p/11271619.html
,如有侵权请联系删除

你可能感兴趣的:(浏览器的DNS缓存)