編輯

共用方式為


Azure DNS 私人解析器

Azure DNS
Azure ExpressRoute
Azure 防火牆
Azure 虛擬網路
Azure VPN 閘道

本文提供使用 Azure DNS 私人解析程式來簡化混合式遞歸域名系統 (DNS) 解析的解決方案。 您可以針對內部部署工作負載和 Azure 工作負載使用 DNS 私人解析程式。 DNS 私人解析程式可簡化從內部部署到 Azure 私人 DNS 服務的私人 DNS 解析,反之亦然。

架構

下列各節提供混合式遞歸 DNS 解析的替代方案。 第一節討論使用 DNS 轉寄站虛擬機 (VM) 的解決方案。 後續章節說明如何使用 DNS 私人解析程式。

使用 DNS 轉寄站 VM

在 DNS 私人解析程式可供使用之前,已部署 DNS 轉寄站 VM,讓內部部署伺服器可以將要求解析至 Azure 私人 DNS 服務。 下圖說明此名稱解析的詳細數據。 內部部署 DNS 伺服器上的條件式轉寄站會將要求轉送至 Azure,而私人 DNS 區域會連結到虛擬網路。 接著,對 Azure 服務的要求會解析為適當的私人 IP 位址。

在此解決方案中,您無法使用 Azure 公用 DNS 服務來解析內部部署功能變數名稱。

顯示沒有 DNS 私人解析程式的解決方案的架構圖表。從內部部署伺服器到 Azure 資料庫的流量是可見的。

下載此架構的 PowerPoint 檔案

工作流程

  1. 用戶端 VM 會將 azsql1.database.windows.net 的名稱解析要求傳送至內部部署內部 DNS 伺服器。

  2. 條件式轉寄站是在內部 DNS 伺服器上設定。 它會將 DNS 查詢 database.windows.net 轉送至 10.5.0.254,這是 DNS 轉寄站 VM 的位址。

  3. DNS 轉寄站 VM 會將要求傳送至 168.63.129.16,這是 Azure 內部 DNS 伺服器的 IP 位址。

  4. Azure DNS 伺服器會將 azsql1.database.windows.net 的名稱解析要求傳送給 Azure 遞歸解析程式。 解析程式會以標準名稱 (CNAME) azsql1.privatelink.database.windows.net 回應。

  5. Azure DNS 伺服器會將 azsql1.privatelink.database.windows.net 的名稱解析要求傳送至私人 DNS 區域 privatelink.database.windows.net。 私人 DNS 區域會以私人 IP 位址 10.5.0.5 回應。

  6. 將 CNAME azsql1.privatelink.database.windows.net 與記錄 10.5.0.5 產生關聯的回應會抵達 DNS 轉寄站。

  7. 回應會抵達內部部署內部 DNS 伺服器。

  8. 回應會抵達用戶端 VM。

  9. 用戶端 VM 會建立私人連線至使用 IP 位址 10.5.0.5 的私人端點。 私人端點會提供用戶端 VM 與 Azure 資料庫的安全連線。

如需詳細資訊,請參閱 Azure 私人端點 DNS 設定

使用 DNS 私人解析程式

使用 DNS 私人解析器時,不需要 DNS 轉寄站 VM,且 Azure DNS 能夠解析內部部署網域名稱。

下列解決方案會在中樞輪輻網路拓撲中使用 DNS 私人解析程式。 作為最佳做法,Azure 登陸區域設計模式建議使用此類型的拓撲。 使用 Azure ExpressRouteAzure 防火牆 建立混合式網路連線。 此設定提供 安全的混合式網路。 DNS 私人解析程式會部署到輪輻網路(如本文圖表中的共用服務網路)。

此架構圖顯示連線至 Azure 中樞和輪輻網路的內部部署網路。DNS 私人解析程式位於中樞網路中。

下載此架構的 PowerPoint 檔案

DNS 私人解析程式解決方案元件

使用 DNS 私人解析程式的解決方案包含下列元件:

  • 內部部署網路。 此客戶數據中心網路會透過 ExpressRoute 或站對站 Azure VPN 閘道 連線連線至 Azure。 網路元件包含兩部本機 DNS 伺服器。 其中一個使用IP位址192.168.0.1。 另一個使用 192.168.0.2。 這兩部伺服器都是內部部署網路內所有計算機的解析程式或轉寄站。

