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

教程:在 Azure 门户中创建站点到站点 VPN 连接

本教程介绍如何使用 Azure 门户在本地网络与虚拟网络之间创建站点到站点 (S2S) VPN 网关连接。 还可使用 Azure PowerShellAzure CLI 来创建此配置。

显示站点到站点 VPN 网关跨界连接的示意图。

本教程介绍如何执行下列操作:

  • 创建虚拟网络。
  • 创建 VPN 网关。
  • 创建本地网络网关。
  • 创建 VPN 连接。
  • 验证连接。
  • 连接到虚拟机。

先决条件

  • 需要一个具有活动订阅的 Azure 帐户。 如果没有帐户,可以免费创建一个
  • 确保有一台兼容的 VPN 设备,并且可对其进行配置。 有关兼容的 VPN 设备和设备配置的详细信息,请参阅关于 VPN 设备
  • 确认 VPN 设备有一个面向外部的公共 IPv4 地址。
  • 如果不熟悉本地网络配置中的 IP 地址范围,则需咨询能够提供此类详细信息的人员。 创建此配置时,必须指定 IP 地址范围前缀,Azure 会将该前缀路由到本地位置。 本地网络的任何子网都不得与要连接到的虚拟网络子网重叠。

创建虚拟网络

在此部分,你将使用以下值创建虚拟网络:

  • 资源组:TestRG1
  • 名称: VNet1
  • 区域: (美国)美国东部
  • IPv4 地址空间: 10.1.0.0/16
  • 子网名称: FrontEnd
  • 子网地址空间: 10.1.0.0/24

注意

使用虚拟网络作为跨界体系结构的一部分时,请务必与本地网络管理员进行协调,以划分一个 IP 地址范围专供此虚拟网络使用。 如果 VPN 连接的两端存在重复的地址范围,则会以意外方式路由流量。 此外,若要将此虚拟网络连接到另一个虚拟网络,地址空间不能与另一虚拟网络重叠。 相应地规划网络配置。

  1. 登录 Azure 门户

  2. 在门户页顶部的“搜索资源、服务和文档(G+/)”中,输入“虚拟网络”。 从“市场”搜索结果中选择“虚拟网络”以打开“虚拟网络”页面

  3. 在“虚拟网络”页面上,选择“创建”以打开“创建虚拟网络”页面

  4. 在“基本信息”选项卡上的“项目详细信息”和“实例详细信息”中配置虚拟网络设置。 验证输入的值时,将看到一个绿色对勾。 你可以根据自己需要的设置调整示例中显示的值。

    该屏幕截图显示了“基本信息”选项卡。

    • 订阅:确认列出的订阅是正确的。 你可以使用下拉框来更改订阅。
    • 资源组:选择一个现有资源组,或选择“新建”以创建一个新资源组。 有关资源组的详细信息,请参阅 Azure 资源管理器概述
    • 名称:输入虚拟网络的名称。
    • 区域:选择你的虚拟网络的位置。 该位置决定了部署到此虚拟网络的资源将位于哪里。
  5. 选择“下一步”或“安全性”,转到“安全性”选项卡。对于此练习,请保留此页上所有服务的默认值。

  6. 选择“IP 地址”以转到“IP 地址”选项卡。在“IP 地址”选项卡上配置设置

    • IPv4 地址空间:默认情况下,系统会自动创建一个地址空间。 可以选择该地址空间,将其调整为反映你自己的值。 还可以添加其他地址空间并移除自动创建的默认值。 例如,可以将起始地址指定为“10.1.0.0”,将地址空间大小指定为“/16”。 然后选择“添加”以添加该地址空间

    • + 添加子网:如果你使用默认地址空间,则系统会自动创建一个默认子网。 如果更改地址空间,请在该地址空间中添加一个新子网。 选择“+添加子网”,打开“添加子网”窗口 。 配置以下设置,然后选择页面底部的“添加”以添加这些值

      • 子网名称:例如“FrontEnd”
      • 子网地址范围:此子网的地址范围。 示例为“10.1.0.0”和“/24”
  7. 查看“IP 地址”页并移除不需要的任何地址空间或子网。

  8. 选择“审阅 + 创建”,验证虚拟网络设置。

  9. 验证设置后,选择“创建”以创建虚拟网络

创建虚拟网络后,可以选择配置 Azure DDoS 防护。 在任何新的或现有的虚拟网络上可以轻松启用 Azure DDoS 防护,且无需对应用程序或资源做出任何更改。 有关 Azure DDoS 防护的详细信息,请参阅什么是 Azure DDoS 防护?

