如何在 Linux 上刷新 DNS 緩存

如何在 Linux 上刷新 DNS 緩存

計算機將您訪問的每個網站的記錄保存在“DNS 緩存”中。此緩存的目的是在用戶嘗試訪問域時節省時間;系統不必每次都手動查找。總體而言,DNS 緩存使您的互聯網使用速度更快,這就是為什麼從 macOS、Windows 到 Linux 的幾乎每個操作系統都這樣做的原因。

儘管如此,儘管 DNS 緩存很有用,但有時也會出現問題,例如看到舊網站而不是更新的新網站、無法連接到遠程服務器等。 在 Linux 上解決此類錯誤的好方法計算機是在 Linux 上“刷新”DNS 緩存。當您刷新 DNS 緩存時,它會刷新 DNS 數據庫並清除許多用戶遇到的許多解決問題。

刷新 DNS – Systemd 已解決

在這一點上,大多數 Linux 用戶運行的操作系統內置了 Systemd init 系統。雖然 Systemd 的主題在社區中存在分歧,但有一點是眾所周知的:Systemd 使深入、複雜的操作系統級別的調整和維護比過去容易得多。清除 DNS 緩存時尤其如此。

Systemd 以一種稱為“systemd 解析”的方式處理 DNS 緩存。它是一種標準實用程序,可用於大多數 Linux 操作系統。要確定您的操作系統是否使用 Systemd Resolved 來處理系統上的 DNS 和 DNS 緩存,請按鍵盤上的 Ctrl + Alt + T 或 Ctrl + Shift + T 啟動終端窗口 。之後,在systemd-resolved.service文件上運行 systemctl status 命令。

如何在 Linux 上刷新 DNS 緩存

systemctl 狀態 systemd-resolved.service

在終端窗口中查看 Systemd Resolved 的打印輸出,找到“Active”部分後找到“Active”部分,並確保它旁邊有“active (running)”。如果是,則您的 Linux 系統正在使用它來管理它的 DNS。

要清除 Systemd Resolved 的 DNS 緩存,您需要使用 Systemd Resolved 的內置功能之一。具體來說,  flush caches 命令。它會立即清除 DNS,讓您重新啟動並運行!

sudo systemd-resolved --flush-caches

或者,如果您不能使用sudo,請執行以下操作:

蘇 -

systemd-resolved --flushcaches

一旦您使用了flushcaches命令,系統上的DNS 緩存應該被充分刷新。但是,如果在運行此命令後您仍然遇到一些問題,則完全重新啟動該服務可能是個好主意。為此,請使用systemctl restart命令。

須藤 systemctl 重啟 systemd-resolved.service

不能使用sudo嗎?在嘗試使用 systemd 重新啟動服務之前,使用su以 Root 身份登錄。

su - systemctl restart systemd-resolved.service

當 Systemd-Resolved 完成重新啟動時,所有 DNS 問題都應該得到修復!

刷新 DNS – DNS Masq

DNSMasq 是許多操作系統使用的 Linux 平台的另一種流行的 DNS 解決方案。與 Systemd-Resolved 工具非常相似,用戶可以使用systemctl命令與其交互。要確定您的操作系統是否正在使用 DNSMasq 工具來管理 DNS,請運行 status 命令。

如何在 Linux 上刷新 DNS 緩存

systemctl 狀態 dnsmasq.service

閱讀 systemd 在屏幕上提供的狀態打印輸出。前往讀數的“活動”部分。掃描它並查找“活動(正在運行)”以確認服務處於活動狀態。如果是這種情況,可以使用systemctl restart 命令立即清除 DNSMasq 的 DNS 緩存 。在終端中,輸入以下命令。

須藤 systemctl 重啟 dnsmasq.service

或者,對於那些不能通過sudo使用 systemd 命令的人,請在嘗試重新啟動之前嘗試以 Root 身份登錄。

蘇 -

systemctl 重啟 dnsmasq.service

刷新 DNS – NSCD