系統管理員會在這些伺服器上建立所有本機 DNS 記錄和 Azure 端點轉寄站。 條件式轉寄站會在這些伺服器上針對 Azure Blob 儲存體 和 Azure API 管理 服務進行設定。 這些轉寄站會將要求傳送至 DNS 私人解析程式輸入連線。 輸入端點會使用IP位址10.0.0.0.8,並裝載於共用服務虛擬網路內(子網10.0.0.0/28)。

下表列出本機伺服器上的記錄。

網域名稱 IP 位址 記錄類型
App1.onprem.company.com 192.168.0.8 地址對應
App2.onprem.company.com 192.168.0.9 地址對應
blob.core.windows.net 10.0.0.8 DNS 轉送子
azure-api.net 10.0.0.8 DNS 轉送子
  • 中樞網路。

    • VPN 閘道 或 ExpressRoute 連線用於與 Azure 的混合式連線。
    • Azure 防火牆 提供受控防火牆即服務。 防火牆實例位於自己的子網中。
  • 共用服務網路。

    • DNS 私人解析程式會部署在自己的虛擬網路中(與部署 ExpressRoute 閘道的中樞網路分開)。 下表列出針對 DNS 私人解析程式所設定的參數。 針對 App1 和 App2 DNS 名稱,會設定 DNS 轉送規則集。
    參數 IP 位址
    虛擬網路 10.0.0.0/24
    輸入端點子網 10.0.0.0/28
    輸入端點IP位址 10.0.0.8
    輸出端點子網 10.0.0.16/28
    輸出端點IP位址 10.0.0.19
    • 共用服務虛擬網路 (10.0.0.0.0/24) 會連結至 Blob 記憶體和 API 服務的私人 DNS 區域。
  • 輪輻網路。

    • VM 裝載於所有輪輻網路中,以測試及驗證 DNS 解析。
    • 所有 Azure 輪輻虛擬網路都會使用 IP 位址 168.63.129.16 的預設 Azure DNS 伺服器。 所有輪輻虛擬網路都會與中樞虛擬網路對等互連。 所有流量,包括來自 DNS 私人解析程式的流量,都會透過中樞路由傳送。
    • 輪輻虛擬網路會連結至私人 DNS 區域。 此群組態可讓您解析私人端點連結服務的名稱,例如 privatelink.blob.core.windows.net

內部部署 DNS 查詢的流量流程

下圖顯示當內部部署伺服器發出 DNS 要求時所產生的流量流程。

當內部部署伺服器查詢 Azure 私人 DNS 服務記錄時,顯示 DNS 私人解析程式名稱解析流量的架構圖表。

下載此架構的 PowerPoint 檔案

  1. 內部部署伺服器會查詢 Azure 私人 DNS 服務記錄,例如 blob.core.windows.net。 要求會傳送至IP位址192.168.0.1或192.168.0.2的本機 DNS 伺服器。 所有內部部署計算機都指向本機 DNS 伺服器。

  2. 本機 DNS 伺服器上的條件式轉寄站,用於 blob.core.windows.net 將要求轉送至 IP 位址 10.0.0.8 的 DNS 解析程式。

  3. DNS 解析程式會查詢 Azure DNS,並接收 Azure 私人 DNS 服務虛擬網路連結的相關信息。

  4. Azure 私人 DNS 服務會解析透過 Azure 公用 DNS 服務傳送至 DNS 解析程序輸入端點的 DNS 查詢。

VM DNS 查詢的流量流程

下圖顯示 VM 1 發出 DNS 要求時所產生的流量流程。 在此情況下,輪輻 1 輪輻虛擬網路會嘗試解析要求。

架構圖表,顯示輪輻 VM 發出 DNS 要求時,具有 DNS 私人解析程式的名稱解析流量。

