共用方式為


在 Azure Stack Hub 中使用 DNS

Azure Stack Hub 支援下列 Azure DNS 功能:

  • DNS 主機名解析。
  • 使用 API 建立和管理 DNS 區域和記錄。

支援 DNS 主機名解析

您可以指定公用IP資源的 DNS 功能變數名稱標籤。 Azure Stack Hub 會針對標籤名稱使用 domainnamelabel.location.cloudapp.azurestack.external ,並將它對應至 Azure Stack Hub 受控 DNS 伺服器中的公用 IP 位址。

例如,如果您在本機 Azure Stack Hub 位置中建立具有 contoso 作為功能變數名稱標籤的公用 IP 資源, 則完整功能變數名稱 (FQDN) contoso.local.cloudapp.azurestack.external 會解析為資源的公用 IP 位址。 您可以使用此 FQDN 來建立自定義網域 CNAME 記錄,以指向 Azure Stack Hub 中的公用 IP 位址。

針對 Azure Stack Hub 外部的 DNS 解析,您可以使用公用 IP 位址建立新區域,而不是委派內部 DNS 區域。 否則,客戶端將無法存取 Azure Stack Hub 基礎結構 DNS 伺服器解析的 IP 位址。

若要深入了解名稱解析,請參閱 DNS 解析

重要

您建立的每個功能變數名稱標籤在其 Azure Stack Hub 位置內都必須是唯一的。

下列螢幕快照顯示使用入口網站建立公用IP位址的 [ 建立公用IP位址 ] 對話框:

建立公用 IP 位址

範例案例

您有負載平衡器處理來自 Web 應用程式的要求。 負載平衡器背後是一或多個虛擬機上執行的網站。 您可以使用 DNS 名稱來存取負載平衡的網站,而不是 IP 位址。

使用 API 建立和管理 DNS 區域和記錄

您可以在 Azure Stack Hub 中建立和管理 DNS 區域和記錄。

Azure Stack Hub 會使用與 Azure DNS API 一致的 API,提供類似於 Azure 的 DNS 服務。 藉由在 Azure Stack Hub DNS 中裝載網域,您可以使用相同的認證、API 和工具來管理 DNS 記錄。 您也可以使用與其他 Azure 服務相同的計費和支援。

Azure Stack Hub DNS 基礎結構比 Azure 更精簡。 Azure Stack Hub 部署的大小和位置會影響 DNS 範圍、規模和效能。 這也表示效能、可用性、全域散發和高可用性可能會因部署到部署而有所不同。

與 Azure DNS 的比較

Azure Stack Hub 中的 DNS 類似於 Azure 中的 DNS,但有一些重要的例外狀況:

  • 不支援AAAA記錄:Azure Stack Hub 不支援AAAA記錄,因為 Azure Stack Hub 不支援 IPv6 位址。 這是 Azure 和 Azure Stack Hub 中 DNS 之間的主要差異。

  • 不是多租使用者:Azure Stack Hub 中的 DNS 服務不是多租使用者。 租用戶無法建立相同的 DNS 區域。 只有嘗試建立區域的第一個訂用帳戶成功,且稍後的要求會失敗。 這是 Azure 和 Azure Stack Hub DNS 之間的另一個主要差異。

  • 標記、元數據和 Etag:Azure Stack Hub 處理標籤、元數據、Etag 和限制的方式有些微差異。

若要深入瞭解 Azure DNS,請參閱 DNS 區域和記錄

標籤

Azure Stack Hub DNS 支援在 DNS 區域資源上使用 Azure Resource Manager 卷標。 它不支援 DNS 記錄集上的標記。 或者, DNS 記錄集上支持元數據 ,如下一節所述。

中繼資料

除了記錄集標籤,Azure Stack Hub DNS 支援使用 元數據來標註記錄集。 類似於標記,中繼資料可讓您建立名稱-值組與每個記錄集之間的關聯。 例如,元數據有助於記錄每個記錄集的用途。 不同於標籤,您無法使用元數據來提供 Azure 帳單的篩選檢視,而且無法在 Azure Resource Manager 原則中指定元數據。

Etag

假設有兩個人或兩個處理序同時嘗試修改 DNS 記錄。 何者獲勝? 獲勝者知道他們已經覆寫別人所創造的變更嗎?

Azure Stack Hub DNS 會使用 Etag 安全地處理相同資源的並行變更。 Etag 與 Azure Resource Manager 標籤不同。 每個 DNS 資源 (區域或記錄集) 都有一個相關聯的 Etag。 擷取資源時,也會擷取其 Etag。 當您更新資源時,您可以選擇傳回 Etag,讓 Azure Stack Hub DNS 可以驗證伺服器上的 Etag 相符專案。 因為每次更新資源都會重新產生 Etag,Etag 不符就表示發生並行變更。 當您建立新的資源以確保資源不存在時,也可以使用 Etag。

根據預設,Azure Stack Hub DNS PowerShell Cmdlet 會使用 Etag 來封鎖區域和記錄集的並行變更。 您可以使用選擇性 -Overwrite 參數來隱藏 Etag 檢查。 如果沒有 Etag 檢查,就會覆寫任何發生的並行變更。

在 Azure Stack Hub DNS REST API 的層級上,會使用 HTTP 標頭來指定 Etag。 下表說明其行為:

頁首 行為
PUT 一律會成功(沒有 Etag 檢查)。
If-match 只有在資源存在且 Etag 相符時,PUT 才會成功。
If-match * 如果資源存在,PUT 才會成功。
If-none-match * 只有在資源不存在時,PUT 才會成功。

限制

使用 Azure Stack Hub DNS 時,適用下列預設限制:

資源 預設限制
每個訂用帳戶的區域 100
每個區域的記錄集 5000
每一記錄集的記錄 20

下一步