本文可帮助你使用 PowerShell 创建基本 SKU Azure VPN 网关。 创建的 VPN 网关可以是 RouteBased,也可以是 PolicyBased,具体取决于连接要求。 创建与本地网络的 VPN 连接时使用 VPN 网关。 还可以使用 VPN 网关连接 VNet。
重要
基本 SKU 存在特定的功能和性能限制,不应将其用于生产。 有关 SKU 的详细信息,请参阅关于网关 SKU。
- 关系图左侧显示了使用本文中的步骤创建的虚拟网络和 VPN 网关。
- 你稍后可以添加不同类型的连接,如关系图右侧所示。 例如,可以创建站点到站点连接和点到站点连接。 若要查看可以构建的不同设计体系结构,请参阅 VPN 网关设计。
本文中的步骤使用基本 SKU 创建虚拟网络、子网、网关子网和 VPN 网关(虚拟网络网关)。 本文中的步骤指定 RouteBased VPN 类型。 你也可以按照本文中的步骤指定 PolicyBased VPN 类型。 网关创建完成后,可以创建连接。 如果要使用除基本 SKU 以外的 SKU 来创建网关,请参阅门户文章。
基本 SKU 存在特定的功能和性能限制,不应将其用于生产。 基本 SKU 的一些限制如下:
- 基本 SKU VPN 网关使用基本 SKU 公共 IP 地址,而不是标准 SKU。
- 基本 SKU VPN 网关的公共 IP 地址分配方法必须是“动态”,而不是“静态”。
- 只能使用 PowerShell 或 Azure CLI 配置基本 SKU。
- 基本 SKU 不支持 IPv6。
- 基本 SKU 不支持 RADIUS 身份验证。
开始之前
执行这些步骤需要 Azure 订阅。 如果没有 Azure 订阅,可在开始前创建一个试用帐户。
使用 Azure PowerShell
可以在计算机本地安装并运行 Azure PowerShell cmdlet。 PowerShell cmdlet 经常更新。 如果尚未安装最新版本,说明中指定的值可能会失败。 若要查找计算机上安装的 Azure PowerShell 版本,请使用 Get-Module -ListAvailable Az
cmdlet。 若要进行安装或更新,请参阅安装 Azure PowerShell 模块。
创建资源组
使用 New-AzResourceGroup 创建 Azure 资源组。 资源组是在其中部署和管理 Azure 资源的逻辑容器。 如果在本地运行 PowerShell,请使用提升的权限打开 PowerShell 控制台,然后使用 Connect-AzAccount -Environment AzureChinaCloud
命令连接到 Azure。
New-AzResourceGroup -Name TestRG1 -Location ChinaNorth3
创建虚拟网络
使用 New-AzVirtualNetwork 创建虚拟网络。 以下示例在“ChinaNorth3”位置创建一个名为“VNet1”的虚拟网络:
$virtualnetwork = New-AzVirtualNetwork `
-ResourceGroupName TestRG1 `
-Location ChinaNorth3 `
-Name VNet1 `
-AddressPrefix 10.1.0.0/16
使用 New-AzVirtualNetworkSubnetConfig cmdlet 创建子网配置。
$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
-Name Frontend `
-AddressPrefix 10.1.0.0/24 `
-VirtualNetwork $virtualnetwork
使用 Set-AzVirtualNetwork cmdlet 设置虚拟网络的子网配置。
$virtualnetwork | Set-AzVirtualNetwork
添加网关子网
网关子网包含虚拟网络网关服务使用的保留 IP 地址。 使用下面的示例添加网关子网:
为虚拟网络设置变量。
$vnet = Get-AzVirtualNetwork -ResourceGroupName TestRG1 -Name VNet1
使用 Add-AzVirtualNetworkSubnetConfig cmdlet 创建网关子网。
Add-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -AddressPrefix 10.1.255.0/27 -VirtualNetwork $vnet
使用 Set-AzVirtualNetwork cmdlet 设置虚拟网络的子网配置。
$vnet | Set-AzVirtualNetwork
请求公共 IP 地址
每个 VPN 网关都必须有一个分配的公共 IP 地址。 目前,基本 SKU VPN 网关仍使用 动态分配方法公共 IP 地址和基本公共 IP 地址 SKU。 这些要求与其他 VPN 网关 SKU 不同。
$gwpip = New-AzPublicIpAddress -Name "VNet1GWIP" -ResourceGroupName "TestRG1" -Location "ChinaNorth3" -AllocationMethod Dynamic -Sku Basic
创建网关 IP 地址配置
网关配置定义要使用的子网和公共 IP 地址。 使用以下示例创建网关配置。
$vnet = Get-AzVirtualNetwork -Name VNet1 -ResourceGroupName TestRG1
$subnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet
$gwipconfig = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig -SubnetId $subnet.Id -PublicIpAddressId $gwpip.Id
创建 VPN 网关
创建网关通常需要 45 分钟或更长的时间,具体取决于所选的网关 SKU。 创建网关后,可以创建虚拟网络与另一个虚拟网络之间的连接。 或者,创建虚拟网络与本地位置之间的连接。
使用 New-AzVirtualNetworkGateway cmdlet 创建 VPN 网关。 在此示例中,我们创建基于路由的基本 SKU VPN 网关。 可以通过指定 -VpnType "PolicyBased"
来创建基于策略的网关。
New-AzVirtualNetworkGateway -Name VNet1GW -ResourceGroupName TestRG1 `
-Location "ChinaNorth3" -IpConfigurations $gwipconfig -GatewayType "Vpn" `
-VpnType "RouteBased" -GatewaySku Basic
查看 VPN 网关
可使用 Get-AzVirtualNetworkGateway cmdlet 查看 VPN 网关。
Get-AzVirtualNetworkGateway -Name Vnet1GW -ResourceGroup TestRG1
查看公共 IP 地址
若要查看 VPN 网关的公共 IP 地址,请使用 Get-AzPublicIpAddress cmdlet。 示例:
Get-AzPublicIpAddress -Name VNet1GWpip1 -ResourceGroupName TestRG1
清理资源
如果不再需要所创建的资源,请使用 Remove-AzResourceGroup 命令删除资源组。 这会删除资源组及其包含的所有资源。
Remove-AzResourceGroup -Name TestRG1
后续步骤
完成创建网关后,可以创建虚拟网络与另一个虚拟网络之间的连接。 或者,创建虚拟网络与本地位置之间的连接。 请参阅以下文章: