主流操作系统/浏览器的DNS默认缓存时间

DNS默认缓存时间是多少?大家都知道Windows操作系统有DNS缓存 , 可以加速网址解析 , 从而提高网站的访问速度 。不过DNS的缓存时间是有限的 , 而且不同的操作系统、浏览器 , DNS默认的缓存时间也是不同的 , 下面小编给大家总结了一些操作系统及浏览器的DNS缓存时间 。

主流操作系统/浏览器的DNS默认缓存时间

文章插图
什么是DNS缓存?
当你第一次访问 163.com , DNS返回了正确的IP之后 , 系统就会将这个结果临时储存起来 , 这就是DNS缓存 。并且它会为缓存设定一个失效时间 (例如N小时) , 在这N小时之内 , 当你再次访问这个网站时 , 系统就会直接从你电脑本地的DNS缓存中把结果交还给你 , 而不必再去询问DNS服务器 , 变相“加速”了网址的解析 。当然 , 在超过N小时之后 , 系统会自动再次去询问DNS服务器获得新的结果 。
一些常见的浏览器和操作系统的DNS缓存时间如下:
一、操作系统的DNS缓存
1、Windows
Windows DNS缓存的默认值是 MaxCacheTTL , 在这里 , 它的默认值是86400s , 也就是一天 。
2、macOS
macOS 严格遵循DNS协议中的TTL
二、浏览器的DNS缓存
浏览器为了提高响应时间 , 也会缓存DNS记录 。
浏览器DNS缓存时间跟TTL无关 , 每种浏览器都有一个固定值 。
以下列出了一些浏览器的DNS缓存时间:
1、Chrome
为了加快访问速度 , Google Chrome浏览器采用了预提DNS记录 , 在本地建立DNS缓存的方法 , 加快网站的连接速度 。
chrome://net-internals/#dns 这里可以看各域名的DNS 缓存时间 。Chrome对每个域名会默认缓存60s 。
2、IE
【主流操作系统/浏览器的DNS默认缓存时间】IE将DNS缓存30min 。
3、Firefox
Firefox有DNS缓存功能 , 但是默认缓存时间只有1分钟 , 可以通过修改该默认值加快DNS解析速度 , 方法如下:
打开一个新的窗口 , 地址栏输 入 about:config , 回车 , 进入设置界面 。然后搜索 network.dnsCacheExpiration , 把原来的60改成6000(表示缓存6000秒) , 再搜索network.dnsCacheEntries 把默认的20改成1000(表示缓存1000条) 。如果没有上面两个项目 , 新建它们即可 , 新建条目类型为整数型 。当然也可以按照需要设置成其它的值 。
4、afari
约为10s
三、浏览器对DNS解析结果的处理
如果一个域名的DNS解析结果会有多个的话 , 浏览器是如何处理的呢?
Chrome浏览器会优先向第一个IP发起HTTP请求 , 如果不通 , 再向后面的IP发起HTTP请求 。
Date: 2014-11-21T17:13 0800
Author: CobbLiu
Org version 7.9.3f with Emacs version 24
以上小编给大家罗列了一些常见的浏览器及操作系统的DNS缓存时间 , 有兴趣的伙伴 , 可以阅读上文进行了解 。

    推荐阅读