使用 PowerShell 配置 VNet 到 VNet VPN 网关连接

本文介绍如何在虚拟网络之间创建 VPN 网关连接。 虚拟网络可位于相同或不同的区域,来自相同或不同的订阅。 从不同的订阅连接 VNet 时,订阅不需要与相同的 Active Directory 租户相关联。

本文中的步骤适用于 Resource Manager 部署模型并使用 PowerShell。 也可使用不同的部署工具或部署模型创建此配置,方法是从以下列表中选择另一选项:

将一个虚拟网络连接到另一个虚拟网络(VNet 到 VNet)类似于将 VNet 连接到本地站点位置。 这两种连接类型都使用 VPN 网关来提供使用 IPsec/IKE 的安全隧道。 如果 VNet 位于同一区域,可能会考虑使用 VNet 对等互连进行连接。 VNet 对等互连不使用 VPN 网关。 有关详细信息,请参阅 VNet 对等互连

可以将 VNet 到 VNet 通信与多站点配置组合使用。 这样,便可以建立将跨界连接与虚拟网络间连接相结合的网络拓扑,如下图所示:

关于连接

为什么要连接虚拟网络?

出于以下原因可能要连接虚拟网络:

  • 跨区域地域冗余和地域存在

    • 可以使用安全连接设置自己的异地复制或同步,而无需借助于面向 Internet 的终结点。
    • 使用 Azure 流量管理器和负载均衡器,可以设置支持跨多个 Azure 区域实现异地冗余的高可用性工作负荷。 一个重要的示例就是对分布在多个 Azure 区域中的可用性组设置 SQL Always On。
  • 具有隔离或管理边界的区域多层应用程序

    • 在同一区域中,由于存在隔离或管理要求,可以设置具有多个虚拟网络的多层应用程序,这些虚拟网络相互连接在一起。

有关 VNet 到 VNet 连接的详细信息,请参阅本文末尾的 VNet 到 VNet 常见问题解答

我应使用哪个步骤集?

在本文中,可以看到两组不同的步骤。 一组步骤适用于驻留在同一订阅中的 VNet,另一组适用于驻留在不同订阅中的 VNet。 两组步骤之间的主要差别在于是否可以在相同的 PowerShell 会话中创建和配置所有虚拟网络和网关资源。

本文中的步骤使用在每个部分开头声明的变量。 如果使用现有 VNet,请修改这些变量,反映自身环境中的设置。 如果需要虚拟网络的名称解析,请参阅名称解析

如何连接相同订阅中的 VNet

v2v 示意图

开始之前

在开始之前,需要安装最新版本的 Azure 资源管理器 PowerShell cmdlet(4.0 或更高版本)。 有关安装 PowerShell cmdlet 的详细信息,请参阅如何安装和配置 Azure PowerShell

步骤 1 - 规划 IP 地址范围

以下步骤创建两个虚拟网络,以及它们各自的网关子网和配置。 然后,在两个 VNet 之间创建 VPN 连接。 必须规划好网络配置的 IP 地址范围。 请记住,必须确保没有任何 VNet 范围或本地网络范围存在任何形式的重叠。 在这些示例中,我们没有包括 DNS 服务器。 如果需要虚拟网络的名称解析,请参阅名称解析

示例中使用了以下值:

TestVNet1 的值:

  • VNet 名称:TestVNet1
  • 资源组:TestRG1
  • 位置:中国东部
  • TestVNet1:10.11.0.0/16 和 10.12.0.0/16
  • FrontEnd:10.11.0.0/24
  • BackEnd:10.12.0.0/24
  • GatewaySubnet:10.12.255.0/27
  • GatewayName:VNet1GW
  • 公共 IP:VNet1GWIP
  • VPNType:RouteBased
  • Connection(1to4):VNet1toVNet4
  • Connection(1to5):VNet1toVNet5
  • ConnectionType:VNet2VNet

TestVNet4 的值:

  • VNet 名称:TestVNet4
  • TestVNet2:10.41.0.0/16 和 10.42.0.0/16
  • FrontEnd:10.41.0.0/24
  • BackEnd:10.42.0.0/24
  • GatewaySubnet:10.42.255.0/27
  • 资源组:TestRG4
  • 位置:中国北部
  • GatewayName:VNet4GW
  • 公共 IP:VNet4GWIP
  • VPNType:RouteBased
  • 连接:VNet4toVNet1
  • ConnectionType:VNet2VNet