创建网关子网

虚拟网络网关需要一个名为“GatewaySubnet”的特定子网。 网关子网是虚拟网络的 IP 地址范围的一部分,包含虚拟网络网关资源和服务使用的 IP 地址。

创建网关子网时,需指定子网包含的 IP 地址数。 所需的 IP 地址数目取决于要创建的 VPN 网关配置。 有些配置需要具有比其他配置更多的 IP 地址。 最好为网关子网指定 /27 或更大的值(/26、/25 等)。

如果出现错误,指出地址空间与子网重叠,或者子网不包含在虚拟网络的地址空间中,请检查虚拟网络地址范围。 出错的原因可能是为虚拟网络创建的地址范围中没有足够的可用 IP 地址。 例如,如果默认子网包含整个地址范围,则不会有剩余的 IP 地址用于创建更多子网。 可以调整现有地址空间中的子网以释放 IP 地址,或指定另一个地址范围并在其中创建网关子网。

  1. 在虚拟网络页面的左侧窗格中,选择“子网”以打开“子网”页
  2. 在页面顶部,选择“+ 网关子网”以打开“添加子网”窗格
  3. 名称将自动输入为“GatewaySubnet”。 根据需要调整 IP 地址范围值。 例如“10.1.255.0/27”
  4. 不要调整该页面上的其他值。 选择页面底部的“保存”以保存子网

创建 VPN 网关

在此步骤中,你将为虚拟网络创建虚拟网络网关。 创建网关通常需要 45 分钟或更长的时间,具体取决于所选的网关 SKU。

创建网关

使用以下值创建虚拟网络网关(VPN 网关):

  • 名称:VNet1GW
  • 区域:美国东部
  • 网关类型:VPN
  • SKU:VpnGw2
  • 代系:第 2 代
  • 虚拟网络: VNet1
  • 网关子网地址范围:10.1.255.0/27
  • 公共 IP 地址:新建
  • 公共 IP 地址名称:VNet1GWpip
  • 启用主动-主动模式:已禁用
  • 配置 BGP:已禁用
  1. 在“搜索资源、服务和文档(G+/)”中,输入“virtual network gateway”。 在市场搜索结果中找到“虚拟网络网关”,选择它以打开“创建虚拟网络网关”页面

    显示“搜索”字段的屏幕截图。

  2. 在“基本信息”选项卡上,填写“项目详细信息”和“实例详细信息”的值 。

    显示“实例”字段的屏幕截图。

    • 订阅:从下拉列表中选择要使用的订阅

    • 资源组:在此页上选择虚拟网络时,会自动填充此设置

    • 名称:为网关命名。 为网关命名与为网关子网命名不同。 它是要创建的网关对象的名称。

    • 区域:选择要在其中创建此资源的区域。 网关的区域必须与虚拟网络相同。

    • 网关类型:选择“VPN”。 VPN 网关使用虚拟网络网关类型“VPN” 。

    • SKU:从下拉列表中选择支持你想要使用的功能的网关 SKU。 请参阅网关 SKU。 在门户中,下拉列表中提供的 SKU 取决于你选择的 VPN type。 基本 SKU 只能使用 Azure CLI 或 PowerShell 进行配置。 无法在 Azure 门户中配置基本 SKU。

    • 代系:选择想要使用的代系。 建议使用第 2 代 SKU。 有关详细信息,请参阅网关 SKU

    • 虚拟网络:从下拉列表中选择要将此网关添加到的虚拟网络。 如果看不到要为其创建网关的虚拟网络,请确保在以前的设置中选择了正确的订阅和区域。

    • “网关子网地址范围”或“子网”:创建 VPN 网关时需要网关子网

      此时,此字段具有几种不同的行为,具体取决于虚拟网络地址空间,以及是否已为虚拟网络创建名为 GatewaySubnet 的子网

      如果你没有网关子网,并且此页面上也未显示用于创建网关子网的选项,请返回到你的虚拟网络并创建网关子网。 然后,返回到此页面并配置 VPN 网关。

  1. 指定“公共 IP 地址”的值。 这些设置指定与 VPN 网关关联的公共 IP 地址对象。 创建 VPN 网关后,会将公共 IP 地址分配给此对象。 仅当删除并重新创建网关时,主公共 IP 地址才会发生更改。 该地址不会因为 VPN 网关大小调整、重置或其他内部维护/升级而更改。

    显示“公共 IP 地址”字段的屏幕截图。

    • 公共 IP 地址类型:对于本练习,如果可以选择地址类型,请选择“标准”。
    • 公共 IP 地址:让“新建” 保持选中状态。
    • 公共 IP 地址名称:在文本框中,输入公共 IP 地址实例的名称
    • 公共 IP 地址 SKU:将自动选择设置。
    • 分配:分配方式通常是自动选择的,可以是“动态”,也可以是“静态”
    • 启用主动-主动模式:选择“已禁用”。 仅当创建主动-主动网关配置时,才启用此设置。
    • 配置 BGP:除非你的配置特别需要此设置,否则请选择“已禁用”。 如果确实需要此设置,则默认 ASN 为 65515,但可以更改此值。
  2. 选择“查看 + 创建” ,运行验证。

  3. 验证通过后,选择“创建”以部署 VPN 网关

