建立虛擬網路對等互連 - Resource Manager,不同的訂用帳戶和 Microsoft Entra 租用戶
在本教學課程中,您會了解如何在透過 Resource Manager 建立的虛擬網路之間,建立虛擬網路對等互連。 虛擬網路存在於不同的訂用帳戶中,而這些訂用帳戶可能屬於不同的 Microsoft Entra 租用戶。 對等互連兩個虛擬網路,可讓不同虛擬網路中的資源彼此通訊,且通訊時會有相同的頻寬和延遲,彷彿這些資源是位於相同的虛擬網路中。 深入了解虛擬網路對等互連。
建立虛擬網路對等互連的步驟視虛擬網路位於相同還是不同的訂用帳戶而有所不同。 使用傳統部署模型建立網路對等互連的步驟不同。 如需部署模型的詳細資訊,請參閱 Azure 部署模型。
選取下表中的案例,以了解如何在其他案例中建立虛擬網路對等互連:
虛擬網路對等互連無法在透過傳統部署模型建立的兩個虛擬網路之間建立。 如果您需要將兩個都是透過傳統部署模型建立的虛擬網路連接,可以使用 Azure VPN 閘道來連接這些虛擬網路。
此教學課程將同一個區域中的虛擬網路視為對等。 您也可以針對不同支援區域中的虛擬網路進行對等互連。 請在對等互連虛擬網路之前,先熟悉對等互連的需求和限制。
必要條件
具有兩個有效訂用帳戶的 Azure 帳戶。 免費建立帳戶。
同時在兩個訂用帳戶中擁有建立虛擬網路對等互連權限的 Azure 帳戶,或在每個訂用帳戶中擁有適當權限可以建立虛擬網路對等互連的帳戶。 如需權限清單,請參閱虛擬網路對等互連權限。
若要區隔屬於每個租用戶的網路管理職責,請將來自每個租用戶的使用者新增為相反租使用者中的來賓,並虛擬網路的網路參與者角色指派給該使用者。 如果虛擬網路位於不同的訂用帳戶或 Active Directory 租用戶,則適用此程序。
當您不打算區隔屬於每個租用戶的網路管理職責時,若要建立網路對等互連,請將來自租用戶 A 的使用者新增為相反租用戶中的來賓。 然後,將網路參與者角色指派給該使用者,以起始並連接來自每個訂用帳戶的網路對等互連。 有了這些權限,使用者就能夠從每個訂用帳戶建立網路對等互連。
如需來賓使用者的詳細資訊,請參閱在 Azure 入口網站中新增 Microsoft Entra B2B 共同作業使用者。
每個使用者必須接受相對 Microsoft Entra 租用戶的來賓使用者邀請。
已在本地安裝 Azure PowerShell 或 Azure Cloud Shell。
登入 Azure PowerShell,並選取要使用此功能的訂用帳戶。 如需詳細資訊,請參閱使用 Azure PowerShell 登入 \(英文\)。
確定您的 Az.Network
模組為 4.3.0 或更新版本。 若要確認已安裝的模組,請使用 Get-InstalledModule -Name "Az.Network"
命令。 如果模組需要更新,可在必要時使用 Update-Module -Name Az.Network
命令。
如果您選擇在本機安裝和使用 PowerShell,本文會要求使用 Azure PowerShell 模組版本 5.4.1 或更新版本。 執行 Get-Module -ListAvailable Az
以尋找安裝的版本。 如果您需要升級,請參閱安裝 Azure PowerShell 模組。 如果正在本機執行 PowerShell,也需要執行 Connect-AzAccount
,以建立與 Azure 的連線。
- 此操作說明文章需要 2.31.0 版或更新版本的 Azure CLI。 如果您是使用 Azure Cloud Shell,就已安裝最新版本。
在下列步驟中,了解如何在不同的訂用帳戶和 Microsoft Entra 租用戶中建立虛擬網路對等互連。
您可以使用在兩個訂用帳戶中都擁有權限的相同帳戶,也可以每個每個訂用帳戶各使用不同的帳戶來設定對等互連。 在這兩個訂用帳戶中都擁有權限的帳戶可以完成所有步驟,而不需要登出後登入入口網站和指派權限。
本文中的步驟使用下列資源和帳戶範例:
使用者帳戶 |
資源群組 |
訂用帳戶 |
虛擬網路 |
user-1 |
test-rg |
subscription-1 |
vnet-1 |
user-2 |
test-rg-2 |
subscription-2 |
vnet-2 |
建立虛擬網路 - vnet-1
注意
如果您使用單一帳戶來完成這些步驟,可以略過登出入口網站並將另一個使用者權限指派給虛擬網路的步驟。
下列程序會建立具有資源子網路的虛擬網路。
在入口網站中,搜尋並選取 [虛擬網路]。
在 [虛擬網路] 頁面上,選取 [+ 建立]。
在 [建立虛擬網路] 的 [基本] 索引標籤中,輸入或選取下列資訊:
設定 |
值 |
專案詳細資料 |
|
訂用帳戶 |
選取您的訂用帳戶。 |
資源群組 |
選取 [新建] 在 [名稱] 中輸入 test-rg。 選取 [確定]。 |
[執行個體詳細資料] |
|
名稱 |
輸入 vnet-1。 |
區域 |
選取 [美國東部 2]。 |
選取 [下一步],繼續前往 [安全性] 索引標籤。
選取 [下一步],繼續前往 [IP 位址] 索引標籤。
在 [子網路] 的 [位址空間] 方塊中,選取 [預設] 子網路。
在 [編輯子網路] 中,輸入或選取下列資訊:
設定 |
值 |
子網路用途 |
保留預設值 [Default]。 |
名稱 |
輸入 subnet-1。 |
其餘設定請保留為預設值。 選取 [儲存]。
選取 [儲存]。
選取畫面底部的 [檢閱 + 建立],然後在驗證通過時,選取 [建立]。
登入 subscription-1
使用 Connect-AzAccount 登入 subscription-1。
Connect-AzAccount
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 Set-AzContext 將訂用帳戶內容變更為 subscription-1。
Set-AzContext -Subscription subscription-1
建立資源群組 - test-rg
Azure 資源群組是一種邏輯容器,您會在其中部署與管理 Azure 資源。
使用 New-AzResourceGroup 建立資源群組:
$rsg = @{
Name = 'test-rg'
Location = 'eastus2'
}
New-AzResourceGroup @rsg
建立虛擬網路
使用 New-AzVirtualNetwork 建立虛擬網路。 此範例會在美國西部 3 位置建立命名為 vnet-1 的 subnet-1 虛擬網路:
$vnet = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
Location = 'eastus2'
AddressPrefix = '10.0.0.0/16'
}
$virtualNetwork = New-AzVirtualNetwork @vnet
新增子網路
Azure 會將資源部署至虛擬網路內的子網路,因此您必須建立子網路。 使用 Add-AzVirtualNetworkSubnetConfig 建立名為 subnet-1 的子網路設定:
$subnet = @{
Name = 'subnet-1'
VirtualNetwork = $virtualNetwork
AddressPrefix = '10.0.0.0/24'
}
$subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
將子網路與虛擬網路建立關聯
您可以使用 Set-AzVirtualNetwork,將子網路設定寫入至虛擬網路。 此命令會建立子網路:
$virtualNetwork | Set-AzVirtualNetwork
登入 subscription-1
使用 az sign-in 登入 subscription-1。
az login
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 az account set 將訂用帳戶內容變更為 subscription-1。
az account set --subscription "subscription-1"
建立資源群組 - test-rg
Azure 資源群組是一種邏輯容器,您會在其中部署與管理 Azure 資源。
使用 az group create 來建立資源群組:
az group create \
--name test-rg \
--location eastus2
建立虛擬網路
使用 az network vnet create 建立虛擬網路和子網路。 此範例會在美國西部 3 位置建立命名為 vnet-1 的 subnet-1 虛擬網路。
az network vnet create \
--resource-group test-rg\
--location eastus2 \
--name vnet-1 \
--address-prefixes 10.0.0.0/16 \
--subnet-name subnet-1 \
--subnet-prefixes 10.0.0.0/24
將權限指派給 user-2
其他訂用帳戶中要建立對等互連的使用者戶帳戶,必須新增至您先前建立的網路。 如果這兩個訂用帳戶是使用同一帳戶,則可以略過本節。
保持以 user-1 的身分登入入口網站。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-1]。
選取 [存取控制 (IAM)]。
選取 [+ 新增] ->[新增角色指派]。
在 [角色] 索引標籤的 [新增角色指派] 中,選取 [網路參與者]。
選取 [下一步]。
在 [成員] 索引標籤中選取 [+ 選取成員]。
在 [選取成員] 的搜尋方塊中,輸入 user-2。
選取選取。
選取檢閱+指派。
選取檢閱+指派。
使用 Get-AzVirtualNetwork 來取得 vnet-1 的資源識別碼。 使用 New-AzRoleAssignment 將 subscription-2 中的 user-2 指派到 vnet-1。
使用 Get-AzADUser 來取得 user-2 的物件識別碼。
在本例中,使用 user-2 作為使用者帳戶。 將此值取代為您想要指派權限給 vnet-1 的 subscription-2 中的使用者顯示名稱。 如果這兩個訂用帳戶使用相同的帳戶,則可以略過此步驟。
$id = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$vnet = Get-AzVirtualNetwork @id
$obj = Get-AzADUser -DisplayName 'user-2'
$role = @{
ObjectId = $obj.id
RoleDefinitionName = 'Network Contributor'
Scope = $vnet.id
}
New-AzRoleAssignment @role
使用 az network vnet show 來取得 vnet-1 的資源識別碼。 使用 az role assignment create 將 subscription-2 中的 user-2 指派到 vnet-1。
使用 az ad user list 來取得 user-2 的物件識別碼。
在本例中,使用 user-2 作為使用者帳戶。 將此值取代為您想要指派權限給 vnet-1 的 subscription-2 中的使用者顯示名稱。 如果這兩個訂用帳戶使用相同的帳戶,則可以略過此步驟。
az ad user list --display-name user-2
[
{
"businessPhones": [],
"displayName": "user-2",
"givenName": null,
"id": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
"jobTitle": null,
"mail": "user-2@fabrikam.com",
"mobilePhone": null,
"officeLocation": null,
"preferredLanguage": null,
"surname": null,
"userPrincipalName": "user-2_fabrikam.com#EXT#@contoso.onmicrosoft.com"
}
]
記下欄位識別碼中user-2的物件識別碼。在此範例中,其aaaaaaaaaa-0000-1111-2222-bbbbbbbbbb。
vnetid=$(az network vnet show \
--name vnet-1 \
--resource-group test-rg \
--query id \
--output tsv)
az role assignment create \
--assignee aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb \
--role "Network Contributor" \
--scope $vnetid
將 --assignee
中的範例 guid 取代為 user-2 的實際物件識別碼。
取得 vnet-1 的資源識別碼
保持以 user-1 的身分登入入口網站。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-1]。
在 [設定] 中,選取 [屬性]。
複製 [資源識別碼] 欄位中的資訊並儲存供後續步驟使用。 資源識別碼類似下列範例:/subscriptions/<Subscription Id>/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/vnet-1
。
以 user-1 身分登出入口網站。
需要 vnet-1 的資源識別碼,才能設定從 vnet-2 到 vnet-1 的對等互連連線。 使用 Get-AzVirtualNetwork 來取得 vnet-1 的資源識別碼。
$id = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$vnetA = Get-AzVirtualNetwork @id
$vnetA.id
需要 vnet-1 的資源識別碼,才能設定從 vnet-2 到 vnet-1 的對等互連連線。 使用 az network vnet show 來取得 vnet-1 的資源識別碼。
vnetidA=$(az network vnet show \
--name vnet-1 \
--resource-group test-rg \
--query id \
--output tsv)
echo $vnetidA
建立虛擬網路 - vnet-2
在本節中,您將以 user-2 身分登入,並建立要與 vnet-1 對等互連連線的虛擬網路。
重複上一節的步驟,使用下列值建立第二個虛擬網路。
設定 |
值 |
訂用帳戶 |
subscription-2 |
資源群組 |
test-rg-2 |
名稱 |
vnet-2 |
位址空間 |
10.1.0.0/16 |
子網路名稱 |
subnet-1 |
子網路位址範圍 |
10.1.0.0/24 |
登入 subscription-2
使用 Connect-AzAccount 登入 subscription-2。
Connect-AzAccount
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 Set-AzContext 將訂用帳戶內容變更為 subscription-2。
Set-AzContext -Subscription subscription-2
建立資源群組 - test-rg-2
Azure 資源群組是一種邏輯容器,您會在其中部署與管理 Azure 資源。
使用 New-AzResourceGroup 建立資源群組:
$rsg = @{
Name = 'test-rg-2'
Location = 'eastus2'
}
New-AzResourceGroup @rsg
建立虛擬網路
使用 New-AzVirtualNetwork 建立虛擬網路。 此範例會在美國西部 3 位置建立命名為 vnet-2 的 subnet-1 虛擬網路:
$vnet = @{
Name = 'vnet-2'
ResourceGroupName = 'test-rg-2'
Location = 'eastus2'
AddressPrefix = '10.1.0.0/16'
}
$virtualNetwork = New-AzVirtualNetwork @vnet
新增子網路
Azure 會將資源部署至虛擬網路內的子網路,因此您必須建立子網路。 使用 Add-AzVirtualNetworkSubnetConfig 建立名為 subnet-1 的子網路設定:
$subnet = @{
Name = 'subnet-1'
VirtualNetwork = $virtualNetwork
AddressPrefix = '10.1.0.0/24'
}
$subnetConfig = Add-AzVirtualNetworkSubnetConfig @subnet
將子網路與虛擬網路建立關聯
您可以使用 Set-AzVirtualNetwork,將子網路設定寫入至虛擬網路。 此命令會建立子網路:
$virtualNetwork | Set-AzVirtualNetwork
登入 subscription-2
使用 az sign-in 登入 subscription-1。
az login
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 az account set 將訂用帳戶內容變更為 subscription-2。
az account set --subscription "subscription-2"
建立資源群組 - test-rg-2
Azure 資源群組是一種邏輯容器,您會在其中部署與管理 Azure 資源。
使用 az group create 來建立資源群組:
az group create \
--name test-rg-2 \
--location eastus2
建立虛擬網路
使用 az network vnet create 建立虛擬網路和子網路。 此範例會在美國西部 3 位置建立命名為 vnet-2 的 subnet-1 虛擬網路。
az network vnet create \
--resource-group test-rg-2\
--location eastus2 \
--name vnet-2 \
--address-prefixes 10.1.0.0/16 \
--subnet-name subnet-1 \
--subnet-prefixes 10.1.0.0/24
將權限指派給 user-1
其他訂用帳戶中要建立對等互連的使用者戶帳戶,必須新增至您先前建立的網路。 如果這兩個訂用帳戶是使用同一帳戶,則可以略過本節。
保持以 user-2 的身分登入入口網站。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-2]。
選取 [存取控制 (IAM)]。
選取 [+ 新增] ->[新增角色指派]。
在 [角色] 索引標籤的 [新增角色指派] 中,選取 [網路參與者]。
選取 [下一步]。
在 [成員] 索引標籤中選取 [+ 選取成員]。
在 [選取成員] 的搜尋方塊中,輸入 user-1。
選取選取。
選取檢閱+指派。
選取檢閱+指派。
使用 Get-AzVirtualNetwork 來取得 vnet-1 的資源識別碼。 使用 New-AzRoleAssignment 將 subscription-1 中的 user-1 指派到 vnet-2。
使用 Get-AzADUser 來取得 user-1 的物件識別碼。
在本例中,使用 user-1 作為使用者帳戶。 將此值取代為您想要指派權限給 vnet-2 的 subscription-1 中的使用者顯示名稱。 如果這兩個訂用帳戶使用相同的帳戶,則可以略過此步驟。
$id = @{
Name = 'vnet-2'
ResourceGroupName = 'test-rg-2'
}
$vnet = Get-AzVirtualNetwork @id
$obj = Get-AzADUser -DisplayName 'user-1'
$role = @{
ObjectId = $obj.id
RoleDefinitionName = 'Network Contributor'
Scope = $vnet.id
}
New-AzRoleAssignment @role
使用 az network vnet show 來取得 vnet-2 的資源識別碼。 使用 az role assignment create 將 subscription-1 中的 user-1 指派到 vnet-2。
使用 az ad user list 來取得 user-1 的物件識別碼。
在本例中,使用 user-1 作為使用者帳戶。 將此值取代為您想要指派權限給 vnet-2 的 subscription-1 中的使用者顯示名稱。 如果這兩個訂用帳戶使用相同的帳戶,則可以略過此步驟。
az ad user list --display-name user-1
[
{
"businessPhones": [],
"displayName": "user-1",
"givenName": null,
"id": "bbbbbbbb-1111-2222-3333-cccccccccccc",
"jobTitle": null,
"mail": "user-1@contoso.com",
"mobilePhone": null,
"officeLocation": null,
"preferredLanguage": null,
"surname": null,
"userPrincipalName": "user-1_contoso.com#EXT#@fabrikam.onmicrosoft.com"
}
]
記下欄位識別碼中user-1的物件識別碼。在此範例中,它是bbbbbbbb-1111-2222-3333-cccccccccccccc。
vnetid=$(az network vnet show \
--name vnet-2 \
--resource-group test-rg-2 \
--query id \
--output tsv)
az role assignment create \
--assignee bbbbbbbb-1111-2222-3333-cccccccccccc \
--role "Network Contributor" \
--scope $vnetid
取得 vnet-2 的資源識別碼
需要 vnet-2 的資源識別碼,才能設定從 vnet-1 到 vnet-2 的對等互連連線。 使用下列步驟來取得 vnet-2 的資源識別碼。
保持以 user-2 的身分登入入口網站。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-2]。
在 [設定] 中,選取 [屬性]。
複製 [資源識別碼] 欄位中的資訊並儲存供後續步驟使用。 資源識別碼類似下列範例:/subscriptions/<Subscription Id>/resourceGroups/test-rg-2/providers/Microsoft.Network/virtualNetworks/vnet-2
。
以 user-2 身分登出入口網站。
需要 vnet-2 的資源識別碼,才能設定從 vnet-1 到 vnet-2 的對等互連連線。 使用 Get-AzVirtualNetwork 來取得 vnet-2 的資源識別碼。
$id = @{
Name = 'vnet-2'
ResourceGroupName = 'test-rg-2'
}
$vnetB = Get-AzVirtualNetwork @id
$vnetB.id
需要 vnet-2 的資源識別碼,才能設定從 vnet-1 到 vnet-2 的對等互連連線。 使用 az network vnet show 來取得 vnet-2 的資源識別碼。
vnetidB=$(az network vnet show \
--name vnet-2 \
--resource-group test-rg-2 \
--query id \
--output tsv)
echo $vnetidB
建立對等互連連線 - vnet-1 到 vnet-2
您需要之前步驟中 vnet-2 的資源識別碼,才能設定對等互連連線。
以 user-1 身分登入 Azure 入口網站。 如果這兩個訂用帳戶使用一個帳戶,請在入口網站中變更為 subscription-1。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-1]。
選取 [對等互連]。
選取 + 新增。
在 [新增對等互連] 中,輸入或選取下列資訊:
設定 |
值 |
遠端虛擬網路摘要 |
|
對等互連連結名稱 |
vnet-2-to-vnet-1 |
虛擬網路部署模型 |
Resource Manager |
我知道我的資源識別碼 |
選取方塊 |
資源識別碼 |
輸入 vnet-2 的資源識別碼 |
目錄 |
選取與 vnet-2 和 user-2 對應的 Microsoft Entra ID 目錄 |
遠端虛擬網路對等互連設定 |
|
允許「對等互連的虛擬網路」存取 'vnet-1' |
保留預設值 [已啟用] |
允許「對等互連的虛擬網路」接收來自 'vnet-1' 的轉送流量 |
選取方塊 |
區域虛擬網路摘要 |
|
對等互連連結名稱 |
vnet-1-to-vnet-2 |
區域虛擬網路對等互連設定 |
|
允許 'vnet-1' 存取「對等互連的虛擬網路」 |
保留預設值 [已啟用] |
允許 'vnet-1' 接收來自「對等互連的虛擬網路」的轉送流量 |
選取方塊 |
選取 [新增]。
以 user-1 身分登出入口網站。
登入 subscription-1
使用 Connect-AzAccount 登入 subscription-1。
Connect-AzAccount
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 Set-AzContext 將訂用帳戶內容變更為 subscription-1。
Set-AzContext -Subscription subscription-1
登入 subscription-2
驗證 subscription-2,以便設定對等互連。
使用 Connect-AzAccount 登入 subscription-2。
Connect-AzAccount
變更為 subscription-1 (選用)
您可能必須切回 subscription-1,才能繼續執行 subscription-1 中的動作。
將內容變更為 subscription-1。
Set-AzContext -Subscription subscription-1
建立對等互連連線
使用 Add-AzVirtualNetworkPeering ,在 vnet-1 與 vnet-2 之間建立對等互連連線。
$netA = @{
Name = 'vnet-1'
ResourceGroupName = 'test-rg'
}
$vnetA = Get-AzVirtualNetwork @netA
$peer = @{
Name = 'vnet-1-to-vnet-2'
VirtualNetwork = $vnetA
RemoteVirtualNetworkId = '/subscriptions/<subscription-2-Id>/resourceGroups/test-rg-2/providers/Microsoft.Network/virtualNetworks/vnet-2'
}
Add-AzVirtualNetworkPeering @peer
使用 Get-AzVirtualNetworkPeering,取得從 vnet-1 到 vnet-2 的對等互連連線狀態。
$status = @{
ResourceGroupName = 'test-rg'
VirtualNetworkName = 'vnet-1'
}
Get-AzVirtualNetworkPeering @status | Format-Table VirtualNetworkName, PeeringState
PS /home/azureuser> Get-AzVirtualNetworkPeering @status | Format-Table VirtualNetworkName, PeeringState
VirtualNetworkName PeeringState
------------------ ------------
vnet-1 Initiated
登入 subscription-1
使用 az sign-in 登入 subscription-1。
az login
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 az account set 將訂用帳戶內容變更為 subscription-1。
az account set --subscription "subscription-1"
登入 subscription-2
驗證 subscription-2,以便設定對等互連。
使用 az sign-in 登入 subscription-2。
az login
變更為 subscription-1 (選用)
您可能必須切回 subscription-1,才能繼續執行 subscription-1 中的動作。
將內容變更為 subscription-1。
az account set --subscription "subscription-1"
建立對等互連連線
使用 az network vnet peering create ,在 vnet-1 與 vnet-2 之間建立對等互連連線。
az network vnet peering create \
--name vnet-1-to-vnet-2 \
--resource-group test-rg \
--vnet-name vnet-1 \
--remote-vnet /subscriptions/<subscription-2-Id>/resourceGroups/test-rg-2/providers/Microsoft.Network/VirtualNetworks/vnet-2 \
--allow-vnet-access
使用 az network vnet peering list,取得從 vnet-1 到 vnet-2 的對等互連連線狀態。
az network vnet peering list \
--resource-group test-rg \
--vnet-name vnet-1 \
--output table
對等互連連線會在 [對等互連] 中顯示 [已起始] 狀態。 若要完成對等互連,必須在 vnet-2 中設定對應的連線。
建立對等互連連線 - vnet-2 到 vnet-1
您需要之前步驟中 vnet-1 的資源識別碼,才能設定對等互連連線。
以 user-2 身分登入 Azure 入口網站。 如果這兩個訂用帳戶使用一個帳戶,請在入口網站中變更為 subscription-2。
在入口網站頂端的搜尋方塊中,輸入虛擬網路。 選取搜尋結果中的 [虛擬網路]。
選取 [vnet-2]。
選取 [對等互連]。
選取 + 新增。
在 [新增對等互連] 中,輸入或選取下列資訊:
設定 |
值 |
遠端虛擬網路摘要 |
|
對等互連連結名稱 |
vnet-1-to-vnet-2 |
虛擬網路部署模型 |
Resource Manager |
我知道我的資源識別碼 |
選取方塊 |
資源識別碼 |
輸入 vnet-2 的資源識別碼 |
目錄 |
選取與 vnet-1 和 user-1 對應的 Microsoft Entra ID 目錄 |
遠端虛擬網路對等互連設定 |
|
允許「對等互連的虛擬網路」存取 'vnet-1' |
保留預設值 [已啟用] |
允許「對等互連的虛擬網路」接收來自 'vnet-1' 的轉送流量 |
選取方塊 |
區域虛擬網路摘要 |
|
對等互連連結名稱 |
vnet-1-to-vnet-2 |
區域虛擬網路對等互連設定 |
|
允許 'vnet-1' 存取「對等互連的虛擬網路」 |
保留預設值 [已啟用] |
允許 'vnet-1' 接收來自「對等互連的虛擬網路」的轉送流量 |
選取方塊 |
選取 [新增]。
在下拉式方塊中,選取與 vnet-1 和 user-1 對應的目錄。
選取 [驗證]。
選取 [新增]。
登入 subscription-2
使用 Connect-AzAccount 登入 subscription-2。
Connect-AzAccount
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 Set-AzContext 將訂用帳戶內容變更為 subscription-2。
Set-AzContext -Subscription subscription-2
登入 subscription-1
驗證 subscription-1,以便設定對等互連。
使用 Connect-AzAccount 登入 subscription-1。
Connect-AzAccount
變更為 subscription-2 (選用)
您可能必須切回 subscription-2 ,才能繼續執行 subscription-2 中的動作。
將內容變更為 subscription-2。
Set-AzContext -Subscription subscription-2
建立對等互連連線
使用 Add-AzVirtualNetworkPeering ,在 vnet-2 與 vnet-1 之間建立對等互連連線。
$netB = @{
Name = 'vnet-2'
ResourceGroupName = 'test-rg-2'
}
$vnetB = Get-AzVirtualNetwork @netB
$peer = @{
Name = 'vnet-2-to-vnet-1'
VirtualNetwork = $vnetB
RemoteVirtualNetworkId = '/subscriptions/<subscription-1-Id>/resourceGroups/test-rg/providers/Microsoft.Network/virtualNetworks/vnet-1'
}
Add-AzVirtualNetworkPeering @peer
使用 Get-AzVirtualNetworkPeering,取得從 vnet-2 到 vnet-1 的對等互連連線狀態。
$status = @{
ResourceGroupName = 'test-rg-2'
VirtualNetworkName = 'vnet-2'
}
Get-AzVirtualNetworkPeering @status | Format-Table VirtualNetworkName, PeeringState
PS /home/azureuser> Get-AzVirtualNetworkPeering @status | Format-Table VirtualNetworkName, PeeringState
VirtualNetworkName PeeringState
------------------ ------------
vnet-2 Connected
登入 subscription-2
使用 az sign-in 登入 subscription-2。
az login
如果兩個訂用帳戶都使用同一個帳戶,請登入該帳戶,並使用 az account set 將訂用帳戶內容變更為 subscription-2。
az account set --subscription "subscription-2"
登入 subscription-1
驗證 subscription-1,以便設定對等互連。
使用 az sign-in 登入 subscription-1。
az login
變更為 subscription-2 (選用)
您可能必須切回 subscription-2 ,才能繼續執行 subscription-2 中的動作。
將內容變更為 subscription-2。
az account set --subscription "subscription-2"
建立對等互連連線
使用 az network vnet peering create ,在 vnet-2 與 vnet-1 之間建立對等互連連線。
az network vnet peering create \
--name vnet-2-to-vnet-1 \
--resource-group test-rg-2 \
--vnet-name vnet-2 \
--remote-vnet /subscriptions/<subscription-1-Id>/resourceGroups/test-rg/providers/Microsoft.Network/VirtualNetworks/vnet-1 \
--allow-vnet-access
使用 az network vnet peering list,取得從 vnet-2 到 vnet-1 的對等互連連線狀態。
az network vnet peering list \
--resource-group test-rg-2 \
--vnet-name vnet-2 \
--output table
您在對等互連中兩個虛擬網路的 [對等互連狀態] 資料行中看到 [已連線] 之後,對等互連便已成功建立。 您在任何一個虛擬網路中建立的任何 Azure 資源現在能夠透過其 IP 位址彼此通訊。 如果您使用虛擬網路的 Azure 名稱解析,則虛擬網路中的資源無法跨虛擬網路解析名稱。 如果您想要在對等互連的虛擬網路上解析名稱,則必須建立自己的 DNS (網域名稱系統) 伺服器或使用 Azure DNS。
若要進一步了解使用自己的 DNS 進行名稱解析,請參閱使用專屬 DNS 伺服器的名稱解析。
如需 Azure AD 的詳細資訊,請參閱什麼是 Azure DNS?。
下一步