步骤 2 - 创建并配置 TestVNet1

  1. 声明变量。 此示例使用本练习中的值来声明变量。 在大多数情况下,应该将这些值替换为自己的值。 但是,如果执行这些步骤是为了熟悉此类型的配置,则可以使用这些变量。 根据需要修改变量,并将其复制并粘贴到 PowerShell 控制台中。

    $Sub1 = "Replace_With_Your_Subcription_Name"
    $RG1 = "TestRG1"
    $Location1 = "China East"
    $VNetName1 = "TestVNet1"
    $FESubName1 = "FrontEnd"
    $BESubName1 = "Backend"
    $GWSubName1 = "GatewaySubnet"
    $VNetPrefix11 = "10.11.0.0/16"
    $VNetPrefix12 = "10.12.0.0/16"
    $FESubPrefix1 = "10.11.0.0/24"
    $BESubPrefix1 = "10.12.0.0/24"
    $GWSubPrefix1 = "10.12.255.0/27"
    $GWName1 = "VNet1GW"
    $GWIPName1 = "VNet1GWIP"
    $GWIPconfName1 = "gwipconf1"
    $Connection14 = "VNet1toVNet4"
    $Connection15 = "VNet1toVNet5"
    
  2. 连接到帐户。 使用下面的示例来帮助连接:

    Login-AzureRmAccount -EnvironmentName AzureChinaCloud
    

    检查该帐户的订阅。

    Get-AzureRmSubscription
    

    指定要使用的订阅。

    Select-AzureRmSubscription -SubscriptionName $Sub1
    
  3. 创建新的资源组。

    New-AzureRmResourceGroup -Name $RG1 -Location $Location1
    
  4. 创建 TestVNet1 的子网配置。 本示例创建一个名为 TestVNet1 的虚拟网络和三个子网:一个名为 GatewaySubnet、一个名为 FrontEnd,还有一个名为 Backend。 替换值时,请务必始终将网关子网特意命名为 GatewaySubnet。 如果命名为其他名称,网关创建会失败。

    以下示例使用前面设置的变量。 在本示例中,网关子网使用 /27。 尽管创建的网关子网最小可为 /29,但建议至少选择 /28 或 /27,创建包含更多地址的更大子网。 这样便可以留出足够的地址,满足将来可能需要使用的其他配置。

    $fesub1 = New-AzureRmVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1
    $besub1 = New-AzureRmVirtualNetworkSubnetConfig -Name $BESubName1 -AddressPrefix $BESubPrefix1
    $gwsub1 = New-AzureRmVirtualNetworkSubnetConfig -Name $GWSubName1 -AddressPrefix $GWSubPrefix1
    
  5. 创建 TestVNet1。

    New-AzureRmVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 `
    -Location $Location1 -AddressPrefix $VNetPrefix11,$VNetPrefix12 -Subnet $fesub1,$besub1,$gwsub1
    
  6. 请求一个公共 IP 地址,以分配给要为 VNet 创建的网关。 请注意,AllocationMethod 为 Dynamic。 无法指定要使用的 IP 地址。 它会动态分配到网关。

    $gwpip1 = New-AzureRmPublicIpAddress -Name $GWIPName1 -ResourceGroupName $RG1 `
    -Location $Location1 -AllocationMethod Dynamic
    
  7. 创建网关配置。 网关配置定义要使用的子网和公共 IP 地址。 使用该示例创建网关配置。

    $vnet1 = Get-AzureRmVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1
    $subnet1 = Get-AzureRmVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet1
    $gwipconf1 = New-AzureRmVirtualNetworkGatewayIpConfig -Name $GWIPconfName1 `
    -Subnet $subnet1 -PublicIpAddress $gwpip1
    
  8. 为 TestVNet1 创建网关。 本步骤为 TestVNet1 创建虚拟网络网关。 VNet 到 VNet 配置需要基于路由的 VPN 类型。 创建网关通常需要 45 分钟或更长的时间,具体取决于所选网关 SKU。

    New-AzureRmVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 `
    -Location $Location1 -IpConfigurations $gwipconf1 -GatewayType Vpn `
    -VpnType RouteBased -GatewaySku VpnGw1
    

步骤 3 - 创建并配置 TestVNet4

配置 TestVNet1 后,请创建 TestVNet4。 遵循以下步骤,并根据需要替换为自己的值。 此步骤可在相同的 PowerShell 会话中完成,因为其位于相同的订阅中。

  1. 声明变量。 请务必将值替换为要用于配置的值。

    $RG4 = "TestRG4"
    $Location4 = "China North"
    $VnetName4 = "TestVNet4"
    $FESubName4 = "FrontEnd"
    $BESubName4 = "Backend"
    $GWSubName4 = "GatewaySubnet"
    $VnetPrefix41 = "10.41.0.0/16"
    $VnetPrefix42 = "10.42.0.0/16"
    $FESubPrefix4 = "10.41.0.0/24"
    $BESubPrefix4 = "10.42.0.0/24"
    $GWSubPrefix4 = "10.42.255.0/27"
    $GWName4 = "VNet4GW"
    $GWIPName4 = "VNet4GWIP"
    $GWIPconfName4 = "gwipconf4"
    $Connection41 = "VNet4toVNet1"
    
  2. 创建新的资源组。

    New-AzureRmResourceGroup -Name $RG4 -Location $Location4
    
  3. 创建 TestVNet4 的子网配置。

    $fesub4 = New-AzureRmVirtualNetworkSubnetConfig -Name $FESubName4 -AddressPrefix $FESubPrefix4
    $besub4 = New-AzureRmVirtualNetworkSubnetConfig -Name $BESubName4 -AddressPrefix $BESubPrefix4
    $gwsub4 = New-AzureRmVirtualNetworkSubnetConfig -Name $GWSubName4 -AddressPrefix $GWSubPrefix4
    
  4. 创建 TestVNet4。

    New-AzureRmVirtualNetwork -Name $VnetName4 -ResourceGroupName $RG4 `
    -Location $Location4 -AddressPrefix $VnetPrefix41,$VnetPrefix42 -Subnet $fesub4,$besub4,$gwsub4
    
  5. 请求公共 IP 地址。

    $gwpip4 = New-AzureRmPublicIpAddress -Name $GWIPName4 -ResourceGroupName $RG4 `
    -Location $Location4 -AllocationMethod Dynamic
    
  6. 创建网关配置。

    $vnet4 = Get-AzureRmVirtualNetwork -Name $VnetName4 -ResourceGroupName $RG4
    $subnet4 = Get-AzureRmVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet4
    $gwipconf4 = New-AzureRmVirtualNetworkGatewayIpConfig -Name $GWIPconfName4 -Subnet $subnet4 -PublicIpAddress $gwpip4
    
  7. 创建 TestVNet4 网关。 创建网关通常需要 45 分钟或更长的时间,具体取决于所选网关 SKU。

    New-AzureRmVirtualNetworkGateway -Name $GWName4 -ResourceGroupName $RG4 `
    -Location $Location4 -IpConfigurations $gwipconf4 -GatewayType Vpn `
    -VpnType RouteBased -GatewaySku VpnGw1
    

步骤 4 - 创建连接

  1. 获取两个虚拟网关。 如果两个网关都属于同一订阅(如示例所示),则可以在同一 PowerShell 会话中完成此步骤。

    $vnet1gw = Get-AzureRmVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1
    $vnet4gw = Get-AzureRmVirtualNetworkGateway -Name $GWName4 -ResourceGroupName $RG4
    
  2. 创建 TestVNet1 到 TestVNet4 的连接。 本步骤创建从 TestVNet1 到 TestVNet4 的连接。 示例中引用了共享密钥。 可以对共享密钥使用自己的值。 共享密钥必须与两个连接匹配,这一点非常重要。 创建连接可能需要简短的一段时间才能完成。

    New-AzureRmVirtualNetworkGatewayConnection -Name $Connection14 -ResourceGroupName $RG1 `
    -VirtualNetworkGateway1 $vnet1gw -VirtualNetworkGateway2 $vnet4gw -Location $Location1 `
    -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'
    
  3. 创建 TestVNet4 到 TestVNet1 的连接。 此步骤类似上面的步骤,只不过是创建 TestVNet4 到 TestVNet1 的连接。 确保共享密钥匹配。 几分钟后会建立连接。

    New-AzureRmVirtualNetworkGatewayConnection -Name $Connection41 -ResourceGroupName $RG4 `
    -VirtualNetworkGateway1 $vnet4gw -VirtualNetworkGateway2 $vnet1gw -Location $Location4 `
    -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'
    
  4. 验证连接。 请参阅 如何验证连接部分。

如何连接不同订阅中的 VNet

v2v 示意图

在此方案中,我们连接 TestVNet1 和 TestVNet5。 TestVNet1 和 TestVNet5 位于不同的订阅中。 订阅不需要与相同的 Active Directory 租户相关联。 这些步骤与上一组的差别在于,一些配置步骤需要在第二个订阅的上下文中单独的 PowerShell 会话中执行。 尤其是当两个订阅属于不同的组织时。

步骤 5 - 创建并配置 TestVNet1

必须完成前面部分的步骤 1步骤 2,才能创建并配置 TestVNet1 及其 VPN 网关。 就此配置来说,不需创建前一部分中的 TestVNet4,虽然创建后不会与这些步骤冲突。 完成步骤 1 和步骤 2 后,请继续执行步骤 6,以创建 TestVNet5。

步骤 6 - 验证 IP 地址范围

必须确保新虚拟网络的 IP 地址空间 TestVNet5 不与任何 VNet 范围或局域网网关范围重叠。 在本示例中,虚拟网络可能属于不同的组织。 对于本练习,可以对 TestVNet5 使用以下值:

TestVNet5 的值:

  • VNet 名称:TestVNet5
  • 资源组:TestRG5
  • 位置:中国东部
  • TestVNet5:10.51.0.0/16 和 10.52.0.0/16
  • FrontEnd:10.51.0.0/24
  • BackEnd:10.52.0.0/24
  • GatewaySubnet:10.52.255.0.0/27
  • GatewayName:VNet5GW
  • 公共 IP:VNet5GWIP
  • VPNType:RouteBased
  • 连接:VNet5toVNet1
  • ConnectionType:VNet2VNet

步骤 7 - 创建并配置 TestVNet5

必须在新订阅的上下文中完成此步骤。 此部分可由不同的组织中拥有订阅的管理员执行。

  1. 声明变量。 请务必将值替换为要用于配置的值。

    $Sub5 = "Replace_With_the_New_Subcription_Name"
    $RG5 = "TestRG5"
    $Location5 = "China East"
    $VnetName5 = "TestVNet5"
    $FESubName5 = "FrontEnd"
    $BESubName5 = "Backend"
    $GWSubName5 = "GatewaySubnet"
    $VnetPrefix51 = "10.51.0.0/16"
    $VnetPrefix52 = "10.52.0.0/16"
    $FESubPrefix5 = "10.51.0.0/24"
    $BESubPrefix5 = "10.52.0.0/24"
    $GWSubPrefix5 = "10.52.255.0/27"
    $GWName5 = "VNet5GW"
    $GWIPName5 = "VNet5GWIP"
    $GWIPconfName5 = "gwipconf5"
    $Connection51 = "VNet5toVNet1"
    
  2. 连接到订阅 5。 打开 PowerShell 控制台并连接到帐户。 使用下面的示例来帮助连接:

    Login-AzureRmAccount -EnvironmentName AzureChinaCloud
    

    检查该帐户的订阅。

    Get-AzureRmSubscription
    

    指定要使用的订阅。

    Select-AzureRmSubscription -SubscriptionName $Sub5
    
  3. 创建新的资源组。

    New-AzureRmResourceGroup -Name $RG5 -Location $Location5
    
  4. 创建 TestVNet5 的子网配置。

    $fesub5 = New-AzureRmVirtualNetworkSubnetConfig -Name $FESubName5 -AddressPrefix $FESubPrefix5
    $besub5 = New-AzureRmVirtualNetworkSubnetConfig -Name $BESubName5 -AddressPrefix $BESubPrefix5
    $gwsub5 = New-AzureRmVirtualNetworkSubnetConfig -Name $GWSubName5 -AddressPrefix $GWSubPrefix5
    
  5. 创建 TestVNet5。

    New-AzureRmVirtualNetwork -Name $VnetName5 -ResourceGroupName $RG5 -Location $Location5 `
    -AddressPrefix $VnetPrefix51,$VnetPrefix52 -Subnet $fesub5,$besub5,$gwsub5
    
  6. 请求公共 IP 地址。

    $gwpip5 = New-AzureRmPublicIpAddress -Name $GWIPName5 -ResourceGroupName $RG5 `
    -Location $Location5 -AllocationMethod Dynamic
    
  7. 创建网关配置。

    $vnet5 = Get-AzureRmVirtualNetwork -Name $VnetName5 -ResourceGroupName $RG5
    $subnet5  = Get-AzureRmVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet5
    $gwipconf5 = New-AzureRmVirtualNetworkGatewayIpConfig -Name $GWIPconfName5 -Subnet $subnet5 -PublicIpAddress $gwpip5
    
  8. 创建 TestVNet5 网关。

    New-AzureRmVirtualNetworkGateway -Name $GWName5 -ResourceGroupName $RG5 -Location $Location5 `
    -IpConfigurations $gwipconf5 -GatewayType Vpn -VpnType RouteBased -GatewaySku VpnGw1
    

