你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

通过门户从不同部署模型中连接虚拟网络

本文介绍如何将经典 VNet 连接到 Resource Manager VNet,以使位于单独部署模型中的资源能够相互通信。 本文中的步骤主要使用 Azure 门户完成,但也可通过从此列表中选择文章使用 PowerShell 来创建此配置。

本文适用于已经拥有使用经典(旧版)部署模型创建的 VNet,并且希望将经典 VNet 连接到使用最新部署模型创建的另一个 VNet 的客户。 如果还没有旧版 VNet,请改用创建 VNet 到 VNet 连接一文。

体系结构

将经典 VNet 连接到 Resource Manager VNet 类似于将 VNet 连接到本地站点位置。 这两种连接类型都使用 VPN 网关来提供使用 IPsec/IKE 的安全隧道。 可以在位于不同订阅、不同区域中的 VNet 之间创建连接。 还可以连接已连接到本地网络的 VNet,只要网关是动态或基于路由的。 有关 VNet 到 VNet 连接的详细信息,请参阅 VNet 到 VNet 连接常见问题解答

对于此配置,会在虚拟网络之间创建基于 IPsec/IKE VPN 隧道的 VPN 网关连接。 请确保 VNet 的范围不互相重叠,也不与它们连接到的任何本地网络重叠。

下表显示了有关如何定义示例 VNet 和本地站点的示例:

虚拟网络 地址空间 区域 连接到本地网络站点
ClassicVNet (10.1.0.0/16) 美国西部 RMVNetSite (192.168.0.0/16)
RMVNet (192.168.0.0/16) 美国东部 ClassicVNetSite (10.1.0.0/16)

先决条件

这些步骤假定已创建了两个 VNet。 如果使用本文进行练习并且还没有 VNet,相关步骤中的链接可以帮助你创建它们。

  • 请确认不同 VNet 的地址范围互不重叠,也不与网关可能连接到的其他连接的任何范围重叠。

  • 本文中同时使用 Azure 门户和 PowerShell。 要创建从经典 VNet 到 Resource Manager VNet 的连接,必须使用 PowerShell。 为资源管理器和服务管理安装最新的 PowerShell cmdlet。

    虽然可以使用 Azure Cloud Shell 环境执行一些 PowerShell 命令,但需要安装这两个版本的 cmdlet 才能正确创建连接。

    有关详细信息,请参阅如何安装和配置 Azure PowerShell

示例设置

可使用这些值创建测试环境,或参考这些值以更好地理解本文中的示例。

经典 VNet

VNet 名称 = ClassicVNet
地址空间 = 10.1.0.0/16
子网名称 = Subnet1
子网地址范围 = 10.1.0.0/24
订阅 = 要使用的订阅
资源组 = ClassicRG
位置 = 美国西部
GatewaySubnet 地址范围 = 10.1.255.0/27
本地站点名称 = RMVNetSite
网关大小 = 标准

Resource Manager VNet

VNet 名称 = RMVNet
地址空间 = 192.168.0.0/16
资源组 = RMRG
位置 = 美国东部
子网名称 = Subnet1
地址范围 = 192.168.1.0/24
GatewaySubnet = 192.168.255.0/27
虚拟网关名称 = RMGateway
网关类型 = VPN
VPN 类型 = 基于路由
SKU = VpnGw1
位置 = 美国东部
虚拟网络 = RMVNet(将 VPN 网关关联到此 VNet)
第一个 IP 配置 = rmgwpip(网关公共 IP 地址)
本地网络网关 = ClassicVNetSite
连接名称 = RM-Classic

配置经典 VNet

在本部分中,会为经典 VNet 创建本地网络(本地站点)和虚拟网络网关。 这些屏幕截图仅供参考。 请务必将值替换成自己的值,或者使用示例值。

如果已有具有 VPN 网关的 VNet,请验证该网关是否为动态的。 如果该网关是静态的,则必须先删除 VPN 网关,然后才能继续配置站点和网关

1.创建经典 VNet