可以在网关的“概述”页上查看部署状态。 网关可能需要长达 45 分钟才能完全创建和部署。 创建网关后,可以通过在门户中查看虚拟网络,来查看已分配给该网关的 IP 地址。 网关显示为连接的设备。

重要

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

查看公共 IP 地址

可以在网关的“概述”页面查看网关的公共 IP 地址。

显示公共 IP 地址的屏幕截图。

若要查看有关公共 IP 地址对象的更多信息,请选择“公共 IP 地址”旁边的名称/IP 地址链接

创建本地网络网关

本地网络网关是代表用于路由的本地位置(站点)的特定对象。 可以为站点提供一个名称供 Azure 引用,然后指定本地 VPN 设备的 IP 地址,以便创建一个连接来连接到该设备。 此外还可指定 IP 地址前缀,以便通过 VPN 网关将其路由到 VPN 设备。 指定的地址前缀是位于本地网络的前缀。 如果之后本地网络发生了更改,或需要更改 VPN 设备的公共 IP 地址,可轻松更新这些值。

使用以下值创建本地网络网关:

  • 名称: Site1
  • 资源组: TestRG1
  • 位置:美国东部
  1. Azure 门户的“搜索资源、服务和文档(G+/)”中,输入“本地网关”。 在“市场”下的搜索结果中找到“本地网络网关”,选择它以打开“创建本地网络网关”页

  2. 在“创建本地网络网关”页的“基本信息”选项卡上,指定本地网络网关的值

    显示创建一个具有 IP 地址的本地网关的屏幕截图。

    • 订阅:确保显示正确的订阅。
    • 资源组:选择要使用的资源组。 可以创建新的资源组或选择已创建的资源组。
    • 区域:选择将在其中创建此对象的区域。 可选择虚拟网络所在的位置,但这不是必须的。
    • 名称: 指定本地网络网关对象的名称。
    • 终结点:为本地 VPN 设备选择“IP 地址”或“FQDN (完全限定的域名)”作为终结点类型
      • IP 地址:如果你的 Internet 服务提供商 (ISP) 向你分配了可用于 VPN 设备的静态公共 IP 地址,那么请选择“IP 地址”选项。 填写示例所示的 IP 地址。 此地址是 Azure VPN 网关要连接的 VPN 设备的公共 IP 地址。 如果目前没有 IP 地址,可以使用示例中显示的值。 稍后必须返回来,将占位符 IP 地址替换为 VPN 设备的公共 IP 地址。 否则,Azure 无法进行连接。
      • FQDN:如果你有动态公共 IP 地址,且该地址可能会在某段时间(通常由你的 ISP 决定)后发生变化,那么你可对动态 DNS 服务使用常量 DNS 名称来指向你的 VPN 设备的当前公共 IP 地址。 你的 Azure VPN 网关会解析 FQDN 来确定要连接到的公共 IP 地址。
    • 地址空间:地址空间指的是此本地网络所代表的网络的地址范围。 可以添加多个地址空间范围。 请确保此处所指定的范围没有与要连接到的其他网络的范围相重叠。 Azure 会将你指定的地址范围路由到本地 VPN 设备 IP 地址。 如果需要连接到本地站点,请在此处使用自己的值,而不是示例中显示的值。

    注意

    • Azure VPN 网关支持一个 FQDN 只使用一个 IPv4 地址。 如果域名解析为多个 IP 地址,VPN 网关会使用 DNS 服务器返回的第一个 IP 地址。 为了消除这种不确定性,建议你的 FQDN 始终解析为一个 IPv4 地址。 不支持 IPv6。
    • VPN 网关维护一个 DNS 缓存,该缓存每 5 分钟刷新一次。 此网关仅尝试解析已断开连接的隧道的 FQDN。 重置网关也触发 FQDN 解析。
    • 尽管 Azure VPN 网关支持使用不同的 FQDN 多次连接到不同的本地网关,但所有 FQDN 都必须解析为不同的 IP 地址。
  3. 在“高级”选项卡上,可以根据需要配置 BGP 设置

  4. 指定值后,选择页面底部的“查看 + 创建”以验证页面

  5. 选择“创建”以创建本地网络网关对象。