步骤 8 - 创建连接

在本示例中,由于网关位于不同订阅中,因此将此步骤拆分为了两个 PowerShell 会话,分别标记为 [订阅 1] 和 [订阅 5]。

  1. [订阅 1] 获取订阅 1 的虚拟网关。 登录并连接到订阅 1,然后运行以下示例:

    $vnet1gw = Get-AzureRmVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1
    

    复制以下元素的输出,并通过电子邮件或其他方法将其发送到订阅 5 的管理员。

    $vnet1gw.Name
    $vnet1gw.Id
    

    这两个元素的值类似于以下示例输出:

    PS D:\> $vnet1gw.Name
    VNet1GW
    PS D:\> $vnet1gw.Id
    /subscriptions/b636ca99-6f88-4df4-a7c3-2f8dc4545509/resourceGroupsTestRG1/providers/Microsoft.Network/virtualNetworkGateways/VNet1GW
    
  2. [订阅 5] 获取订阅 5 的虚拟网关。 登录并连接到订阅 5,然后运行以下示例:

    $vnet5gw = Get-AzureRmVirtualNetworkGateway -Name $GWName5 -ResourceGroupName $RG5
    

    复制以下元素的输出,并通过电子邮件或其他方法将其发送到订阅 1 的管理员。

    $vnet5gw.Name
    $vnet5gw.Id
    

    这两个元素的值类似于以下示例输出:

    PS C:\> $vnet5gw.Name
    VNet5GW
    PS C:\> $vnet5gw.Id
    /subscriptions/66c8e4f1-ecd6-47ed-9de7-7e530de23994/resourceGroups/TestRG5/providers/Microsoft.Network/virtualNetworkGateways/VNet5GW
    
  3. [订阅 1] 创建 TestVNet1 到 TestVNet5 连接。 本步骤创建从 TestVNet1 到 TestVNet5 的连接。 此处的差别在于无法直接获取 $vnet5gw,因为它位于不同的订阅中。 需要使用上述步骤中从订阅 1 传递的值来创建新的 PowerShell 对象。 使用下面的示例。 将名称、ID 和共享密钥替换为自己的值。 共享密钥必须与两个连接匹配,这一点非常重要。 创建连接可能需要简短的一段时间才能完成。

    连接到订阅 1,然后运行以下示例:

    $vnet5gw = New-Object Microsoft.Azure.Commands.Network.Models.PSVirtualNetworkGateway
    $vnet5gw.Name = "VNet5GW"
    $vnet5gw.Id   = "/subscriptions/66c8e4f1-ecd6-47ed-9de7-7e530de23994/resourceGroups/TestRG5/providers/Microsoft.Network/virtualNetworkGateways/VNet5GW"
    $Connection15 = "VNet1toVNet5"
    New-AzureRmVirtualNetworkGatewayConnection -Name $Connection15 -ResourceGroupName $RG1 -VirtualNetworkGateway1 $vnet1gw -VirtualNetworkGateway2 $vnet5gw -Location $Location1 -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'
    
  4. [订阅 5] 创建 TestVNet5 到 TestVNet1 连接。 此步骤类似上面的步骤,只不过是创建 TestVNet5 到 TestVNet1 的连接。 针对基于从订阅 1 获取的值来创建 PowerShell 对象,该过程也适用于此处。 在此步骤中,请确保共享密钥匹配。

    连接到订阅 5,然后运行以下示例:

    $vnet1gw = New-Object Microsoft.Azure.Commands.Network.Models.PSVirtualNetworkGateway
    $vnet1gw.Name = "VNet1GW"
    $vnet1gw.Id = "/subscriptions/b636ca99-6f88-4df4-a7c3-2f8dc4545509/resourceGroups/TestRG1/providers/Microsoft.Network/virtualNetworkGateways/VNet1GW "
    New-AzureRmVirtualNetworkGatewayConnection -Name $Connection51 -ResourceGroupName $RG5 -VirtualNetworkGateway1 $vnet5gw -VirtualNetworkGateway2 $vnet1gw -Location $Location5 -ConnectionType Vnet2Vnet -SharedKey 'AzureA1b2C3'
    