NSCD 是大多數基於 RedHat 的 Linux 操作系統的首選 DNS 緩存系統。因此,如果您使用的是 OpenSUSE Linux、CentOS 或類似的東西,您很有可能需要大驚小怪來清除您的 DNS 緩存。

注意:雖然 Fedora Linux 是基於 RedHat 的,但默認情況下它不存儲 DNS 緩存。

要確定您的 Linux 操作系統是否使用 NSCD,您需要使用status命令,因為它是一個 systemd 服務。

如何在 Linux 上刷新 DNS 緩存

systemctl 狀態 nscd.service

在 NSCD 服務上運行 status 命令會給你很多關於它的詳細信息。瀏覽並找到顯示“活動”的部分。如果您的系統正在使用它,您會看到一些綠色文本,上面寫著“活動(正在運行)”。

使用 NSCD 刷新 DNS 緩存的工作方式與使用 systemd 的所有其他緩存系統非常相似。用戶需要做的就是運行systemctl restart命令。它將重新加載服務並自動清除 DNS 緩存,這將解決您可能遇到的任何 DNS 問題。

須藤 systemctl 重啟 nscd.service

或者,如果您的 Linux 操作系統禁止使用sudo運行 systemctl 命令,您可以通過首先使用su登錄到 Root 帳戶來重新啟動該服務。

su - systemctl restart nscd.service


使用 Pano 改進 Gnome Shell 剪貼板

使用 Pano 改進 Gnome Shell 剪貼板

讓我們面對現實吧,默認的 Gnome Shell 剪貼板並不是很好。安裝 Pano 來改善您的剪貼板體驗!

如何在Linux上安裝DaVinci Resolve 17

如何在Linux上安裝DaVinci Resolve 17

您的 Linux 機器需要一個出色的非線性視頻編輯器嗎?使用本指南使用 Davinci Resolve 17!

如何使用壁紙下載器將壁紙下載到 Linux 桌面

如何使用壁紙下載器將壁紙下載到 Linux 桌面

Wallpaper Downloader 是一個靈活的 Linux 壁紙下載和管理器。它支持大多數Linux桌面環境,並且非常易於使用。本指南

如何在計算機上安裝 Tuxedo 操作系統

如何在計算機上安裝 Tuxedo 操作系統

想要通過 Tuxedo 計算機測試 Tuxedo 操作系統嗎?了解如何讓最新版本的 Tuxedo OS 在您的 PC 上運行。

如何在 Linux 上安裝 DEB 文件

如何在 Linux 上安裝 DEB 文件

什麼是 .DEB 文件?你用它做什麼?了解在 Linux PC 上安裝 DEB 文件的多種方法。

如何在 Linux 上玩消逝的光芒

如何在 Linux 上玩消逝的光芒

《消逝的光芒》是一款由 Techland 開發、華納兄弟互動娛樂發行的 2015 年生存恐怖視頻遊戲。遊戲的中心是

如何在計算機上安裝 Neptune Linux

如何在計算機上安裝 Neptune Linux

Neptune 使用 KDE Plasma 5 桌面環境,旨在提供優雅的操作系統。以下是如何在計算機上安裝 Neptune Linux。

嘗試 Ubuntu 的新基於 snap 的桌面

嘗試 Ubuntu 的新基於 snap 的桌面

想嘗試 Ubuntu 的新的基於 snap 包的桌面操作系統嗎?通過本指南了解如何將其部署在虛擬機上。

如何在 Linux 上玩《傳說之下》

如何在 Linux 上玩《傳說之下》

Undertale 是一款 2015 年 2D 獨立角色扮演遊戲,由遊戲開發商 Toby Fox 開發和發行。本指南將介紹在您的電腦上下載和安裝 Undertale

如何在 Linux 上玩《全面戰爭:三個王國》

如何在 Linux 上玩《全面戰爭:三個王國》

《全面戰爭:三個王國》是一款由 Creative Assembly 開發的回合製策略 RTS 遊戲。下面是如何在 Linux 上玩遊戲。