下載此架構的 PowerPoint 檔案

  1. VM 1 會查詢 DNS 記錄。 輪輻虛擬網路已設定為使用 Azure 提供的名稱解析。 因此,Azure DNS 會用來解析 DNS 查詢。

  2. 如果查詢嘗試解析私人名稱,則會連絡 Azure 私人 DNS 服務。

  3. 如果查詢不符合連結至虛擬網路的私人 DNS 區域,Azure DNS 會連線到 DNS 私人解析程式。 輪輻 1 虛擬網路具有虛擬網路連結。 DNS 私人解析程式會檢查與輪輻 1 虛擬網路相關聯的 DNS 轉送規則集。

  4. 如果在 DNS 轉送規則集中找到相符專案,DNS 查詢會透過輸出端點轉送至規則集中指定的 IP 位址。

  5. 如果 Azure 私人 DNS 服務 (2) 和 DNS 私人解析程式 (3) 找不到相符的記錄,則會使用 Azure DNS (5) 來解析查詢。

每個 DNS 轉送規則都會指定要用於條件式轉送的一或多個目標 DNS 伺服器。 指定的資訊包括功能變數名稱、目標IP位址和埠。

透過 DNS 私人解析程式進行 VM DNS 查詢的流量流程

下圖顯示當 VM 1 透過 DNS 私人解析程式輸入端點發出 DNS 要求時所產生的流量流程。 在此情況下,輪輻 1 輪輻虛擬網路會嘗試解析要求。

架構圖表,顯示輪輻 VM 發出 DNS 要求時,具有 DNS 私人解析程式的流量。

下載此架構的 PowerPoint 檔案

  1. VM 1 會查詢 DNS 記錄。 輪輻虛擬網路設定為使用 10.0.0.8 做為名稱解析 DNS 伺服器。 因此,DNS 私人解析程式會用來解析 DNS 查詢。

  2. 如果查詢嘗試解析私人名稱,則會連絡 Azure 私人 DNS 服務。

  3. 如果查詢不符合連結至虛擬網路的私人 DNS 區域,Azure DNS 會連線到 DNS 私人解析程式。 輪輻 1 虛擬網路具有虛擬網路連結。 DNS 私人解析程式會檢查與輪輻 1 虛擬網路相關聯的 DNS 轉送規則集。

  4. 如果在 DNS 轉送規則集中找到相符專案,DNS 查詢會透過輸出端點轉送至規則集中指定的 IP 位址。

  5. 如果 Azure 私人 DNS 服務 (2) 和 DNS 私人解析程式 (3) 找不到相符的記錄,則會使用 Azure DNS (5) 來解析查詢。

每個 DNS 轉送規則都會指定要用於條件式轉送的一或多個目標 DNS 伺服器。 指定的資訊包括功能變數名稱、目標IP位址和埠。

透過內部部署 DNS 伺服器的 VM DNS 查詢流量

下圖顯示 VM 1 透過內部部署 DNS 伺服器發出 DNS 要求時所產生的流量流程。 在此情況下,輪輻 1 輪輻虛擬網路會嘗試解析要求。

架構圖表,顯示輪輻 VM 發出 DNS 要求時,具有 DNS 私人解析程式的名稱解析流量。

下載此架構的 PowerPoint 檔案

  1. VM 1 會查詢 DNS 記錄。 輪輻虛擬網路設定為使用 192.168.0.1/2 作為名稱解析 DNS 伺服器。 因此,內部部署 DNS 伺服器會用來解析 DNS 查詢。

  2. 要求會傳送至IP位址192.168.0.1或192.168.0.2的本機 DNS 伺服器。

  3. 本機 DNS 伺服器上的條件式轉寄站,用於 blob.core.windows.net 將要求轉送至 IP 位址 10.0.0.8 的 DNS 解析程式。

  4. DNS 解析程式會查詢 Azure DNS,並接收 Azure 私人 DNS 服務虛擬網路連結的相關信息。

  5. Azure 私人 DNS 服務會解析透過 Azure 公用 DNS 服務傳送至 DNS 私人解析程式輸入端點的 DNS 查詢。