如何验证连接

Important

使用网关子网时,避免将网络安全组 (NSG) 与网关子网关联。 将网络安全组与此子网关联可能会导致 VPN 网关停止按预期方式工作。 有关网络安全组的详细信息,请参阅什么是网络安全组?

可以验证连接是否成功,方法是使用“Get-AzureRmVirtualNetworkGatewayConnection”cmdlet,带或不带“-Debug”。

  1. 使用以下 cmdlet 示例,配置符合自己需要的值。 如果出现提示,请选择“A”运行“所有”。 在此示例中,“-Name”是指所创建的需要测试的连接的名称。

    Get-AzureRmVirtualNetworkGatewayConnection -Name MyGWConnection -ResourceGroupName MyRG
    
  2. cmdlet 运行完毕后,查看该值。 在以下示例中,连接状态显示为“已连接”,且可以看到入口和出口字节数。

    "connectionStatus": "Connected",
    "ingressBytesTransferred": 33509044,
    "egressBytesTransferred": 4142431
    

VNet 到 VNet 常见问题解答

VNet 到 VNet 连接常见问题解答适用于 VPN 网关连接。 若要了解 VNet 对等互连,请参阅虚拟网络对等互连

Azure 会对 VNet 之间的流量收费吗?

当使用 VPN 网关连接时,同一区域中的 VNet 到 VNet 流量双向均免费。 跨区域 VNet 到 VNet 出口流量根据源区域的出站 VNet 间数据传输费率收费。 有关详细信息,请参阅 VPN 网关定价页。 如果使用 VNet 对等互连而非 VPN 网关连接 VNet,请参阅虚拟网络定价页

