DNS緩存是一個臨時數據庫,用于存儲已解釋的DNS查詢信息。換句話說,每當您訪問網站時,您的操作系統和網絡瀏覽器都會保留域名和相應IP地址的記錄。
這消除對遠程DNS服務器重復查詢,并允許您的操作系統或瀏覽器快速解析網站的域名。
但是在某些情況下,例如對網絡問題進行故障排除或者在更改DNS地址之后,您可能需要刷新DNS緩存。
這將清除緩存的DNS記錄根據DNS地址解釋域名。在本教程說明如何在Windows , Linux,MacOS操作系統和Web瀏覽器清除DNS緩存。
Windows 清除DNS緩存
對于所有Windows版本,清除DNS緩存的過程都是相同的。您需要使用管理員權限打開命令提示符CMD并運行命令ipconfig /flushdns
。
例如在Windows 10清除DNS緩存。首先在Windows 10搜索欄鍵入cmd。右鍵單擊命令提示符
,然后右擊以管理員身份運行
。這將打開命令提示符
窗口。
在命令提示符
窗口,鍵入命令ipconfig /flushdns
,然后按Enter
。成功后,系統將返回消息Successfully flushed the DNS Resolver Cache.
。
ipconfig /flushdns
Linux 清除DNS緩存
在Linux,除非你已安裝并運行Systemd-Resolved,DNSMasq或Nscd之類的緩存服務,否則操作系統不會緩存DNS解釋結果。
根據Linux發行版和所使用的緩存服務,清除DNS緩存的過程有所不同。大多數de Linux發行版,例如Ubuntu 18.04之后都使用Systemd-Resolved服務緩存DNS記錄。
如果你的Linux發行版使用systemd作為初始化服務,可以運行命令sudo systemctl is-active systemd-resolved.service
確定Systemd-Resolved服務是否正在運行。
如果Systemd-Resolved服務正在運行,命令將會打印active
,否則命令打印inactive
。
如果Systemd-Resolved服務正在運行,則可以運行命令sudo systemd-resolve --flush-caches
清除系統DNS緩存。命令不返回任何消息
sudo systemctl is-active systemd-resolved.service
Dnsmasq是輕量級的DHCP和DNS緩存服務器。如果您的系統使用DNSMasq作為緩存服務器。
要清除DNS緩存,則需要重新啟動Dnsmasq服務,運行命令sudo systemctl restart dnsmasq.service
。
sudo systemctl restart dnsmasq.service
Nscd是一個緩存守護程序,它是基于RedHat發行版首選DNS緩存系統。如果你的Linux發行版使用Nscd來緩存DNS記錄,
要清除DNS緩存,則需要重新啟動Nscd服務。運行命令sudo systemctl restart nscd.service
。
sudo systemctl restart nscd.service
MacOS 清除DNS緩存
根據您所運行的版本,在MacOS中刷新緩存的命令略有不同。清除DNS緩存必須以系統管理員權限運行命令。
要清除MacOS DNS緩存,首先打開mac finder。轉到應用程序>程序>終端。這將打開終端窗口。
終端運行命令sudo killall -HUP mDNSResponder
然后按Enter。輸入您的sudo密碼,然后再次按Enter。成功后,系統不會返回任何消息。
早期版本的MacOS,刷新緩存的命令略有不同。MacOS版本10.11和10.9
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
MacOS版本10.10
sudo discoveryutil mdnsflushcache
sudo discoveryutil udnsflushcaches
MacOS版本10.6和10.5
sudo dscacheutil -flushcache
Chrome 瀏覽器清除DNS緩存
現代的Web瀏覽器都有一個內置的DNS客戶端,以防止每次訪問網站時重復查詢DNS解釋IP地址。
要清除Google Chrome瀏覽器DNS緩存。首先打開一個新標簽,然后輸入chrome://net-internals/#dns
在Chrome的地址欄。點擊清除緩存
按鈕。
如果那對您不起作用,請嘗試清除緩存和cookie。按下CTRL+Shift+Del
打開清除瀏覽數據
對話框窗口。
在選擇一個時間范圍。選擇所有時間
以刪除所有內容。選中Cookie和其他站點數據
和緩存的圖像和文件。點擊清除數據
按鈕。方法適用于基于Chromium瀏覽器,包括Vivaldi和Opera。
Firefox 瀏覽器清除DNS緩存
要清除Firefox的DNS緩存。首先在右上角,單擊漢堡包圖標?
打開Firefox的菜單。
點擊? Options (Preferences)
鏈接。單擊左側的隱私和安全性
或隱私
選項卡。向下滾動到該History
部分,然后單擊Clear History...
按鈕。
選擇要清除的時間范圍。選擇所有內容
將會刪除所有內容。選擇所有復選框,然后單擊立即清除
。
如果這對您不起作用,請嘗試以下方法并暫時禁用DNS緩存。打開一個新標簽,然后about:config
在Firefox的地址欄中輸入。
搜索network.dnsCacheExpiration
,將值暫時設置為0,然后單擊確定
。然后,改回默認值,然后單擊確定
。
搜索network.dnsCacheEntries
,將值暫時設置為0,然后單擊確定
。然后,改回默認值,然后單擊確定
。
結論
您已經了解如何在Windows,Linux和MacOS操作系統清除或刷新DNS緩存。Linux和MacOS用戶可以使用dig命令查詢DNS并對DNS問題進行故障排除。
-
Linux
+關注
關注
87文章
11292瀏覽量
209328 -
WINDOWS
+關注
關注
3文章
3541瀏覽量
88623 -
MacOS
+關注
關注
0文章
210瀏覽量
17497 -
DNS
+關注
關注
0文章
218瀏覽量
19828
發布評論請先 登錄
相關推薦
評論