元件

  • VPN 閘道 是可用來傳送加密流量的虛擬網路閘道:

    • 透過公用因特網在 Azure 虛擬網路與內部部署位置之間。
    • 透過 Azure 骨幹網路在 Azure 虛擬網路之間。
  • ExpressRoute 會將內部部署網路延伸至Microsoft雲端。 ExpressRoute 會使用連線提供者來建立雲端元件的私人連線,例如 Azure 服務和Microsoft 365。

  • Azure 虛擬網路是私人網路在 Azure 中的基本建置組塊。 透過 虛擬網絡,VM 等 Azure 資源可以安全地彼此通訊、因特網和內部部署網路。

  • Azure 防火牆 會強制執行應用程式和網路連線原則。 此網路安全性服務會集中管理多個虛擬網路和訂用帳戶的原則。

  • DNS 私人解析程式 是一項服務,可橋接內部部署 DNS 與 Azure DNS。 您可以使用此服務從內部部署環境查詢 Azure DNS 私人區域,反之亦然,而不需要部署 VM 型 DNS 伺服器。

  • Azure DNS 是 DNS 網域的託管服務。 Azure DNS 使用 Azure 基礎結構提供名稱解析。

  • Azure 私人 DNS 服務會管理及解析虛擬網路和連線虛擬網路中的功能變數名稱。 當您使用此服務時,無需設定自訂 DNS 解決方案。 當您使用私人 DNS 區域時,可以使用自訂功能變數名稱,而不是 Azure 在部署期間提供的名稱。

  • DNS 轉寄站 是 DNS 伺服器,會將查詢轉送至網路外部的伺服器。 DNS 轉寄站只會轉送無法解析之名稱的查詢。

案例詳細資料

Azure 提供各種 DNS 解決方案:

  • Azure DNS 是 DNS 網域的託管服務。 根據預設,Azure 虛擬網路會使用 Azure DNS 進行 DNS 解析。 Microsoft管理和維護 Azure DNS。
  • Azure 流量管理員 做為 DNS 型負載平衡服務。 它提供將流量分散到 Azure 區域到公開應用程式的方式。
  • Azure 私人 DNS 服務提供虛擬網路的 DNS 服務。 您可以使用 Azure 私人 DNS 服務區域來解析您自己的功能變數名稱和 VM 名稱,而不需要設定自訂解決方案,也不需要修改您自己的設定。 在部署期間,您可以使用自定義功能變數名稱,而不是使用私人 DNS 區域時 Azure 提供的名稱。
  • DNS 私人解析程式是雲端原生、高可用性、DevOps 友好的服務。 它提供簡單、零維護、可靠且安全的 DNS 服務。 您可以使用此服務,從內部部署網路解析裝載在 Azure DNS 私人區域中的 DNS 名稱。 您也可以將服務用於您自己的功能變數名稱的 DNS 查詢。

在 DNS 私人解析程式可供使用之前,您必須使用自定義 DNS 伺服器進行從內部部署系統到 Azure 的 DNS 解析,反之亦然。 自訂 DNS 解決方案有許多缺點:

  • 管理多個虛擬網路的多個自定義 DNS 伺服器牽涉到高基礎結構和授權成本。
  • 您必須處理安裝、設定和維護 DNS 伺服器的所有層面。
  • 監視和修補這些伺服器等額外負荷工作很複雜且容易失敗。
  • 不支援管理 DNS 記錄和轉送規則。
  • 實作可調整 DNS 伺服器解決方案的成本很高。

DNS 私人解析程序藉由提供下列功能和主要優點來克服這些障礙:

  • 具有內建高可用性和區域備援的完全受控Microsoft服務。
  • 適用於 DevOps 的可調整解決方案。
  • 相較於傳統基礎結構即服務(IaaS)型自定義解決方案,節省成本。
  • 將 Azure DNS 的條件式轉送至內部部署伺服器。 輸出端點提供這項功能,但過去無法使用。 Azure 中的工作負載不再需要直接連線到內部部署 DNS 伺服器。 相反地,Azure 工作負載會連線到 DNS 私人解析程式的輸出 IP 位址。

潛在使用案例