配置 VPN 设备

通过站点到站点连接连接到本地网络需要 VPN 设备。 在此步骤中,请配置 VPN 设备。 配置 VPN 设备时,需要以下值:

  • 共享密钥:此共享密钥与创建站点到站点 VPN 连接时指定的密钥相同。 在示例中,我们使用基本的共享密钥。 建议生成更复杂的可用密钥。
  • 虚拟网络网关的公共 IP 地址:可以使用 Azure 门户、PowerShell 或 Azure CLI 查看公共 IP 地址。 要使用 Azure 门户查找你的 VPN 网关的公共 IP 地址,请转到“虚拟网络网关”,然后选择你的网关的名称

根据所用的 VPN 设备,有时可以下载 VPN 设备配置脚本。 有关详细信息,请参阅下载 VPN 设备配置脚本

有关更多配置信息,请参阅以下链接:

创建 VPN 连接

在虚拟网关和本地 VPN 设备之间创建站点到站点 VPN 连接。

使用以下值创建连接:

  • 本地网络网关名称: Site1
  • 连接名称: VNet1toSite1
  • 共享密钥:在此示例中使用“abc123”。 但是,你可以使用与 VPN 硬件兼容的任何密钥。 重要的是连接两端的值要匹配。
  1. 转到虚拟网络。 在虚拟网络页面的左侧选择“连接的设备”。 找到 VPN 网关,然后选中它以将它打开。

  2. 在网关的页面上,选择“连接”。

  3. 在“连接”页的顶部,选择“+添加”打开“创建连接”页。

    显示“基本”页面的屏幕截图。

  4. 在“创建连接”页的“基本信息”选项卡上,配置连接的各个值

    • 在“项目详细信息”下,选择订阅和资源所在的资源组

    • 在“实例详细信息”下,配置以下设置

      • 连接类型: 选择“站点到站点(IPsec)”。
      • 名称: 命名连接。
      • 区域:选择此连接所在的区域。
  5. 选择“设置”选项卡,配置以下值

    显示“设置”页的屏幕截图。

    • 虚拟网络网关:从下拉列表中选择虚拟网络网关
    • 本地网络网关:从下拉列表中选择本地网络网关
    • 共享密钥:此处的值必须与用于本地 VPN 设备的值匹配
    • IKE 协议:选择“IKEv2”
    • 使用 Azure 专用 IP 地址:不选
    • 启用 BGP:不选
    • FastPath:不选
    • IPsec/IKE 策略:选择“默认”
    • 使用基于策略的流量选择器:选择“禁用”
    • DPD 超时(秒):选择“45”
    • 连接模式:选择“默认”。 此设置用于指定哪个网关可以启动连接。 有关详细信息,请参阅 VPN 网关设置 - 连接模式
  6. 对于“NAT 规则关联”,请将“流入量”和“流出量”保留为“已选 0”

  7. 选择“查看 + 创建”,确认连接设置。

  8. 选择“创建”以创建连接。

  9. 部署完成后,可在虚拟网络网关的“连接”页上查看连接。 “状态”会从“未知”更改为“正在连接”,再更改为“成功”

配置更多连接设置(可选)

如有必要,可以为连接配置其他设置。 否则,请跳过此部分并保留默认值。 有关详细信息,请参阅配置自定义 IPsec/IKE 连接策略

  1. 转到你的虚拟网络网关,然后选择“连接”以打开“连接”页

  2. 选择你要配置的连接的名称以打开“连接”页。

  3. 在“连接”页左侧,选择“配置”以打开“配置”页。 进行任何必要的更改,然后选择“保存”

    在以下屏幕截图中,这些设置已启用,以便可以看到门户中可用的配置设置。 选择屏幕截图可查看展开的视图。 配置连接时,请仅配置你需要的设置。 对于不需要的设置,请保留默认设置。

    显示“连接”页面连接设置的屏幕截图。

    显示具有更多连接设置的“连接”页面的屏幕截图。

验证 VPN 连接

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

  1. Azure 门户菜单上选择“所有资源”,或从任何页面搜索并选择“所有资源”
  2. 选择虚拟网络网关。
  3. 在虚拟网络网关的窗格上,选择“连接”。 可查看每个连接的状态。
  4. 选择想要验证的连接的名称,打开“概要”。 在“概要”窗格上,可以查看有关连接的详细信息。 成功连接后,状态将为“成功”和“已连接”

