使用 Azure 门户配置 VNet 到 VNet VPN 网关连接

本文介绍如何使用 VNet 到 VNet 连接类型来连接虚拟网络。 虚拟网络可位于相同或不同的区域,来自相同或不同的订阅。 从不同的订阅连接 VNet 时,订阅不需要与相同的 Active Directory 租户相关联。

本文中的步骤适用于资源管理器部署模型,并使用 Azure 门户。 也可使用不同的部署工具或部署模型创建此配置,方法是从以下列表中选择另一选项:

v2v 示意图

关于连接 VNet

可通过多种方式来连接 VNet。 以下各节介绍了如何通过不同方式来连接虚拟网络。

VNet 到 VNet

配置一个 VNet 到 VNet 连接即可轻松地连接 VNet。 使用 VNet 到 VNet 连接类型 (VNet2VNet) 将一个虚拟网络连接到另一个虚拟网络类似于创建到本地位置的站点到站点 IPsec 连接。 这两种连接类型都使用 VPN 网关来提供使用 IPsec/IKE 的安全隧道,二者在通信时使用同样的方式运行。 连接类型的差异在于本地网关的配置方式。 创建 VNet 到 VNet 连接时,看不到本地网关地址空间。 它是自动创建并填充的。 如果更新一个 VNet 的地址空间,另一个 VNet 会自动知道路由到更新的地址空间。 与在 VNet 之间创建站点到站点连接相比,创建 VNet 到 VNet 连接通常速度更快且更容易。

站点到站点 (IPsec)

如果要进行复杂的网络配置,则使用站点到站点步骤来连接 VNet 会较好。 使用站点到站点 IPsec 步骤时,可以手动创建和配置本地网关。 每个 VNet 的本地网关都将其他 VNet 视为本地站点。 这样可以为本地网关指定路由流量所需的其他地址空间。 如果 VNet 的地址空间更改,则需根据更改更新相应的本地网关。 它不自动进行更新。

VNet 对等互连

可以考虑使用 VNet 对等互连来连接 VNet。 VNet 对等互连不使用 VPN 网关,并且有不同的约束。 另外,VNet 对等互连定价的计算不同于 VNet 到 VNet VPN 网关定价的计算。 有关详细信息,请参阅 VNet 对等互连

为何创建 VNet 到 VNet 连接?

你可能会出于以下原因而使用 VNet 到 VNet 连接来连接虚拟网络:

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

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

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

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

关于连接

本文介绍如何使用 VNet 到 VNet 连接类型来连接 VNet。 使用这些步骤作为练习时,可以使用示例设置值。 示例中的虚拟网络在同一订阅中,但却在不同的资源组中。 如果 VNet 在不同的订阅中,则无法在门户中创建连接。 可以使用 PowerShellCLI。 有关 VNet 到 VNet 连接的详细信息,请参阅本文末尾的 VNet 到 VNet 常见问题解答

示例设置

TestVNet1 的值:

  • VNet 名称:TestVNet1
  • 地址空间:10.11.0.0/16
  • 订阅:选择要使用的订阅
  • 资源组:TestRG1
  • 位置:中国北部
  • 子网名称:FrontEnd
  • 子网地址范围:10.11.0.0/24
  • 网关子网名称:GatewaySubnet(这会在门户中自动填充)
  • 网关子网地址范围:10.11.255.0/27
  • DNS 服务器:使用 DNS 服务器的 IP 地址
  • 虚拟网络网关名称:TestVNet1GW
  • 网关类型:VPN
  • VPN 类型:基于路由
  • SKU:选择要使用的网关 SKU
  • 公共 IP 地址名称:TestVNet1GWIP
  • 连接名称:TestVNet1toTestVNet4
  • 共享密钥:可以自己创建共享密钥。 对于本示例,我们使用 abc123。 重要的是,在创建 VNet 之间的连接时,值必须匹配。

TestVNet4 的值:

  • VNet 名称:TestVNet4
  • 地址空间:10.41.0.0/16
  • 订阅:选择要使用的订阅
  • 资源组:TestRG4
  • 位置:中国北部
  • 子网名称:FrontEnd
  • 子网地址范围:10.41.0.0/24
  • 网关子网名称:GatewaySubnet(这会在门户中自动填充)
  • GatewaySubnet 地址范围:10.41.255.0/27
  • DNS 服务器:使用 DNS 服务器的 IP 地址
  • 虚拟网络网关名称:TestVNet4GW
  • 网关类型:VPN
  • VPN 类型:基于路由
  • SKU:选择要使用的网关 SKU
  • 公共 IP 地址名称:TestVNet4GWIP
  • 连接名称:TestVNet4toTestVNet1
  • 共享密钥:可以自己创建共享密钥。 对于本示例,我们使用 abc123。 重要的是,在创建 VNet 之间的连接时,值必须匹配。

