使用 PowerShell 為 ExpressRoute 設定虛擬網路閘道
本文會逐步引導您使用 PowerShell 新增、調整和移除預先存在的虛擬網路 (VNet) 虛擬網路閘道的步驟。 此設定的步驟適用於使用 Resource Manager 部署模型作為 ExpressRoute 設定所建立的 VNet。 如需有關 ExpressRoute 之虛擬網路閘道和閘道組態設定的詳細資訊,請參閱關於 ExpressRoute 的虛擬網路閘道。
必要條件
設定參考清單
此工作的步驟會根據下列組態參考清單中的值來使用 VNet。 此清單中也會概述更多設定和名稱。 雖然我們會根據這份清單中的值加入變數,但不會在任何步驟中直接使用這份清單。 您可以複製清單以供參考,並使用您自己的值來取代其中的值。
設定 | 值 |
---|---|
虛擬網路名稱 | TestVNet |
虛擬網路位址空間 | 192.168.0.0/16 |
資源群組 | TestRG |
Subnet1 名稱 | FrontEnd |
Subnet1 位址空間 | 192.168.1.0/24 |
Subnet1 名稱 | FrontEnd |
閘道子網路名稱 | GatewaySubnet |
閘道子網路位址空間 | 192.168.200.0/26 |
區域 | 美國西部 |
閘道名稱 | GW |
閘道 IP 名稱 | GWIP |
閘道 IP 設定名稱 | gwipconf |
類型 | ExpressRoute |
閘道公用 IP 名稱 | gwpip |
新增閘道
重要
如果您打算在 ExpressRoute 上使用 IPv6 型私人對等互連,請務必為 -GatewaySku 選取 AZ SKU (ErGw1AZ、ErGw2AZ、ErGw3AZ),或為搭配標準和靜態公用 IP 的 -GatewaySKU 使用非 AZ SKU (Standard、HighPerformance、UltraPerformance)。
若要與 Azure 連線,請執行
Connect-AzAccount
。宣告您在本教學課程中使用的變數。 請務必編輯範例,以反映您要使用的設定。
$RG = "TestRG" $Location = "West US" $GWName = "GW" $GWIPName = "GWIP" $GWIPconfName = "gwipconf" $VNetName = "TestVNet"
如果您想要在 Azure 擴充區域中建立閘道,請新增 $ExtendedLocation 變數。
$RG = "TestRG" $Location = "West US" $ExtendedLocation = "losangeles" $GWName = "GW" $GWIPName = "GWIP" $GWIPconfName = "gwipconf" $VNetName = "TestVNet"
將虛擬網路物件儲存為變數。
$vnet = Get-AzVirtualNetwork -Name $VNetName -ResourceGroupName $RG
將閘道子網路加入至虛擬網路。 閘道子網路必須命名為 "GatewaySubnet"。 閘道子網路必須是 /27 或更大 (/26、/25 等等)。 如果您打算將 16 個 ExpressRoute 線路連線到您的閘道,則必須建立 /26 或更大的閘道子網路。
Add-AzVirtualNetworkSubnetConfig -Name GatewaySubnet -VirtualNetwork $vnet -AddressPrefix 192.168.200.0/26
如果您使用雙重堆疊虛擬網路,並打算透過 ExpressRoute 使用 IPv6 型私人對等互連,請改為建立雙重堆疊閘道子網路。
Add-AzVirtualNetworkSubnetConfig -Name GatewaySubnet -VirtualNetwork $vnet -AddressPrefix "10.0.0.0/26","ace:daa:daaa:deaa::/64"
設定組態。
$vnet = Set-AzVirtualNetwork -VirtualNetwork $vnet
將閘道子網路儲存為變數。
$subnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet
要求公用 IP 位址。 建立閘道之前需要有 IP 位址。 您無法指定想要使用的 IP 位址;該 IP 位址會以動態方式指派。 下一個組態章節將使用此 IP 位址。 AllocationMethod 必須是動態的。
$pip = New-AzPublicIpAddress -Name $GWIPName -ResourceGroupName $RG -Location $Location -AllocationMethod Static -SKU Standard
如果您想要在 Azure 擴充區域中建立閘道,請使用 -ExtendedLocation 參數在擴充區域中要求公用 IP 位址。
$pip = New-AzPublicIpAddress -Name $GWIPName -ResourceGroupName $RG -Location $Location -ExtendedLocation $ExtendedLocation -AllocationMethod Static -SKU Standard
注意
新的 ExpressRoute 虛擬網路閘道不支援基本 SKU 公用 IP。
建立適用於閘道的組態。 閘道器組態定義要使用的子網路和公用 IP 位址。 在此步驟中,您要指定在建立閘道將使用的組態。 使用下列範例來建立閘道組態。
$ipconf = New-AzVirtualNetworkGatewayIpConfig -Name $GWIPconfName -Subnet $subnet -PublicIpAddress $pip
建立閘道。 在這個步驟中, -GatewayType 特別重要。 您必須使用值 ExpressRoute。 執行這些 Cmdlet 之後,閘道需要花費 45 分鐘或更久的時間來建立。
New-AzVirtualNetworkGateway -Name $GWName -ResourceGroupName $RG -Location $Location -IpConfigurations $ipconf -GatewayType Expressroute -GatewaySku Standard
如果您想要在 Azure 擴充區域中建立閘道,請新增 -ExtendedLocation 參數。
New-AzVirtualNetworkGateway -Name $GWName -ResourceGroupName $RG -Location $Location -ExtendedLocation $ExtendedLocation -IpConfigurations $ipconf -GatewayType Expressroute -GatewaySku Standard
注意
若要在 Azure 擴充區域中建立閘道,您必須先 要求存取擴充區域。 一旦您有存取權,您就可以建立閘道。
在擴充區域中建立虛擬網路網關時,適用下列考慮:
- Azure 擴充區域中不支援 可用性區域。
- Azure 擴充區域目前支援下列 SKU:Standard、HighPerformance、UltraPerformance。
- Azure 擴充區域中的閘道不支援本機 SKU 線路。
確認已建立閘道
使用下列命令,確認已建立閘道:
Get-AzVirtualNetworkGateway -ResourceGroupName $RG
調整閘道大小
有幾個閘道 SKU。 您可以使用下列命令隨時變更閘道器 SKU。
$gw = Get-AzVirtualNetworkGateway -Name $GWName -ResourceGroupName $RG
Resize-AzVirtualNetworkGateway -VirtualNetworkGateway $gw -GatewaySku HighPerformance
清除資源
使用下列命令來移除閘道:
Remove-AzVirtualNetworkGateway -Name $GWName -ResourceGroupName $RG
下一步
建立 VNet 閘道之後,您可以將 VNet 連結至 ExpressRoute 循環。