连接到虚拟机

你可以与 VM 建立远程桌面连接,从而连接到已部署到虚拟网络的 VM。 若要通过初始验证来确认能否连接到 VM,最好的方式是使用其专用 IP 地址而不是计算机名称进行连接。 这种方式测试的是能否进行连接,而不是测试名称解析是否已正确配置。

  1. 定位专用 IP 地址。 如需查找 VM 的专用 IP 地址,可以通过在 Azure 门户中查看 VM 的属性或通过使用 PowerShell 实现。

    • Azure 门户:在 Azure 门户中找到你的 VM。 查看 VM 的属性。 专用 IP 地址已列出。

    • PowerShell:通过此示例查看资源组中 VM 的列表及其专用 IP 地址。 在使用此示例之前不需对其进行修改。

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where-Object VirtualMachine -ne $null
      
      foreach ($Nic in $Nics) {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. 验证是否已连接到虚拟网络。

  3. 通过在任务栏上的搜索框中输入“RDP”或“远程桌面连接”,打开远程桌面连接。 然后选择“远程桌面连接”。 也可在 PowerShell 中使用 mstsc 命令来打开远程桌面连接

  4. 在“远程桌面连接”中,输入 VM 的专用 IP 地址。 你可以选择“显示选项”来调整其他设置,然后进行连接

如果无法通过 VPN 连接连接到 VM,请检查以下各项:

  • 验证 VPN 连接是否成功。
  • 验证是否已连接到 VM 的专用 IP 地址。
  • 如果可以使用专用 IP 地址连接到 VM,但不能使用计算机名称进行连接,则请验证是否已正确配置 DNS。 若要详细了解如何对 VM 进行名称解析,请参阅针对 VM 的名称解析

若要详细了解 RDP 连接,请参阅排查远程桌面连接到 VM 的问题

可选步骤

本部分介绍可供使用的选项。

重设网关 SKU 大小

下面是关于调整网关 SKU 大小并对其进行更改的特定规则。 在本部分中,你将调整 SKU 的大小。 有关详细信息,请参阅 重设大小或更改网关 SKU

  1. 请转到“配置”页面,查看虚拟网络网关。

  2. 在页面右侧,选择下拉箭头以显示可用的 SKU 列表。

    请注意,该列表只会填充你能够用于调整当前 SKU 大小的 SKU。 如果未看到要使用的 SKU,则必须更改为新的 SKU,而不是调整大小。

    显示如何重设网关大小的屏幕截图。

  3. 请从下拉列表中选择 SKU。

重置网关

如果丢失一个或多个站点到站点隧道上的跨界 VPN 连接,重置 VPN 网关可有效解决该情况。 在此情况下,本地 VPN 设备都在正常工作,但却无法与 Azure VPN 网关建立 IPsec 隧道。

  1. 在门户中,转到想要重置的虚拟网络网关。
  2. 在“虚拟网络网关”页面的左窗格中,向下滚动到“重置”。
  3. 在“重置”页面上,选择“重置”。 发出命令后,将立即重新启动 Azure VPN 网关的当前活动实例。 重置网关会导致 VPN 连接中断,还可能会限制未来的问题根本原因分析。

添加另一个连接

可以通过同一个 VPN 网关创建到多个本地站点的连接。 如果要配置多个连接,则地址空间不能在任何连接之间重叠。

  1. 若要添加其他连接,请转到 VPN 网关,然后选择“连接”以打开“连接”页
  2. 选择“+添加”以添加连接。 调整连接类型以反映是网络到网络(如果连接到其他虚拟网络网关)还是站点到站点。
  3. 如果要使用“站点到站点”连接进行连接,并且尚未为要连接到的站点创建本地网络网关,则可以创建一个新的本地网络网关。
  4. 指定要使用的共享密钥,然后选择“确定”以创建连接

更多配置注意事项

可以通过多种方式自定义站点到站点配置。 有关详细信息,请参阅以下文章:

清理资源

如果不打算继续使用此应用程序或转到下一个教程,请删除这些资源。

  1. 在门户顶部的“搜索”框中输入资源组的名称,并从搜索结果中选择资源组。
  2. 选择“删除资源组” 。
  3. 在“键入资源组名称”中输入资源组名称,然后选择“删除” 。

后续步骤

配置站点到站点连接后,可以向同一网关添加点到站点连接。