如果还没有经典 VNet 并且使用这些步骤进行练习,则可以使用示例值创建 VNet。 请按照以下步骤操作,确保使用步骤中的导航方法来创建虚拟网络。

示例值

  • 项目详细信息
    • 资源组 = ClassicRG
  • 实例详细信息
    • 名称 = ClassicVNet
    • 地址空间 = 10.1.0.0/16
    • 子网名称 = Subnet1
    • 子网地址范围 = 10.1.0.0/24
    • 位置 = 美国西部
  1. 打开 Azure 门户,然后使用 Azure 帐户登录。

    重要

    若要查看用于创建经典 VNet 的选项,必须使用以下步骤导航到该页面。

  2. 单击页面顶部的“+ 创建资源”,打开显示“搜索服务和市场”的页面。

  3. 在“搜索服务和市场”字段中,键入“虚拟网络”。

  4. 从返回的列表中找到“虚拟网络”,单击它打开“虚拟网络”页面。

  5. 在“虚拟网络”页的“创建”按钮下的文本中,单击“(更改为经典)”以切换到“使用经典进行部署”措辞。 如果由于疏忽没有这样做,最终将改为使用资源管理器 VNet。

  6. 单击“创建”以打开“创建虚拟网络(经典)”页。

  7. 填写值,然后单击“查看 + 创建”和“创建”以创建经典 VNet。

2. 配置经典站点和虚拟网络网关

  1. 转到经典 VNet。

  2. 单击左侧菜单列表中的“网关”,然后单击横幅以打开用于配置网关的页面。

  3. 在“配置 VPN 连接和网关”页的连接”选项卡上,填充值,必要时使用练习示例值

    • 连接类型 = 站点到站点
    • 本地站点名称 = RMVNetSite
    • VPN 网关 IP 地址 = 如果不知道资源管理器 VPN 网关的公共 IP 地址,或尚未创建一个地址,请使用占位符值。 稍后可更新此设置。
    • 本地站点客户端地址 = RM VNet 的地址范围。 例如 192.168.0.0/16。
  4. 单击页面底部的“下一步: 网关”,前进到“网关”选项卡。

  5. 在“网关”选项卡上,配置设置:

    • 大小 = 标准
    • 路由类型 = 动态
    • GatewaySubnet 的地址范围 = 10.1.255.0/27
  6. 单击“查看 + 创建”以验证设置。

  7. 单击“创建”以创建网关。 创建该网关最多可能需要 45 分钟。 配置网关时,可以继续执行后续步骤。

配置资源管理器 VNet

在本部分中,将创建 RM 虚拟网络和 RM VPN 网关。 如果已有资源管理器虚拟网络和 VPN 网关,请验证网关是否是基于路由的网关。

1. 创建 RM 虚拟网络

创建资源管理器 VNet。

有关步骤,请参阅创建虚拟机

示例值:

  • 项目详细信息
    • 资源组 = RMRG
  • 实例详细信息
    • VNet 名称 = RMVNet
    • 区域 = 美国东部
  • IP 地址
    • 地址空间 = 192.168.0.0/16
    • 子网名称 = Subnet1
    • 地址范围 = 192.168.1.0/24

2. 创建 RM 虚拟网络网关

接下来,为 VNet 创建虚拟网络网关(VPN 网关)对象。 创建网关通常需要 45 分钟或更长的时间,具体取决于所选的网关 SKU。

有关步骤,请参阅创建 VPN 网关

示例值:

  • 实例详细信息
    • 名称 = RMGateway
    • 区域 = 美国东部
    • 网关类型 = VPN
    • VPN 类型 = 基于路由
    • SKU = VpnGw2
    • 代系 = 第 2 代
    • 虚拟网络 = RMVNet
    • GatewaySubnet 地址范围 = 192.168.255.0/27
    • 公共 IP 地址类型 = 基本
  • 公共 IP 地址
    • 公共 IP 地址 = 新建
    • 公共 IP 地址名称 = RMGWpip

3. 创建 RM 本地网络网关