VNet 到 VNet 流量是否会通过 Internet?

否。 VNet 到 VNet 流量会流经 Azure 主干,而非 Internet。

VNet 到 VNet 流量是否安全?

是,它通过 IPsec/IKE 加密进行保护。

是否需要使用 VPN 设备将 VNet 连接在一起?

否。 将多个 Azure 虚拟网络连接在一起不需要 VPN 设备,除非需要跨界连接。

VNet 是否需要处于同一区域?

否。 虚拟网络可以在相同或不同的 Azure 区域(位置)中。

如果 VNet 不在同一订阅中,订阅是否需要与相同的 AD 租户相关联?

否。

能否将 VNet 到 VNet 连接与多站点连接一起使用?

是的。 虚拟网络连接可与多站点 VPN 同时使用。

一个虚拟网络可以连接到多少个本地站点和虚拟网络?

请参阅网关要求表。

是否可以使用 VNet 到 VNet 连接 VNet 外的 VM 或云服务?

否。 VNet 到 VNet 支持连接虚拟网络。 它不支持连接不在虚拟网络中的虚拟机或云服务。

云服务或负载均衡终结点可否跨 VNet?

否。 云服务或负载均衡终结点不能跨虚拟网络,即使它们连接在一起,也是如此。

是否可以为 VNet 到 VNet 或多站点连接使用 PolicyBased VPN 类型?

否。 VNet 到 VNet 连接和多站点连接需要 RouteBased(以前称为动态路由)VPN 类型的 Azure VPN 网关。

是否可以将 RouteBased VPN 类型的 VNet 连接到另一个 PolicyBased VPN 类型的 VNet?

否,两台虚拟网络都必须使用基于路由(以前称为动态路由)的 VPN。

VPN 隧道是否共享带宽?

是的。 虚拟网络的所有 VPN 隧道共享 Azure VPN 网关上的可用带宽,以及 Azure 中的相同 VPN 网关运行时间 SLA。

是否支持冗余隧道?

将一个虚拟网络网关配置为主动-主动模式时,支持在一对虚拟网络之间设置冗余隧道。

VNet 到 VNet 配置是否可以有重叠的地址空间?

否。 不能有重叠的 IP 地址范围。

连接的虚拟网络与内部本地站点之间是否可以有重叠的地址空间?

否。 不能有重叠的 IP 地址范围。

后续步骤