我希望你們中的一個人能幫助我。我在英國的 ISP (Virgin Media) 正在快取 DNS 設定。
我更改任何網域的名稱伺服器和/或 DNS 設定。如果我使用whatsmydns.net,我可以看到設定已在通常大約 6 小時的時間內完全傳播。在這種情況下,如果我關閉 Wi-Fi,我可以在手機上看到新的託管,但如果我透過家庭 Wi-Fi 連線並使用我的 ISP,我會看到舊網站。這種情況似乎持續了大約 4 天。
如果我對網站進行更改,那麼我可以看到這些更改,但我只是看不到刷新後的 DNS。
有其他人經歷過嗎?這對我來說真的很煩人,因為我經常更改 DNS 設置,而且我必須不斷檢查我的手機以查看更改的更新結果。
答案1
身為 Virgin Media(英國)的用戶,我可以證明他們糟糕的 DNS 管理。另一方面,DNS 快取非常常見;即時 DNS 配置在任何地方都不存在(也就是說,除非您有一個帶有內部名稱伺服器的 Intranet)。 DNS 快取的典型延遲是幾個小時。
另一方面,絕對沒有什麼可以強迫您使用 ISP 的 DNS 伺服器(實際上,一些 ISP 確實為您提供完全鎖定的設備並不允許UDP
資料包通過,但 Virgin Media 的情況並非如此)。您絕對應該使用您信任的名稱伺服器,而不是您的 ISP 強加的名稱伺服器。
我將在本範例中使用的名稱伺服器是 Google 的名稱伺服器(8.8.8.8
和8.8.4.4
)。您有兩種設定選項:
設定路由器DNS
如果您的路由器有 DNS 設定選項,請使用它們,並將它們設為8.8.8.8
和8.8.4.4
。您的路由器為您的機器提供所有DHCP
參數,DNS 伺服器也在這些參數範圍內。
如果你像我一樣使用最新的 Virgin Media超樞紐,則無法變更路由器的 DNS 設定。解決這個問題的一種方法是配置虛擬機器超級中心作為調製解調器並使用另一個路由器作為有效路由器。但這需要您擁有/購買額外的路由器。
在您的電腦上設定 DNS 解析器
如果您無法重新設定路由器提供給您的名稱伺服器,您可以設定您的電腦將使用的名稱伺服器。對於 U&L 網站來說,您的問題與主題無關,因為它沒有明確詢問任何與 UNIX 相關的內容。然而,鑑於我們在 U&L 上,我假設您在 *nix 機器上。
DNS解析器配置在該/etc/resolv.conf
檔案中,該檔案需要編輯如下:
nameserver 8.8.8.8
nameserver 8.8.4.4
DCHP
然而,如果您只是編輯該文件,則該配置將被任何現代 *nix 系統上的服務覆蓋。您還需要將DHCP
服務設定為在從路由器檢索 DNS 資訊時不更新該資訊。DHCP
當今最常見的服務是透過dhcpcd
套餐提供的(我相信)。
若要設定dhcpcd
為忽略從路由器取得的 DNS 資訊(而不是覆蓋resolv.conf
),您需要確保該檔案/etc/dhcpcd.conf
沒有未註解的行,如下所示:
option domain_name_servers
option
請注意,可以在 內部的一行上設定多個s /etc/dhcpcd.conf
。您需要確保domain_name_servers
不存在於任何以 開頭的行中option
。