在此步骤中,创建本地网络网关。 本地网络网关是一个对象,它指定与经典 VNet 及其虚拟网络网关关联的地址范围和公共 IP 地址终结点。

有关步骤,请参阅创建本地网关

示例值

  • 项目详细信息
    • 资源组 = RMRG
    • 区域 = 美国东部
  • 名称 = ClassicVNetSite
  • 终结点 = IP 地址
  • IP 地址 = 经典 VNet 的网关公共 IP 地址。 如有必要,可以使用占位符 IP 地址,稍后再返回修改。
  • 地址空间 = 10.1.0.0/16(经典 VNet 的地址空间)

修改站点和本地网络网关设置

这两个网关部署完成后,可以继续执行后续步骤。 后续步骤需要分配给每个网关的公共 IP 地址。

修改经典 VNet 本地站点设置

在本部分中,通过使用资源管理器虚拟网络网关的地址更新公共 IP 地址字段来修改经典 VNet 的本地网络站点。

  1. 对于这些步骤,需要获取“资源管理器虚拟网络网关”的公共 IP 地址。 通过转到 RM 虚拟网络网关“概述”页面,可以找到网关 IP 地址。 复制 IP 地址。
  2. 接下来,转到“经典 VNet”。
  3. 单击左侧菜单中的“站点到站点连接”,打开站点到站点连接页面。
  4. 在“名称”下,单击创建的 RM 站点名称。 例如 RMVNetSite。 这将打开本地站点的“属性”页。
  5. 在“属性”页上,单击“编辑本地站点”。
  6. 将“VPN 网关 IP 地址”更改为分配给 RMVNet 网关(要连接的网关)的公共 IP 地址。
  7. 单击“确定”保存设置。

修改 RM VNet 本地网络网关设置

在本部分中,通过使用经典虚拟网络网关的地址更新公共 IP 地址字段来修改资源管理器本地网络网关对象的本地网络网关设置。

  1. 对于这些步骤,需要获取“经典虚拟网络网关”的公共 IP 地址。 通过转到经典虚拟网络“概述”页面,可以找到网关 IP 地址。
  2. 在“所有资源”中,找到本地网络网关。 在此示例中,本地网络网关是 ClassicVNetSite。
  3. 在左侧菜单中,单击“配置”并更新 IP 地址。 关闭页面。

有关步骤,请参阅修改本地网络网关设置

配置连接

本部分可帮助你将经典 VNet 连接到 RM VNet。 即使似乎可以在门户中进行经典 VNet 连接,但连接也会失败。 此部分要求在计算机上本地安装 PowerShell,如先决条件中所述。

获取经典 VNet 值

在 Azure 门户中创建 VNet 时,名称和站点的完整值在门户中不可见。 例如,在 Azure 门户中命名为“ClassicVNet”的 VNet 在网络配置文件中可能具有更长的名称。 该名称可能如下所示:“Group ClassicRG ClassicVNet”。 本地网络站点的名称也可能比门户中显示的名称要长得多。

在这些步骤中,下载网络配置文件并获取将在后续部分中使用的值。

1.连接到 Azure 帐户

使用提升的权限打开 PowerShell 控制台并登录 Azure 帐户。 登录后将下载帐户设置,以便 Azure PowerShell 使用这些设置。 以下 cmdlet 会提示为资源管理器部署模型提供 Azure 帐户的登录凭据:

  1. 首先,连接到 RM。

    连接以使用 RM cmdlet。

    Connect-AzAccount
    
  2. 获取 Azure 订阅的列表(可选)。

    Get-AzSubscription
    
  3. 如果有多个订阅,请指定要使用的订阅。

    Select-AzSubscription -SubscriptionName "Name of subscription"
    
  4. 接下来,必须连接到经典的 PowerShell cmdlet。

    使用以下命令为经典部署模型添加 Azure 帐户:

    Add-AzureAccount
    
  5. 获取订阅的列表(可选)。

    Get-AzureSubscription
    
  6. 如果有多个订阅,请指定要使用的订阅。

    Select-AzureSubscription -SubscriptionName "Name of subscription"
    

