Domain-Name-System

沒有子域 (www) 的虛擬主機的 DNS 設置

  • April 22, 2022

我一直在嘗試尋找一種更優雅的解決方案,以便為我的網路伺服器和我在其上託管的少數網站提供更好的 DNS 更新。

因此,您有一個網路伺服器,例如在 VPS 提供商處,例如域名為apache1.vpshost.com. 如果我希望我的網站有一個域名www.example.com託管在那個網路伺服器上,我可以簡單地把一個 CNAME 記錄放在裡面說www.example.comis apache1.vpshost.com。這樣做的好處是,如果網路伺服器的 IP 地址發生變化,您只需在一個地方進行更新,那里托管的所有網站都會正常執行。

越來越多的人放棄www.從網址,但我知道這樣做的唯一方法是將根 A 記錄設置為相同的 IP 地址,apache1.vpshost.com因為您不能將根 dns 設置為 CNAME。我看到這樣做的主要缺點是,如果網路伺服器的 IP 地址發生變化,那麼您將無法更新所有託管網址上的所有 dns 設置。

我已經嘗試過多次使用Google搜尋,但如果有更好的解決方案,我會迷失在雜草中,因為我的搜尋詞很常見。

目前對於“CNAME at apex”案例沒有好的解決方案。如果 Web 瀏覽器確實支持 DNSSRV記錄,那將不是問題,但它們從來沒有也永遠不會

各種 DNS 提供商提供各種稱為有時ANAMEAPEXCNAMEALIAS或其他的組合。重要的是這裡沒有什麼是標準的。它會以某種方式出現在他們的 UI/API 上,不能按原樣複製到另一個提供商(如果您更改),當然它根本不會出現在 DNS 解析端,因為它們會以某種方式出現(或者當請求到來時動態地,或者通過一些預先填充的記憶體)根據配置為頂點生成A和回复。AAAA

從技術上講,它確實涉及基本上具有權威的名稱伺服器也有點遞歸,因為在某些時候它確實需要將您在“假”中使用的名稱解析CNAME為某個 IP 地址。

這就是為什麼未來的 DNS 記錄會呼叫SVCBHTTPS最終解決這個問題的原因。它們還沒有完全標準化,因為 IETF RFC 仍在編寫中,但它們已經存在於 DNS 中並分配了資源記錄類型,並且各種公司(Apple、Google、CloudFlare 等等)已經在使用它們。

無論如何,我建議只在這個未來萬無一失的標準解決方案上投入時間(因此找到支持它們的 DNS 提供商,並觀察瀏覽器如何/何時使用它們,他們“都”說他們會這樣做),而不是把時間投入到目前的混亂中,因為他們是劣質的,不標準的,並且必然會在上述新 DNS 記錄的幻影中消失。

引用自:https://serverfault.com/questions/1099241