此解決方案可簡化混合式網路中的私人 DNS 解析。 它適用於許多案例:

  • 在長期移轉期間轉換策略,以完全雲端原生解決方案
  • 在內部部署與雲端環境之間復寫數據和服務的災害復原和容錯解決方案
  • 在 Azure 中裝載元件的解決方案,以減少內部部署數據中心與遠端位置之間的延遲

考量

這些考量能實作 Azure Well-Architected Framework 的支柱,這是一組指導原則,可以用來改善工作負載的品質。 如需更多資訊,請參閱 Microsoft Azure 結構完善的架構

我們建議將 DNS 私人解析程式部署到包含 ExpressRoute 閘道的虛擬網路。 如需詳細資訊,請參閱關於 ExpressRoute 虛擬網路閘道

可靠性

可靠性可確保您的應用程式符合您對客戶的承諾。 如需詳細資訊,請參閱可靠性的設計檢閱檢查清單

DNS 私人解析程式是雲端原生服務,具有高可用性和 DevOps 的友好性。 它提供可靠且安全的 DNS 解決方案,同時為使用者維護簡單且零維護。

區域可用性

如需 DNS 私人解析程式可供使用的區域清單,請參閱 區域可用性

DNS 解析程式只能參考與 DNS 解析程式位於相同區域中的虛擬網路。

安全性

安全性可提供保證,以避免刻意攻擊和濫用您寶貴的資料和系統。 如需詳細資訊,請參閱安全性的設計檢閱檢查清單

Azure DNS 支援文字 (TXT) 記錄集的擴充 ASCII 編碼集。 如需詳細資訊,請參閱 Azure DNS 常見問題

Azure DNS 目前不支援 DNS 安全性延伸模組 (DNSSEC)。 但使用者要求這項功能。

成本最佳化

成本最佳化是關於考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱成本最佳化的設計檢閱檢查清單

  • 作為解決方案,DNS 私人解析程式基本上符合成本效益。 DNS 私人解析程式的主要優點之一是完全受控,因此不需要專用伺服器。

  • 若要計算 DNS 私人解析程式的成本,請使用 Azure 定價計算機。 如需 DNS 私人解析程式定價模型,請參閱 Azure DNS 定價

  • 定價也包含可用性和延展性功能。

  • ExpressRoute 支援兩種計費模型:

    • 計量數據,這會針對輸出數據傳輸向您收取每 GB 的費用。
    • 無限制的數據會向您收取固定的每月埠費用,以涵蓋所有輸入和輸出數據傳輸。

    如需詳細資訊,請參閱 ExpressRoute 定價

  • 如果您使用 VPN 閘道 而不是 ExpressRoute,則成本會因產品而異,且每小時收費。 如需詳細資訊,請參閱 VPN 閘道定價

效能效益

效能效率可讓您的工作負載進行調整,以有效率的方式符合使用者對其放置的需求。 有關詳細資訊,請參閱效能效率的設計審核清單

DNS 私人解析程式是完全受控Microsoft服務,可處理數百萬個要求。 使用 /28 和 /24 之間的子網位址空間。 對大多數使用者而言,/26 最適合使用。 如需詳細資訊,請參閱 子網限制

網路

下列資源提供有關建立 DNS 私人解析程式的詳細資訊:

反向 DNS 支援

傳統上,DNS 記錄會將 DNS 名稱對應至 IP 位址。 例如, www.contoso.com 解析為 42.3.10.170。 使用反向 DNS 時,對應會以相反的方向進行。 IP 位址會對應回名稱。 例如,IP 位址 42.3.10.170 解析為 www.contoso.com

如需有關反向 DNS Azure 支援 以及反向 DNS 運作方式的詳細資訊,請參閱 Azure 中的反向 DNS 和支援概觀。

限制

DNS 私人解析程序有下列限制:

  • DNS 私人解析程式規則集只能連結到與解析程式位於相同地理區域內的虛擬網路。
  • 虛擬網路不能包含多個 DNS 私人解析程式。
  • 您必須將專用子網指派給每個輸入和輸出端點。

如需詳細資訊,請參閱 虛擬網路限制

參與者

本文由 Microsoft 維護。 原始投稿人如下。

主要作者:

若要查看非公開的 LinkedIn 設定檔,請登入 LinkedIn。

下一步