使用 Azure 门户创建站点到站点连接(经典)
本文介绍如何使用 Azure 门户创建站点到站点 VPN 网关连接,以便从本地网络连接到 VNet。 本文中的步骤适用于经典(旧)部署模型,不适用于当前部署模型(资源管理器)。 请改为参阅此文的资源管理器版本。
重要
你无法再为经典部署模型(服务管理)虚拟网络创建新的虚拟网络网关。 只能为资源管理器虚拟网络创建新的虚拟网络网关。
使用站点到站点 VPN 网关连接,通过 IPsec/IKE(IKEv1 或 IKEv2)VPN 隧道将本地网络连接到 Azure 虚拟网络。 此类型的连接要求位于本地的 VPN 设备分配有一个面向外部的公共 IP 地址。 有关 VPN 网关的详细信息,请参阅关于 VPN 网关。
注意
本文为经典(旧的)部署模型而写。 建议你改用最新的 Azure 部署模型。 资源管理器部署模型是最新的部署模型,提供比经典部署模型更多的选项和更强的功能兼容性。 请参阅了解部署模型和资源状态,了解这两种部署模型之间的差异。
如果要使用本文提到的其他版本,请使用左侧窗格中的目录。
开始之前
在开始配置之前,请验证是否符合以下条件:
- 确认要使用经典部署模型。 如果要使用资源管理器部署模型,请参阅创建站点到站点连接(资源管理器)。 我们建议你使用资源管理器部署模型,因为经典模型是旧模型。
- 确保有一台兼容的 VPN 设备和能够对其进行配置的人员。 有关兼容的 VPN 设备和设备配置的详细信息,请参阅关于 VPN 设备。
- 确认 VPN 设备有一个面向外部的公共 IPv4 地址。
- 如果不熟悉本地网络配置中的 IP 地址范围,则需咨询能够提供此类详细信息的人员。 创建此配置时,必须指定 IP 地址范围前缀,Azure 会将该前缀路由到本地位置。 本地网络的任何子网都不得与要连接到的虚拟网络子网重叠。
- 需要使用 PowerShell 来指定共享密钥和创建 VPN 网关连接。 使用经典部署模型时,会无法使用 Azure Cloud Shell。 相反,用户必须在计算机上本地安装最新版本的 Service Management (SM) PowerShell cmdlet。 这些 cmdlet 不同于 AzureRM 或 Az cmdlet。 要安装 SM cmdlet,请参阅“安装服务管理 cmdlet”。 有关一般 Azure PowerShell 的详细信息,请参阅 Azure PowerShell 文档。
此练习的示例配置值
本文中的示例使用以下值。 可使用这些值创建测试环境,或参考这些值以更好地理解本文中的示例。 通常,在使用地址空间的 IP 地址值时,你需要与网络管理员进行协调,以避免地址空间重叠,重叠可能会影响路由。 在这种情况下,若要创建工作连接,请将 IP 地址值替换成自己的值。
- 资源组: TestRG1
- VNet 名称: TestVNet1
- 地址空间: 10.11.0.0/16
- 子网名称: FrontEnd
- 子网地址范围: 10.11.0.0/24
- 网关子网: 10.11.255.0/27
- 区域: (美国)美国东部
- 本地站点名称:Site2
- 客户端地址空间:位于本地站点的地址空间。
创建虚拟网络
创建适用于 S2S 连接的虚拟网络时,需确保指定的地址空间与适用于本地站点(需要连接到这些站点)的任何客户端地址空间不重叠。 如果有重叠子网,连接将无法正常工作。
如果已有一个 VNet,请验证这些设置是否与 VPN 网关设计兼容。 请特别注意任何可能与其他网络重叠的子网。
如果还没有虚拟网络,请创建。 这些屏幕截图仅供参考。 请务必替换成自己的值。
创建虚拟网络
- 从浏览器导航到 Azure 门户,并在必要时用 Azure 帐户登录。
- 选择“+创建资源”。 在“在市场中搜索”字段中,键入“虚拟网络”。 从返回的列表中找到“虚拟网络”,选择它以打开“虚拟网络”页。
- 在“虚拟网络”页的“创建”按钮下,可以看到“使用资源管理器部署(更改为经典)”。 “资源管理器”是创建 VNet 的默认设置。 不需要创建资源管理器 VNet。 选择“(更改为经典)”以创建经典 VNet。 然后,选择“概述”选项卡并选择“创建”。
- 在“创建虚拟网络(经典)”页的“基本信息”选项卡上,使用示例值配置 VNet 设置。
- 选择“查看 + 创建”以验证自己的 VNet。
- 此时验证将运行。 验证 VNet 后,选择“创建”。
在此配置过程中不需进行 DNS 设置,但如果希望在 VM 之间进行名称解析,则 DNS 是必需的。 指定一个值不会创建新的 DNS 服务器。 指定的 DNS 服务器 IP 地址应该是可以解析所连接的资源名称的 DNS 服务器。
创建虚拟网络后,可以添加 DNS 服务器的 IP 地址来处理名称解析。 打开虚拟网络的设置,选择“DNS 服务器”,并添加要用于名称解析的 DNS 服务器的 IP 地址。
- 在门户中找到虚拟网络。
- 在虚拟网络页的“设置”部分,选择“DNS 服务器”。
- 添加 DNS 服务器。
- 若要保存设置,请选择页面顶部的“保存”。
配置站点和网关
配置站点
本地站点通常指本地位置。 它包含 VPN 设备的 IP 地址和地址范围,需要创建到该设备的连接,并且需要通过 VPN 网关将地址范围路由到该设备。
在 VNet 页的“设置”下,选择“站点到站点连接”。
在“站点到站点连接”页上,选择“+ 添加”。
在“配置 VPN 连接和网关”页上,选择“站点到站点”作为“连接类型” 。 在此练习中,你需要结合使用示例值和你自己的值。
VPN 网关 IP 地址:这是本地网络的 VPN 设备的公共 IP 地址。 VPN 设备需要 IPv4 公共 IP 地址。 为要连接到的 VPN 设备指定一个有效的公共 IP 地址。 它必须可由 Azure 访问。 如果不知道 VPN 设备的 IP 地址,则始终可以先添加一个占位符值(只要其格式是有效的公共 IP 地址),等到以后再更改。
客户端地址空间: 列出一个 IP 地址范围,需通过该网关将此范围路由到本地网络。 可以添加多个地址空间范围。 请确保在此处指定的范围与虚拟网络连接到的其他网络的范围不重叠,也与虚拟网络本身的地址范围不重叠。
在页面底部,不要选择“查看 + 创建”, 而应选择“下一步: 网关>”。
配置虚拟网络网关
在“网关”页上,选择以下值:
Size: 这是用于创建虚拟网关的网关 SKU。 经典 VPN 使用老版(旧版)网关 SKU。 有关旧版网关 SKU 的详细信息,请参阅使用虚拟网关 SKU(老版 SKU)。 在此练习中,可以选择“标准”。
网关子网: 指定的网关子网的大小取决于要创建的 VPN 网关配置。 尽管网关子网最小可以创建为 /29,但建议使用 /27 或 /28。 这样可以创建较大的子网,包含的地址更多。 使用更大的网关子网可以有足够的 IP 地址来应对未来可能会有的配置。
选择页面底部的“查看 + 创建”以验证你的设置。 选择“创建”以进行部署。 创建虚拟网关可能需要长达 45 分钟的时间,具体取决于所选网关 SKU。
配置 VPN 设备
通过站点到站点连接连接到本地网络需要 VPN 设备。 在此步骤中,请配置 VPN 设备。 配置 VPN 设备时,需要以下值:
- 共享密钥。 此共享密钥就是在创建站点到站点 VPN 连接时指定的共享密钥。 在示例中,我们使用基本的共享密钥。 建议生成更复杂的可用密钥。
- 虚拟网络网关的“公共 IP 地址”。 可以通过 Azure 门户、PowerShell 或 CLI 查看公共 IP 地址。
根据所用的 VPN 设备,有时可以下载 VPN 设备配置脚本。 有关详细信息,请参阅下载 VPN 设备配置脚本。
以下链接提供了更多配置信息:
有关兼容 VPN 设备的信息,请参阅关于 VPN 设备。
在配置 VPN 设备之前,请检查是否存在任何已知的设备兼容性问题。
有关设备配置设置的链接,请参阅已验证的 VPN 设备。 我们会尽量提供设备配置链接,但你最好是咨询设备制造商以获取最新的配置信息。
该列表显示了我们已测试过的版本。 即使列表中未显示你的 VPN 设备的 OS 版本,该版本也仍然可能是兼容的。 请咨询设备制造商。
有关 VPN 设备配置的基本信息,请参阅合作伙伴 VPN 设备配置概述。
若要了解如何编辑设备配置示例,请参阅编辑示例。
有关加密要求的信息,请参阅关于加密要求和 Azure VPN 网关。
有关完成配置所需的参数的信息,请参阅默认 IPsec/IKE 参数。 这些信息包括 IKE 版本、Diffie-Hellman (DH) 组、身份验证方法、加密和哈希算法、安全关联 (SA) 生存期、完美前向保密 (PFS) 和对等体存活检测 (DPD)。
有关 IPsec/IKE 策略配置步骤,请参阅为 S2S VPN 和 VNet 到 VNet 配置自定义 IPsec/IKE 连接策略。
若要连接多个基于策略的 VPN 设备,请参阅将 VPN 网关连接到多个基于策略的本地 VPN 设备。
检索值
在 Azure 门户中创建经典 VNet 时,看到的名称不是用于 PowerShell 的完整名称。 例如,在门户中命名为 TestVNet1 的 VNet 在网络配置文件中可能具有更长的名称。 对于资源组中的 VNet,“ClassicRG”名称可能如下所示:Group ClassicRG TestVNet1。 在创建连接时,请务必使用在网络配置文件中看到的值。
在下面的步骤中,将连接到 Azure 帐户并下载和查看网络配置文件来获取连接所需的值。
下载和安装最新版本的 Azure 服务管理 (SM) PowerShell cmdlet。 大多数人在本地安装了资源管理器模块,但未安装服务管理模块。 服务管理模块是旧版的,必须单独安装。 有关详细信息,请参阅安装服务管理 cmdlet。
使用提升的权限打开 PowerShell 控制台,并连接到帐户。 使用下面的示例来帮助你连接。 必须使用 PowerShell 服务管理模块在本地运行这些命令。 连接到帐户。 使用下面的示例来帮助连接:
Add-AzureAccount
检查该帐户的订阅。
Get-AzureSubscription
如果有多个订阅,请选择要使用的订阅。
Select-AzureSubscription -SubscriptionId "Replace_with_your_subscription_ID"
在计算机上创建目录。 例如 C:\AzureVNet
将网络配置文件导出到目录。 在此示例中,网络配置文件导出到 C:\AzureNet。
Get-AzureVNetConfig -ExportToFile C:\AzureNet\NetworkConfig.xml
使用文本编辑器打开该文件,并查看 VNet 和站点的名称。 创建连接时会使用这些名称。
VNet 名称以 VirtualNetworkSite name = 形式列出
站点名称以 LocalNetworkSiteRef name = 形式列出
创建连接
注意
对于经典部署模型,此步骤在 Azure 门户中或通过 Azure Cloud Shell 不可用。 必须通过桌面以本地方式使用 Azure PowerShell cmdlet 的服务管理 (SM) 版本。
在此步骤中,请使用前面步骤中的值设置共享密钥并创建连接。 设置的密钥必须是在 VPN 设备配置中使用过的同一密钥。
设置共享密钥并创建连接。
- 更改 -VNetName 值和 -LocalNetworkSiteName 值。 指定包含空格的名称时,请使用单引号将值引起来。
- “-SharedKey”是你生成并指定的值。 在示例中,我们使用了“abc123”,但你可以(也应该)生成更复杂的内容。 重要的是,此处指定的值必须与配置 VPN 设备时指定的值相同。
Set-AzureVNetGatewayKey -VNetName 'Group TestRG1 TestVNet1' ` -LocalNetworkSiteName '6C74F6E6_Site2' -SharedKey abc123
创建连接后,结果为“状态: 成功”。
验证连接
在 Azure 门户中,可通过导航到连接来查看经典 VNet VPN 网关的连接状态。 以下步骤演示导航到连接并进行验证的一种方法。
- 在 Azure 门户中,转到经典虚拟网络 (VNet)。
- 在虚拟网络页上,单击要查看的连接类型。 例如,“站点到站点连接”。
- 在“站点到站点连接”页的“名称”下,选择要查看的站点连接。
- 在“属性”页上,查看有关连接的信息。
如果无法进行连接,请参阅左窗格目录的“故障排除”部分。
如何重置 VPN 网关
如果丢失一个或多个站点到站点隧道上的跨界 VPN 连接,重置 VPN 网关可有效解决该情况。 在此情况下,本地 VPN 设备都在正常工作,但却无法与 Azure VPN 网关建立 IPsec 隧道。
用于重置经典网关的 cmdlet 是 Reset-AzureVNetGateway。 用于服务管理的 Azure PowerShell cmdlet 必须安装在本地桌面上。 不能使用 Azure Cloud Shell。 进行重置前,请确保拥有最新版本的 Service Management (SM) PowerShell cmdlet。
使用此命令时,请确保使用的是虚拟网络的全名。 使用门户创建的经典 VNet 具有 PowerShell 所需的长名称。 可以使用 Get-AzureVNetConfig -ExportToFile C:\Myfoldername\NetworkConfig.xml
查看长名称。
以下示例重置名为“Group TestRG1 TestVNet1”的虚拟网络的网关(在门户中简单地显示为“TestVNet1”):
Reset-AzureVNetGateway –VnetName 'Group TestRG1 TestVNet1'
结果:
Error :
HttpStatusCode : OK
Id : f1600632-c819-4b2f-ac0e-f4126bec1ff8
Status : Successful
RequestId : 9ca273de2c4d01e986480ce1ffa4d6d9
StatusCode : OK
如何调整网关 SKU 的大小
若要重设经典部署模型的网关大小,必须使用服务管理 PowerShell cmdlet。 请使用以下命令:
Resize-AzureVirtualNetworkGateway -GatewayId <Gateway ID> -GatewaySKU HighPerformance