2.查看网络配置文件值

  1. 在计算机上创建目录。 对于此示例,我们创建了一个名为“AzureNet”的目录。

  2. 将网络配置文件导出到目录。 在此示例中,网络配置文件导出到 C:\AzureNet。

    Get-AzureVNetConfig -ExportToFile C:\AzureNet\NetworkConfig.xml
    
  3. 使用文本编辑器打开文件,并查看经典 VNet 的名称。 运行 PowerShell cmdlet 时,请使用网络配置文件中的名称。

    • VNet 名称以 VirtualNetworkSite name = 形式列出
    • 站点名称以 LocalNetworkSite name= 形式列出

3.创建连接

设置共享密钥并创建从经典 VNet 到 Resource Manager VNet 的连接。 必须使用 PowerShell(而不是 Azure 门户)创建连接。

如果出现错误,请验证站点和 VNet 名称是否正确。 此外,请确保已针对两个版本的 PowerShell 进行了身份验证,否则将无法设置共享密钥。

  • 在此示例中,-VNetName 是在网络配置文件中找到的经典 VNet 的名称。
  • -LocalNetworkSiteName 是为本地站点指定的名称,与在网络配置文件中找到的一致。 使用完整站点名称,包括任何数字。
  • -SharedKey 是你生成并指定的值。 对于此示例,我们使用的是“abc123”,但应生成和使用更复杂的名称。 在此处指定的值必须与在创建资源管理器到经典的连接时指定的值相同。
  1. 设置密钥。

    Set-AzureVNetGatewayKey -VNetName "Group ClassicRG ClassicVNet" `
    -LocalNetworkSiteName "172B916_RMVNetSite" -SharedKey abc123
    
  2. 通过运行以下命令创建 VPN 连接。 请确保修改这些命令以反映你的环境。

    设置变量。

    $vnet01gateway = Get-AzLocalNetworkGateway -Name ClassicVNetSite -ResourceGroupName RMRG
    $vnet02gateway = Get-AzVirtualNetworkGateway -Name RMGateway -ResourceGroupName RMRG
    

    创建连接。 请注意,-ConnectionType 是 IPsec,而不是 Vnet2Vnet。

    New-AzVirtualNetworkGatewayConnection -Name RM-Classic -ResourceGroupName RMRG `
    -Location "East US" -VirtualNetworkGateway1 `
    $vnet02gateway -LocalNetworkGateway2 `
    $vnet01gateway -ConnectionType IPsec -RoutingWeight 10 -SharedKey 'abc123'
    

验证连接

可使用 Azure 门户或 PowerShell 来验证连接。 验证时,可能由于正在创建连接而需要等待一两分钟的时间。 连接成功后,连接状态将从“正在连接”变为“已连接”。

验证经典 VNet 到 RM 的连接

在 Azure 门户中,可通过导航到连接来查看经典 VNet VPN 网关的连接状态。 以下步骤演示导航到连接并进行验证的一种方法。

  1. Azure 门户中,转到经典虚拟网络 (VNet)。
  2. 在虚拟网络页上,单击要查看的连接类型。 例如,“站点到站点连接”。
  3. 在“站点到站点连接”页的“名称”下,选择要查看的站点连接。
  4. 在“属性”页上,查看有关连接的信息。

验证 RM VNet 到经典的连接

在 Azure 门户中,可通过转到连接来查看 VPN 网关的连接状态。 以下步骤演示导航到连接并进行验证的一种方法。

  1. Azure 门户中,转到你的虚拟网络网关。
  2. 在“虚拟网络网关”页面中,单击“连接”。 可查看每个连接的状态。
  3. 单击想要验证的连接的名称。 在“概要”中,可以查看有关连接的详细信息。 成功连接后,“状态”值将是“成功”和“已连接”。

后续步骤

有关 VNet 到 VNet 连接的详细信息,请参阅 VPN 网关常见问题解答