1.创建并配置 TestVNet1

如果已有一个 VNet,请检查其设置是否与 VPN 网关设计兼容。 请特别留意可能与其他网络重叠的任何子网。 如果有重叠子网,连接无法正常工作。 如果为 VNet 配置了正确的设置,可以开始执行 指定 DNS 服务器 部分中的步骤。

创建虚拟网络

若要使用 Azure 门户在 Resource Manager 部署模型中创建 VNet,请执行以下步骤。 这些屏幕截图作为示例提供。 请务必替换成自己的值。 有关使用虚拟网络的详细信息,请参阅 虚拟网络概述

Note

为了让此 VNet 连接到本地位置,需与本地网络管理员协调操作,指定一个 IP 地址范围,将其专用于此虚拟网络。 如果 VPN 连接的两侧存在重复的地址范围,则流量不会按预期的方式路由。 另外,若要将此 VNet 连接到其他 VNet,则地址空间不能与其他 VNet 重叠。 请注意对网络配置进行相应的计划。

  1. 从浏览器导航到 Azure 门户,并在必要时使用 Azure 帐户登录。
  2. 单击“+”。 在“搜索应用商店”字段中,键入“虚拟网络”。 从返回的列表中找到“虚拟网络”,单击打开“虚拟网络”页。

    查找虚拟网络资源页

  3. 从靠近“虚拟网络”页底部的“选择部署模型”列表中,选择“资源管理器”,然后单击“创建”。

    选择资源管理器

  4. 在“创建虚拟网络”页上,配置 VNet 设置。 填写字段时,如果在字段中输入的字符有效,红色感叹号标记会变成绿色对钩标记。 可能会有自动填充的值。 如果出现这种情况,将值替换为自己的值。 “创建虚拟网络”页看起来与以下示例类似:

    “创建虚拟网络”页

  5. 名称:输入虚拟网络的名称。

  6. 地址空间:输入地址空间。 如果有多个要添加的地址空间,请添加第一个地址空间。 可在创建 VNet 后再添加其他地址空间。
  7. 订阅:确认列出的订阅是正确的。 可以使用下拉列表更改订阅。
  8. 资源组:选择现有的资源组,或键入新资源组的名称以创建新的资源组。 如果要创建新组,请根据计划的配置值来命名资源组。 有关资源组的详细信息,请访问 Azure Resource Manager 概述
  9. 位置:选择 VNet 的位置。 该位置确定要部署到此 VNet 的资源所在的位置。
  10. 子网:添加子网名称和子网地址范围。 可在创建 VNet 后再添加其他子网。
  11. 如果希望能够在仪表板上轻松查找 VNet,请选择“固定到仪表板”,并单击“创建”。

    固定到仪表板

2.添加其他地址空间并创建子网

创建 VNet 后,可以添加其他地址空间并创建子网。

添加更多地址空间

  1. 若要添加更多地址空间,请在虚拟网络页的“设置”部分下单击“地址空间”,打开“地址空间”页。
  2. 添加更多地址空间,然后单击页顶部的“保存”。

    添加地址空间

创建更多子网

  1. 若要创建子网,请在虚拟网络页的“设置”部分中单击“子网”,打开“子网”页。
  2. 在“子网”页中,单击“+子网”打开“添加子网”页。 为新子网命名,并指定地址范围。

    子网设置

  3. 若要保存所做的更改,请单击页面底部的“确定”。

    子网设置

3.创建网关子网

将虚拟网络连接到网关之前,必须先创建要连接的虚拟网络的网关子网。 在可能的情况下,最好是使用 CIDR 块 /28 或 /27 创建网关子网,以便提供足够的 IP 地址,满足将来的其他配置要求。

如果要练习创建此配置,请在创建网关子网时引用这些 示例设置

Important

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

