DNS緩存


有DNS的地方,就有緩存。

瀏覽器、操作系統、Local DNS、根域名服務器,它們都會對DNS結果做一定程度的緩存。本文總結一些常見的瀏覽器和操作系統的DNS緩存時間。

1 操作系統的DNS緩存

 

1.1 windows

windows DNS緩存的默認值是 MaxCacheTTL,見這里,它的默認值是86400s,也就是一天。它是TTLu 這篇文章列出了一些瀏覽器的DNS緩存時間。

瀏覽器DNS緩存的時間跟ttl值無關,每種瀏覽器都使用一個固定值。

1.2 macOS

macOS 嚴格遵循DNS協議中的TTL

2 瀏覽器的DNS緩存

瀏覽器為了提高響應時間,也會緩存DNS記錄。

這篇文章 列出了一些瀏覽器的DNS緩存時間

瀏覽器DNS緩存時間跟TTL無關,每種瀏覽器都有一個固定值

2.1 chrome

為了加快訪問速度,Google Chrome瀏覽器采用了預提DNS記錄,在本地建立DNS緩存的方法,加快網站的連接速度。

chrome://net-internals/#dns 這里可以看各域名的DNS 緩存時間。chrome對每個域名會默認緩存60s。

2.2 IE

IE將DNS緩存30min。見這里

2.3 firefox

Firefox有dns緩存功能,但是默認緩存時間只有1分鍾,可以通過修改該默認值加快DNS解析速度,方法如下:

打開一個新的窗口,地址欄輸 入 about:config,回車,進入設置界面。然后搜索 network.dnsCacheExpiration ,把原來的60改成 6000(表示緩存6000秒),再搜索network.dnsCacheEntries 把默認的20改成1000(表示緩存1000條)。如果沒 有上面兩個項目,新建它們即可,

新建條目類型為整數型。 當然也可以按照需要設置成其它的值。

2.4 safari

約為10s

3 瀏覽器對DNS解析結果的處理

如果一個域名的DNS解析結果會有多個的話,瀏覽器是如何處理的呢?

Chrome瀏覽器會優先向第一個IP發起HTTP請求,如果不通,再向后面的IP發起HTTP請求。

Date: 2014-11-21T17:13+0800

Author: CobbLiu

Org version 7.9.3f with Emacs version 24


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2024 CODEPRJ.COM