教學課程:使用適用於內部部署工作負載的 Azure 私人解析器來建立私人端點 DNS 基礎結構
Azure 私人端點在建立時預設會使用 Azure 私人 DNS 區域來解析名稱。 為了讓內部部署工作負載能夠存取端點,便需要為私人端點準備目的地為 Azure 裝載 DNS 或內部部署 DNS 記錄中虛擬機器的轉寄站。 Azure 私人解析器可讓您不必在 Azure 中針對 DNS 部署 VM,或在內部部署 DNS 伺服器上管理私人端點 DNS 記錄。
在本教學課程中,您會了解如何:
- 建立適用於雲端網路的 Azure 虛擬網路,以及具有虛擬網路對等互連的模擬內部部署網路。
- 建立 Azure Web 應用程式以模擬雲端資源。
- 在 Azure 虛擬網路中建立 Web 應用程式的 Azure 私人端點。
- 在雲端網路中建立 Azure 私人解析器。
- 在模擬的內部部署網路中建立 Azure 虛擬機器,以測試 Web 應用程式的 DNS 解析。
注意
本教學課程會使用具有對等互連功能的 Azure 虛擬網路來模擬內部部署網路。 在生產案例中,則需要 Express Route 或站對站 VPN 才能連線到 Azure 虛擬網路以存取私人端點。
模擬網路是以 Azure 私人解析器作為虛擬網路的 DNS 伺服器來進行設定的。 在生產案例中,內部部署資源會使用本機 DNS 伺服器來解析名稱。 內部部署 DNS 伺服器上會使用 Azure 私人解析器的條件式轉寄站來解析私人端點的 DNS 記錄。 如需 DNS 伺服器條件式轉寄站的設定詳細資訊,請參閱提供者的文件。
必要條件
- 具有有效訂用帳戶的 Azure 帳戶。 免費建立帳戶。
登入 Azure
使用您的 Azure 帳戶登入 Azure 入口網站 。
概觀
本教學課程中的資源會使用 Azure Web 應用程式的虛擬網路和模擬的內部部署網路。 您會建立兩個虛擬網路,使其對等互連,以模擬內部部署網路與 Azure 之間的 Express Route 或 VPN 連線。 Azure Bastion 主機會部署在模擬的內部部署網路中,以連線到測試虛擬機器。 測試虛擬機器可用來測試私人端點與 Web 應用程式的連線和 DNS 解析。
本教學課程會使用下列資源來模擬內部部署網路和雲端網路基礎結構:
資源 | 名稱 | 描述 |
---|---|---|
模擬的內部部署虛擬網路 | vnet-1 | 模擬內部部署網路的虛擬網路。 |
雲端虛擬網路 | vnet-2 | Azure Web 應用程式部署所在的虛擬網路。 |
Bastion 主機 | bastion | 用來連線到模擬內部部署網路中虛擬機器的 Bastion 主機。 |
測試虛擬機器 | vm-1 | 用來測試私人端點與 Web 應用程式的連線和 DNS 解析的測試虛擬機器。 |
虛擬網路對等互連 | vnet-1-to-vnet-2 | 模擬內部部署網路與雲端虛擬網路之間的虛擬網路對等互連。 |
虛擬網路對等互連 | vnet-2-to-vnet-1 | 雲端虛擬網路與模擬內部部署網路之間的虛擬網路對等互連。 |
建立虛擬網路和 Azure Bastion 主機
下列程序會建立具有資源子網路、Azure Bastion 子網路和 Bastion 主機的虛擬網路:
在入口網站中,搜尋並選取 [虛擬網路]。
在 [虛擬網路] 頁面上,選取 [+ 建立]。
在 [建立虛擬網路] 的 [基本] 索引標籤上,輸入或選取下列資訊:
設定 值 專案詳細資料 訂用帳戶 選取您的訂用帳戶。 資源群組 選取 [新建]
輸入 test-rg 作為名稱。
選取 [確定]。[執行個體詳細資料] 名稱 輸入 vnet-1。 區域 選取 [美國東部 2]。 選取 [下一步],繼續前往 [安全性] 索引標籤。
在 [Azure Bastion] 區段中,選取 [啟用 Azure Bastion]。
Bastion 會使用您的瀏覽器,透過安全殼層 (SSH) 或遠端桌面通訊協定 (RDP) 連線至虛擬網路中的 VM (使用其私人 IP 位址)。 VM 不需要公用 IP 位址、用戶端軟體或特殊設定。 如需詳細資訊,請參閱什麼是 Azure Bastion?。
在 Azure Bastion 中,輸入或選取下列資訊:
設定 值 Azure Bastion 主機名稱 輸入 bastion。 Azure Bastion 公用 IP 位址 選取 [建立公用 IP 位址]。
在 [名稱] 中輸入 public-ip-bastion。
選取 [確定]。選取 [下一步],繼續前往 [IP 位址] 索引標籤。
在 [子網路] 的 [位址空間] 方塊中,選取 [預設] 子網路。
在 [編輯子網路] 中,輸入或選取下列資訊:
設定 值 子網路用途 保留 Default 的預設值。 名稱 輸入 subnet-1。 IPv4 IPv4 位址範圍 保留 10.0.0.0/16 的預設值。 起始位址 保留預設值 [10.0.0.0]。 大小 保留 /24 (256 個位址) 的預設值。 選取 [儲存]。
選取視窗底部的 [檢閱 + 建立]。 通過驗證後,選取 [建立]。
Bastion 主機的部署需要幾分鐘的時間才能完成。 本教學課程稍後會使用 Bastion 主機連線到「內部部署」虛擬機器,以測試私人端點。 建立虛擬網路時,您可以繼續進行後續步驟。
建立雲端虛擬網路
重複上述步驟,為 Azure Web 應用程式私人端點建立雲端虛擬網路。 將值取代為雲端虛擬網路的下列值:
注意
您可以略過雲端虛擬網路的 Azure Bastion 部署區段。 只有模擬的內部部署網路才需要 Bastion 主機。
設定 | 值 |
---|---|
名稱 | vnet-2 |
Location | 美國東部 2 |
位址空間 | 10.1.0.0/16 |
子網路名稱 | subnet-1 |
子網路位址範圍 | 10.1.0.0/24 |
建立虛擬網路對等互連
使用下列步驟,在 vnet1 與 vnet2 之間建立雙向網路對等互連。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-1]。
在 [設定] 中,選取 [對等互連]。
選取 + 新增。
在 [新增對等互連] 中,輸入或選取下列資訊:
設定 值 遠端虛擬網路摘要 對等互連連結名稱 輸入 vnet-2-to-vnet-1。 虛擬網路部署模型 保留預設值 [Resource Manager]。 訂用帳戶 選取您的訂用帳戶。 虛擬網路 選取 [vnet-2]。 遠端虛擬網路對等互連設定 允許 'vnet-2' 存取 'vnet-1' 保留已選取的預設值。 允許 'vnet-2' 接收來自 'vnet-1' 的轉送流量 選取核取方塊。 允許 'vnet-2' 中的閘道或路由伺服器將流量轉送到 'vnet-1' 保留已清除的預設值。 讓 'vnet-2' 能夠使用 'vnet-1' 的遠端閘道或路由伺服器 保留已清除的預設值。 區域虛擬網路對等互連摘要 對等互連連結名稱 輸入 vnet-1-to-vnet-2。 區域虛擬網路對等互連設定 允許 'vnet-1' 存取 'vnet-2' 保留已選取的預設值。 允許 'vnet-1' 接收來自 'vnet-2' 的轉送流量 選取核取方塊。 允許 'vnet-1' 中的閘道或路由伺服器將流量轉送到 'vnet-2' 保留已清除的預設值。 讓 'vnet-1' 能夠使用 'vnet-2' 的遠端閘道或路由伺服器 保留已清除的預設值。 選取 [新增]。
建立 Web 應用程式
在入口網站頂端的搜尋方塊中,輸入 App Service。 在搜尋結果中,選取 [App Service]。
選取 + 建立。
在 [建立 Web 應用程式] 的 [基本] 索引標籤中,輸入或選取下列資訊。
設定 值 專案詳細資料 訂用帳戶 選取您的訂用帳戶。 資源群組 選取 [test-rg]。 [執行個體詳細資料] 名稱 輸入 Web 應用程式的唯一名稱。 本教學課程中的範例會使用 webapp8675 這個名稱。 發行 選取 [程式碼]。 執行階段堆疊 選取 [.NET 6 (LTS)]。 作業系統 選取 [Windows]。 區域 選取 [美國東部 2]。 定價方案 Windows 方案 (美國西部 2) 保留預設名稱。 定價方案 選取 [變更大小]。 在 [規格選擇器] 中,針對工作負載選取 [生產]。
在 [建議的定價層] 中,選取 [P1V2]。
選取套用。
選取 [下一步:部署]。
選取 [下一步:網路]。
將 [啟用公用存取] 變更為 false。
選取 [檢閱 + 建立]。
選取 建立。
建立私人端點
Azure 私人端點會為虛擬網路中支援的 Azure 服務建立網路介面。 私人端點會讓您能夠從 Azure 虛擬網路或內部部署網路中的私人連線存取 Azure 服務。
為先前建立的 Web 應用程式建立私人端點。
在入口網站頂端的搜尋方塊中,輸入私人端點。 在搜尋結果中,選取 [私人端點]。
選取 + 建立。
在 [建立私人端點] 的 [基本] 索引標籤中,輸入或選取下列資訊:
設定 值 專案詳細資料 訂用帳戶 選取您的訂用帳戶 資源群組 選取 [test-rg]。 [執行個體詳細資料] 名稱 輸入 private-endpoint。 網路介面名稱 保留預設名稱。 區域 選取 [美國東部 2]。 選取 [下一步:資源]。
在 [資源] 索引標籤中,輸入或選取下列資訊:
設定 值 連線方式 選取 [連線至我目錄中的 Azure 資源] 訂用帳戶 選取您的訂用帳戶。 資源類型 選取 [Microsoft.Web/sites]。 資源 選取您的 webapp。 本教學課程中的範例會使用 webapp8675 這個名稱。 目標子資源 選取 [網站]。 選取 [下一步:虛擬網路]。
在 [虛擬網路] 索引標籤中,輸入或選取下列資訊:
設定 值 網路功能 虛擬網路 選取 [vnet-2 (test-rg)]。 子網路 選取 [subnet-1]。 私人端點的網路原則 保留預設值 [停用]。 私人 IP 設定 選取 [靜態配置 IP 位址]。 名稱 輸入 ipconfig-1。 私人 IP 輸入 10.1.0.10。 選取 [下一步:DNS]。
保留 [DNS] 索引標籤中的預設值。
選取 [下一步:標記],然後選取 [下一步:檢閱 + 建立]。
選取 建立。
建立私人解析器
您會在私人端點所在的虛擬網路中建立私人解析器。 解析器會從模擬的內部部署工作負載接收 DNS 要求。 這些要求會轉寄至 Azure 提供的 DNS。 Azure 提供的 DNS 會解析私人端點的 Azure 私人 DNS 區域,並將 IP 位址傳回給內部部署工作負載。
在入口網站頂端的搜尋方塊中,輸入 DNS 私人解析器。 在搜尋結果中選取 [DNS 私人解析器]。
選取 + 建立。
在 [建立 DNS 私人解析器] 的 [基本] 索引標籤中輸入或選取下列資訊:
設定 值 專案詳細資料 訂用帳戶 選取您的訂用帳戶。 資源群組 選取 [test-rg] [執行個體詳細資料] 名稱 輸入 private-resolver。 區域 選取 [(美國) 美國東部 2]。 虛擬網路 虛擬網路 選取 [vnet-2]。 選取 [下一步:輸入端點]。
在 [輸入端點] 中,選取 [+ 新增端點]。
在 [新增輸入端點] 中,輸入或選取下列資訊:
設定 值 端點名稱 輸入 inbound-endpoint。 子網路 選取 [新建]
在 [名稱] 中輸入 subnet-resolver。
保留預設的 [子網路位址範圍]。
選取 [建立]。選取 [儲存]。
選取 [檢閱 + 建立]。
選取 建立。
當私人解析器部署完成時,請繼續進行後續步驟。
設定模擬網路的 DNS
下列步驟會將私人解析器設定為模擬內部部署網路 vnet-1 的主要 DNS 伺服器。
這些步驟只是為了模擬私人端點的 DNS 解析,在生產環境中並不需要。 您的本機 DNS 伺服器具有此 IP 位址的條件式轉寄站,可從內部部署網路解析私人端點的 DNS 記錄。
在入口網站頂端的搜尋方塊中,輸入 DNS 私人解析器。 在搜尋結果中選取 [DNS 私人解析器]。
選取 [private-resolver]。
在 [設定] 中選取 [輸入端點]。
記下名為 inbound-endpoint 之端點的 [IP 位址]。 在本教學課程的範例中,IP 位址為 10.1.1.4。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-1]。
在 [設定] 中選取 [DNS 伺服器]。
在 [DNS 伺服器] 中,選取 [自訂]。
輸入您先前記下的 IP 位址。 在本教學課程的範例中,IP 位址為 10.1.1.4。
選取 [儲存]。
建立測試虛擬機器
下列程序會在虛擬網路中建立名為 vm-1 的測試虛擬機器 (VM)。
在入口網站中,搜尋並選取 [虛擬機器]。
在 [虛擬機器] 中,選取 [+ 建立],然後選取 [Azure 虛擬機器]。
在 [建立虛擬機器] 的 [基本] 索引標籤上,輸入或選取下列資訊:
設定 值 專案詳細資料 訂用帳戶 選取您的訂用帳戶。 資源群組 選取 [test-rg]。 [執行個體詳細資料] 虛擬機器名稱 輸入 vm-1。 區域 選取 [美國東部 2]。 可用性選項 選取 [不需要基礎結構備援]。 安全性類型 保留預設值 [標準]。 映像 選取 [Windows Server 2022 Datacenter - x64 Gen2]。 VM 架構 保留預設值 [x64]。 大小 選取大小。 系統管理員帳戶 驗證類型 選取 [密碼]。 使用者名稱 輸入 azureuser。 密碼 輸入密碼。 確認密碼 請重新輸入密碼。 輸入連接埠規則 公用輸入連接埠 選取 [無]。 選取頁面頂端的 [網路] 索引標籤。
在 [網路] 索引標籤中,輸入或選取以下資訊:
設定 值 網路介面 虛擬網路 選取 [vnet-1]。 子網路 選取 [subnet-1 (10.0.0.0/24)]。 公用 IP 選取 [無]。 NIC 網路安全性群組 選取進階。 設定網路安全性群組 選取 [新建]
輸入 nsg-1 作為名稱。
將其餘項目保留為預設值,然後選取 [確定]。將其餘設定保留為預設值,然後選取 [檢閱 + 建立]。
檢閱設定並選取 [建立]。
注意
虛擬網路中的虛擬機器 (具有 Bastion 主機) 不需要公用 IP 位址。 Bastion 會提供公用 IP,而 VM 會使用私人 IP 在網路內通訊。 您可以從裝載了 Bastion 的虛擬網路中,移除任何 VM 的公用 IP。 如需詳細資訊,請參閱中斷公用 IP 位址與 Azure VM 的關聯。
注意
無論是未獲指派公用 IP 位址的 VM,或位於內部基本 Azure 負載平衡器後端集區的 VM,Azure 都會為其提供預設輸出存取 IP。 預設輸出存取 IP 機制能提供無法自行設定的輸出 IP 位址。
發生下列其中一個事件時,會停用預設輸出存取 IP:
- 公用 IP 位址會指派給 VM。
- 無論有沒有輸出規則,都會將 VM 放在標準負載平衡器的後端集區中。
- Azure NAT 閘道資源會指派給 VM 的子網路。
您在彈性協調流程模式中使用虛擬機器擴展集建立的 VM 沒有預設輸出存取。
如需 Azure 中輸出連線的詳細資訊,請參閱 Azure 中的預設對外存取與針對輸出連線使用來源網路位址轉譯 (SNAT)。
測試對私人端點的連線能力
在本節中,您會使用您在上一個步驟中建立的虛擬機器,連線到私人端點上的 Web 應用程式。
在入口網站頂端的搜尋方塊中,輸入虛擬機器。 在搜尋結果中,選取 [虛擬機器]。
選取 [vm-1]。
在 vm-1 的 [概觀] 頁面上,依序選取 [連線] 和 [Bastion]。
輸入您在虛擬機器建立期間輸入的使用者名稱與密碼。
選取 [連線] 按鈕。
連線之後,在伺服器上開啟 Windows PowerShell。
輸入
nslookup <webapp-name>.azurewebsites.net
。 以您在上一個步驟中建立的 Web 應用程式名稱取代 <webapp-name>。 您會收到類似以下輸出的訊息:Server: UnKnown Address: 168.63.129.16 Non-authoritative answer: Name: webapp.privatelink.azurewebsites.net Address: 10.1.0.10 Aliases: webapp.azurewebsites.net
針對 Web 應用程式名稱,會傳回 10.1.0.10 的私人 IP 位址。 此位址位於您先前所建立 vnet-2 虛擬網路的 subnet-1 子網路中。
開啟 Microsoft Edge,然後輸入 Web 應用程式的 URL
https://<webapp-name>.azurewebsites.net
。確認您收到預設的 Web 應用程式頁面。
關閉與 vm-1 的連線。
在本機電腦上開啟 Web 瀏覽器,並輸入 Web 應用程式的 URL,
https://<webapp-name>.azurewebsites.net
。確認您收到 403 頁面。 此頁面表示 Web 應用程式無法從外部存取。
使用完所建立的資源時,您可以刪除資源群組及其所有資源。
在 Azure 入口網站中,搜尋並選取 [資源群組]。
在 [資源群組] 頁面上,選取 [test-rg] 資源群組。
在 [test-rg] 頁面上,選取 [刪除資源群組]。
在 [輸入資源群組名稱以確認刪除] 中輸入 test-rg,然後選取 [刪除]。
下一步
在本教學課程中,您已了解如何部署私人解析器和私人端點。 您已測試從模擬的內部部署網路到私人端點的連線。
請前往下一篇文章以了解如何...