创建网关子网

  1. 门户中,导航到要为其创建虚拟网关的 Resource Manager 虚拟网络。
  2. 在 VNet 页的“设置”部分单击“子网”,展开“子网”页。
  3. 在“子网”页中,单击“+网关子网”打开“添加子网”页。

    添加网关子网

  4. 子网的“名称”自动填充为值“GatewaySubnet”。 Azure 需要此值才能识别作为网关子网的子网。 根据配置要求调整自动填充的“地址范围”值,然后单击页面底部的“确定”以创建该子网。

    添加子网

4.指定 DNS 服务器(可选)

VNet 到 VNet 连接不需要 DNS。 但是,如果希望对部署到虚拟网络的资源进行名称解析,则应指定 DNS 服务器。 可以通过此设置指定 DNS 服务器,以便将其用于此虚拟网络的名称解析。 此设置不创建 DNS 服务器。

  1. 在虚拟网络的“设置”页上,导航到“DNS 服务器”并单击以打开 “DNS 服务器”边栏选项卡。
  2. 在“DNS 服务器”页中的“DNS 服务器”下,选择“自定义”。
  3. 在“添加 DNS 服务器”框中的“DNS 服务器”字段中,输入要用于名称解析的 DNS 服务器的 IP 地址。 完成添加 DNS 服务器后,单击边栏选项卡顶部的“保存”以保存配置。

    自定义 DNS

5.创建虚拟网关

在此步骤中为 VNet 创建虚拟网络网关。 创建网关通常需要 45 分钟或更长的时间,具体取决于所选网关 SKU。 如果要练习创建此配置,可以引用 示例设置

创建虚拟网络网关

  1. 在门户左侧单击 +,并在搜索框中键入“虚拟网关”。 在搜索返回结果中找到“虚拟网络网关”,并单击该条目。 在“虚拟网关”页上,单击底部的“创建”打开“创建虚拟网关”页。
  2. 在“创建虚拟网关”页中,填写虚拟网关的值。

    创建虚拟网关页字段

  3. 在“创建虚拟网关”页中,指定虚拟网关的值。

    • 名称:为网关命名。 这与为网关子网命名不同。 它是要创建的网关对象的名称。
    • 网关类型:选择“VPN”。 VPN 网关使用虚拟网络网关类型“VPN”。
    • VPN 类型:选择为配置指定的 VPN 类型。 大多数配置要求基于路由的 VPN 类型。
    • SKU:从下拉列表中选择网关 SKU。 下拉列表中列出的 SKU 取决于选择的 VPN 类型。 有关网关 SKU 的详细信息,请参阅网关 SKU
    • 位置:可能需要滚动才能看到“位置”。 调整“位置” 字段,使其指向虚拟网络所在的位置。 如果该位置未指向虚拟网络所在的区域,则在下一步中选择虚拟网络时,该位置将不会显示在下拉列表中。
    • 虚拟网络:选择要将此网关添加到其中的虚拟网络。 单击“虚拟网络”打开“选择虚拟网络”页。 选择 VNet。 如果看不到 VNet,请确保“位置”字段指向虚拟网络所在的区域。
    • 网关子网地址范围:仅当以前未为虚拟网络创建网关子网时,才会看到此设置。 如果之前创建了有效的网关子网,则不会显示此设置。
    • 第一个 IP 配置:“选择公共 IP 地址”页创建可关联到 VPN 网关的公共 IP 地址对象。 创建 VPN 网关后,会将公共 IP 地址动态分配给此对象。 VPN 网关当前仅支持动态公共 IP 地址分配。 但这并不意味着 IP 地址在分配到 VPN 网关后会更改。 公共 IP 地址只在删除或重新创建网关时更改。 该地址不会因为 VPN 网关大小调整、重置或其他内部维护/升级而更改。

      • 首先,请单击“创建网关 IP 配置”打开“选择公共 IP 地址”页,然后单击“+新建”打开“创建公共 IP 地址”页。
      • 接下来,输入公共 IP 地址的名称。 将 SKU 保留为“基本”(除非有特殊原因要将其更改为其他内容),然后在此页底部单击“确定”以保存所做的更改。

        创建公共 IP

  4. 验证设置。 如果希望网关显示在仪表板上,可以在页底部选择“固定到仪表板”。

  5. 单击“创建”开始创建 VPN 网关。 将会验证这些设置,并会在仪表板上看到“正在部署虚拟网络网关”磁贴。 创建网关最多可能需要 45 分钟。 可能需要刷新门户页才能看到完成状态。

创建网关后,即可在门户中查看虚拟网络,从而查看分配给网关的 IP 地址。 网关显示为连接的设备。 可以单击连接的设备(虚拟网络网关),查看详细信息。

6.创建并配置 TestVNet4

配置 TestVNet1 后,请通过重复上述步骤,并将值替换为 TestVNet4 的这些值来创建 TestVNet4。 无需等待 TestVNet1 的虚拟网络网关完成创建即可配置 TestVNet4。 如果要使用自己的值,请确保地址空间未与要连接到的任何 VNet 重叠。

7.配置 TestVNet1 网关连接

TestVNet1 和 TestVNet4 的虚拟网络网关都已完成后,便可以创建虚拟网络网关连接。 在本部分,请创建从 VNet1 到 VNet4 的连接。 这些步骤仅适用于同一订阅中的 VNet。 如果 VNet 属于不同的订阅,则必须使用 PowerShell 进行连接。 请参阅 PowerShell 一文。 不过,如果 VNet 位于同一订阅的不同资源组中,则可使用门户来连接它们。

  1. 在“所有资源” 中,导航到 VNet 的虚拟网络网关。 例如,“TestVNet1GW” 。 单击“TestVNet1GW”打开虚拟网关页。

    “连接”页

  2. 单击“+添加”打开“添加连接”页。

  3. 在“添加连接”页的“名称”字段中,键入连接名称。 例如,TestVNet1toTestVNet4

  4. 对于“连接类型”,请从下拉列表中选择“VNet 到 VNet”。
  5. 自动填充“第一个虚拟网络网关” 字段值,因为正在从指定的虚拟网络网关创建此连接。
  6. “第二个虚拟网络网关” 字段是要创建与其的连接的 VNet 的虚拟网络网关。 单击“选择另一个虚拟网关”打开“选择虚拟网关”页。
  7. 查看此页上列出的虚拟网关。 请注意,只会列出订阅中的虚拟网络网关。 如果想要连接到订阅外的虚拟网关,请参阅 PowerShell 文章
  8. 单击要连接到的虚拟网络网关。
  9. 在“共享密钥” 字段中,键入连接的共享密钥。 可以自己生成或创建此密钥。 在站点到站点连接中,使用的密钥应与本地设备和虚拟网络网关连接的密钥完全相同。 此处的概念类似,不同的是不是连接到 VPN 设备,而是要连接到另一个虚拟网络网关。
  10. 单击页面底部的“确定”,保存所做的更改。

8.配置 TestVNet4 网关连接

接下来,从 TestVNet4 到 TestVNet1 创建一个连接。 在门户中找到与 TestVNet4 关联的虚拟网关。 按上一部分的步骤替换相关值,创建从 TestVNet4 到 TestVNet1 的连接。 请确保使用相同的共享密钥。

9.验证连接

在门户中找到虚拟网关。 在虚拟网关页上单击“连接”,查看虚拟网关的连接页。 建立连接后,会看到“状态”值更改为“成功”和“已连接”。 双击某个连接即可打开“概要”页并查看更多信息。

已成功

数据开始流动后,可看到“输入数据量”和“输出数据量”的值。

概要

添加其他连接

若要添加其他连接,请导航到要从其创建连接的虚拟网关,然后单击“连接”。 可以创建另一个 VNet 到 VNet 连接,也可以创建一个 IPsec 站点到站点连接,以便连接到本地位置。 请务必调节“连接类型”,使之与要创建的连接类型匹配。 在创建其他连接之前,请验证虚拟网络的地址空间是否不与要连接到的地址空间重叠。 如需创建站点到站点连接的步骤,请参阅创建站点到站点连接

VNet 到 VNet 常见问题解答

查看常见问题解答详细信息以获取有关 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 租户相关联?

不可以。

能否在单独的 Azure 实例中使用 VNet 到 VNet 通信来连接虚拟网络?

不可以。 VNet 到 VNet 通信支持在同一 Azure 实例中连接虚拟网络。 例如,不能在公共 Azure 和中国/德国/美国政府 Azure 实例之间创建连接。 对于上述情形,可考虑使用站点到站点 VPN 连接。

能否将 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 地址范围。

后续步骤

请参阅网络安全,了解如何限制发往虚拟网络中资源的网络流量。

请参阅虚拟网络流量路由,了解 Azure 如何在 Azure 资源、本地资源和 Internet 资源之间路由流量。