故障排除:Azure 点到站点连接问题

本文列举了可能会出现的常见点到站点连接问题。 此外,还介绍了这些问题的可能原因和解决方案。

VPN 客户端错误:找不到证书

症状

尝试使用 VPN 客户端连接到 Azure 虚拟网络时,看到以下错误消息:

找不到可用于此可扩展身份验证协议的证书。 (错误 798)

原因

如果 Certificates - Current User\Personal\Certificates 中缺少客户端证书,便会发生此问题。

解决方案

若要解决该问题,请执行以下步骤:

  1. 打开证书管理器:单击“开始”,键入“管理计算机证书”,然后单击搜索结果中的“管理计算机证书”。

  2. 请确保已正确的位置安装下列证书:

    证书 位置
    AzureClient.pfx 当前用户\个人\证书
    AzureRoot.cer 本地计算机\受信任的根证书颁发机构
  3. 转到 C:\Users<UserName>\AppData\Roaming\Microsoft\Network\Connections\Cm<GUID>,在用户和计算机的存储上手动安装证书(*.cer 文件)。

若要详细了解如何安装客户端证书,请参阅为点到站点连接生成并导出证书

注意

导入客户端证书时,请勿选择“启用强私钥保护”选项。

无法在计算机与 VPN 服务器之间建立网络连接,因为远程服务器不响应

症状

尝试在 Windows 上使用 IKEv2 连接到 Azure 虚拟网关时,出现以下错误消息:

无法在计算机与 VPN 服务器之间建立网络连接,因为远程服务器不响应

原因

如果 Windows 版本不支持 IKE 碎片,则会出现此问题。

解决方案

在 Windows 10 和 Server 2016 上支持 IKEv2。 但是,若要使用 IKEv2,必须在本地安装更新并设置注册表项值。 Windows 10 以前的 OS 版本不受支持,只能使用 SSTP。

为运行 IKEv2 准备 Windows 10 或 Server 2016:

  1. 安装更新。

    OS 版本 Date 编号/链接
    Windows Server 2016
    Windows 10 版本 1607
    2018 年 1 月 17 日 KB4057142
    Windows 10 版本 1703 2018 年 1 月 17 日 KB4057144
    Windows 10 版本 1709 2018 年 3 月 22 日 KB4089848
  2. 设置注册表项值。 在注册表中创建 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\ IKEv2\DisableCertReqPayload REG_DWORD 项或将其设置为 1。

VPN 客户端错误:收到意外或格式不当的消息

症状

尝试使用 VPN 客户端连接到 Azure 虚拟网络时,看到以下错误消息:

收到意外或格式不当的消息。 (错误 0x80090326)

原因

如果下列一项条件为 true,则会发生此问题:

  • 网关子网上使用默认路由的用户定义路由 (UDR) 设置不正确。
  • 根证书公钥未上传到 Azure VPN 网关。
  • 密钥已损坏或过期。

解决方案

若要解决该问题,请执行以下步骤:

  1. 删除网关子网上的 UDR。 请确保 UDR 正确地转发所有流量。
  2. 请在 Azure 门户中检查根证书的状态,确定它是否已吊销。 如果未吊销,请尝试删除并重新上传根证书。 有关详细信息,请参阅创建证书

VPN 客户端错误:证书链已处理,但被终止

症状

尝试使用 VPN 客户端连接到 Azure 虚拟网络时,看到以下错误消息:

已处理证书链,但是在不受信任提供程序信任的根证书中终止。

解决方案

  1. 请确保已正确的位置安装下列证书:

    证书 位置
    AzureClient.pfx 当前用户\个人\证书
    Azuregateway-GUID.vpn.chinacloudapi.cn 当前用户\受信任的根证书颁发机构
    AzureGateway-GUID.vpn.chinacloudapi.cn,AzureRoot.cer 本地计算机\受信任的根证书颁发机构
  2. 如果相应位置上已有证书,请尝试删除并重新安装证书。 azuregateway-GUID.vpn.chinacloudapi.cn 证书位于从 Azure 门户下载的 VPN 客户端配置包中。 可以使用文件存档程序从配置包中提取文件。

文件下载错误:未指定目标 URI

症状

看到以下错误消息:

文件下载错误。 未指定目标 URI。

原因

导致此问题发生的原因是网关类型不正确。

解决方案

VPN 网关类型必须是 VPN,VPN 类型必须是 RouteBased

VPN 客户端错误:Azure VPN 自定义脚本失败

症状

尝试使用 VPN 客户端连接到 Azure 虚拟网络时,看到以下错误消息:

用于更新路由表的自定义脚本失败。 (错误 8007026f)

原因

如果尝试使用快捷方式启用站点到点 VPN 连接,可能会出现此问题。

解决方案

直接打开 VPN 包,而不是通过快捷方式打开。

在 Windows 11 上重复删除和重新创建 VPN 配置文件

症状

  • VPN 连接在 Intune 同步期间或不久后断开连接。
  • VPN 配置文件似乎被删除并再次配置,即使没有进行任何配置更改。
  • 此行为主要在 Windows 11 设备上观察到。

原因

此问题是由于 Intune 和 Windows 如何处理 VPN 配置文件 XML 的区别导致的:

  • 在 Intune 同步期间,Intune 会将分配给设备的 VPN 配置文件与系统上当前存在的配置文件进行比较。
  • Windows 不会像提供给 Intune 一样存储原始 VPN 配置文件 XML。 查询时,Windows 将重新生成配置文件的 XML 表示形式。
  • 重新生成的 XML 的格式、排序或规范化可能与上传到 Intune 的原始 XML 不同。
  • 尽管有效的 VPN 配置相同,但这些格式差异可能会导致 Intune 将配置文件解释为更改。
  • 当 Intune 检测到差异时,它会删除现有的 VPN 配置文件并预配一个新配置文件,这会导致 VPN 连接断开连接。

解决方案

若要防止不必要的删除和重新创建 VPN 配置文件,请确保 Intune 中使用的 XML 配置文件与 Windows 生成的格式匹配。 建议的方法是从已预配 VPN 配置文件并正常运行的设备中提取配置文件 XML。

  1. 通过 Intune 预配包含所有必需设置的 VPN 配置文件。

  2. 在应用正确的配置文件的 Windows 设备上,打开 PowerShell 并检索预配的 VPN 配置文件列表:

    $vpns = Get-CimInstance -Namespace root\cimv2\mdm\dmmap -ClassName MDM_VPNv2_01
    
  3. 通过查看 InstanceID 值确定正确的配置文件:

    $vpns[0].InstanceID
    
  4. 将配置文件的 XML 导出到一个文件:

    [System.IO.File]::WriteAllText("VPN-Corrected.xml", $vpns[0].ProfileXML)
    
  5. 使用导出的 XML 文件作为 Intune 中的 VPN 配置文件定义

使用 Windows 生成的 XML 有助于确保存储在设备上的配置文件与 Intune 评估的配置文件之间的一致性,从而减少同步期间配置文件删除和 VPN 断开连接的可能性。

无法安装 VPN 客户端

原因

必须有其他证书,才能信任虚拟网络的 VPN 网关。 证书包含在通过 Azure 门户生成的 VPN 客户端配置包中。

解决方案

提取 VPN 客户端配置包,并找到 .cer 文件。 若要安装证书,请执行以下步骤:

  1. 打开 mmc.exe。
  2. 添加“证书”管理单元。
  3. 选择本地计算机的“计算机”帐户。
  4. 右键单击“受信任的根证书颁发机构”节点。 单击“所有任务”“导入”,浏览到从 VPN 客户端配置包中提取的 .cer 文件。
  5. 重启计算机。
  6. 尝试安装 VPN 客户端。

Azure 门户错误:无法保存 VPN 网关,数据无效

症状

尝试在 Azure 门户中保存 VPN 网关的更改时,看到以下错误消息:

无法保存虚拟网络网关 <网关名称。 证书 <证书 ID> 的数据无效。

原因

如果上传的根证书公钥包含空格等无效字符,可能会出现此问题。

解决方案

请确保证书中的数据不包含换行符(回车符)等无效字符。 整个值应为一长行。 以下示例显示了证书中需要复制的区域:

证书中数据的屏幕截图。

Azure 门户错误:无法保存 VPN 网关,资源名称无效

症状

尝试在 Azure 门户中保存 VPN 网关的更改时,看到以下错误消息:

无法保存虚拟网络网关 <网关名称。 资源名称 <尝试上传的证书名称> 无效。

原因

导致此问题发生的原因是证书名称包含空格等无效字符。

Azure 门户错误:VPN 包文件下载错误 503

症状

尝试下载 VPN 客户端配置包时,看到以下错误消息:

无法下载文件。 错误详细信息:错误 503。 服务器繁忙。

解决方案

导致此错误发生的原因是临时网络问题。 几分钟后,再次尝试下载 VPN 包。

Azure VPN 网关升级:所有点到站点的客户端都无法连接

原因

如果证书的生存期已过半,证书会进行滚动更新。

解决方案

若要解决此问题,请重新下载并重新部署所有客户端上点到站点的包。

一次性连接的 VPN 客户端过多

已达到允许的最大连接数。 可以在 Azure 门户中查看连接的客户端总数。

VPN 客户端无法访问网络文件共享

症状

VPN 客户端已连接到 Azure 虚拟网络。 不过,客户端无法访问网络共享。

原因

SMB 协议用于文件共享访问。 连接启动时,VPN 客户端添加了会话凭据,并发生失败。 建立连接后,将强制客户端使用缓存凭据进行 Kerberos 身份验证。 此过程会启动查询密钥发行中心(域控制器),以获取令牌。 由于客户端通过 Internet 进行连接,因此可能无法访问域控制器。 所以,客户端无法从 Kerberos 故障转移到 NTLM。

仅当客户端具有已加入的域颁发的有效证书(其中 SAN=UPN),才会提示客户端提供凭据。 客户端还必须以物理方式连接到域网络。 在这种情况下,客户端尝试使用证书并访问域控制器。 然后,密钥分发中心返回“KDC_ERR_C_PRINCIPAL_UNKNOWN”错误。 客户端被强制故障转移到 NTLM。

解决方案

若要解决此问题,请禁止从以下注册表子项缓存域凭据:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\DisableDomainCreds - Set the value to 1

重新安装 VPN 客户端后,在 Windows 中找不到点到站点 VPN 连接

症状

先删除了点到站点 VPN 连接,再重新安装 VPN 客户端。 在这种情况下,VPN 连接未成功配置。 在 Windows 的“网络连接”设置中看不到 VPN 连接。

解决方案

若要解决此问题,请从 C:\Users\UserName\AppData\Roaming\Microsoft\Network\Connections<VirtualNetworkId> 删除旧的 VPN 客户端配置文件,然后重新运行 VPN 客户端安装程序。

点到站点 VPN 客户端无法解析本地域中的资源的 FQDN

症状

当客户端使用点到站点 VPN 连接来连接到 Azure 时,它无法解析本地域中的资源的 FQDN。

原因

点到站点 VPN 客户端通常使用在 Azure 虚拟网络中配置的 Azure DNS 服务器。 在客户端配置的 Azure DNS 服务器优先于本地 DNS 服务器(除非以太网接口的标准较低),因此所有 DNS 查询都被发送到 Azure DNS 服务器。 如果 Azure DNS 服务器中没有本地资源的记录,则查询失败。

解决方案

若要解决此问题,请确保在 Azure 虚拟网络上使用的 Azure DNS 服务器可以解析本地资源的 DNS 记录。 为此,可以使用 DNS 转发器或条件转发器。 有关详细信息,请参阅使用自己的 DNS 服务器进行名称解析

点到站点 VPN 连接已建立,但仍然无法连接到 Azure 资源

原因

如果 VPN 客户端没有从 Azure VPN 网关获得路由,则可能会发生此问题。

解决方案

若要解决此问题,请重置 Azure VPN 网关。 若要确保正在使用新路由,必须在虚拟网络对等互连成功配置之后,再次下载点到站点 VPN 客户端。

错误:“吊销功能无法检查吊销,因为吊销服务器已脱机。 (错误 0x80092013)”

原因

如果客户端无法访问 http://crl3.digicert.com/ssca-sha2-g1.crlhttp://crl4.digicert.com/ssca-sha2-g1.crl,则会发生此错误消息。 进行吊销检查需要访问这两个站点。 此问题通常发生在配置了代理服务器的客户端上。 在某些环境中,如果请求不通过代理服务器,则在边缘防火墙处会被拒绝。

解决方案

请检查代理服务器设置,确保客户端可以访问 http://crl3.digicert.com/ssca-sha2-g1.crlhttp://crl4.digicert.com/ssca-sha2-g1.crl

从 VPN 网关下载根证书时出现“错误 405”

原因

根证书尚未安装。 根证书安装在客户端的可信证书存储中。

VPN 客户端错误:未进行远程连接,因为尝试的 VPN 隧道失败。 (错误 800)

原因

网卡驱动程序已过时。

解决方案

更新网卡驱动程序:

  1. 单击“开始”,键入“设备管理器”,然后从结果列表中选择它 。 如果系统提示需要管理员密码或确认,请键入密码或进行确认。
  2. 在“网络适配器”类别中,找到要更新的 NIC。
  3. 双击设备名称,选择“更新驱动程序”,选择“自动搜索更新的驱动程序软件” 。
  4. 如果 Windows 找不到新的驱动程序,可以尝试在设备制造商的网站上查找,并按照说明执行操作。
  5. 重启计算机并再次尝试连接。

VPN 客户端错误:Microsoft Entra 的身份验证已过期

如果使用 Microsoft Entra ID 身份验证,可能会遇到以下错误之一:

使用 Microsoft Entra 进行用户身份验证已过期。 需要在 Entra 中重新进行身份验证才能获取新令牌。 管理员可以优化身份验证超时。

Microsoft Entra 的身份验证已过期,因此需要重新进行身份验证,以获取新的令牌。 请再次尝试连接。 身份验证策略和超时由管理员在 Entra 租户中配置。

原因

由于当前刷新令牌已过期或无效,点到站点连接已断开。 无法提取用于对用户进行身份验证的新访问令牌。

当 Azure VPN 客户端尝试使用 Microsoft Entra ID 身份验证与 Azure VPN 网关建立连接时,需要提供访问令牌才能对用户进行身份验证。 此令牌大约每小时会更新一次。 仅当用户具有有效的刷新令牌时,才能颁发有效的访问令牌。 如果用户没有有效的刷新令牌,连接将被断开。

由于多种原因,刷新令牌可能显示为已过期/无效。 可以检查用户 Entra 登录日志进行调试。 请参阅 Microsoft Entra 登录日志

  • 刷新令牌已过期

    • 刷新令牌的默认生存期为 90 天。 90 天后,用户需要重新连接以获取新的刷新令牌。
    • Entra 租户管理员可以添加条件访问策略以设置登录频率,每隔“X”小时触发一次定期重新身份验证。 (刷新令牌将在“X”小时后过期)。 通过使用自定义条件访问策略,用户每隔“X”小时就必须使用一次交互式登录。 有关详细信息,请参阅 Microsoft 标识平台中的刷新令牌配置自适应会话生存期策略
  • 刷新令牌无效

    • 该用户已从租户中删除。
    • 用户凭据已更改。
    • Entra 租户管理员已撤销会话。
    • 设备已变得不合规(如果它是受管理设备)。
    • 由 Entra 管理员配置的其他 Entra 策略,这些策略要求用户定期使用交互式登录。

解决方案

在这些情况下,用户需要重新连接。 这会触发 Microsoft Entra 中的交互式登录过程,从而发出新的刷新令牌和访问令牌。

具有 Entra ID 身份验证的 Azure VPN 客户端不会在每次断开连接时提示用户重新进行身份验证

原因

使用点到站点和 Entra ID 身份验证进行连接的 Azure VPN 客户端在断开连接时不需要交互式重新身份验证。

建议的登录频率(SIF)或刷新令牌过期时间,以获得最佳 Azure VPN 客户端体验,应设置为大于 2 小时,具体取决于最适合客户的情况。 这意味着客户将在该持续时间内保持连接状态,而无需以交互方式重新进行身份验证。

不建议将 SIF 设置为“每次”,因为它需要每小时进行交互式重新身份验证,从而导致频繁断开连接。

启用登录缓存(默认值)后,令牌将存储在永久存储中,只要刷新令牌有效,即使断开连接后,也不会进行交互式重新身份验证。 这意味着,重新连接的持续时间在 SIF 或刷新令牌的有效期内。

解决方案

为了确保每次断开连接时都会提示 Azure VPN 客户端重新进行身份验证,客户可以在 Azure VPN 客户端(版本 4.0.0.0.0 及更高版本)中使用“已禁用登录缓存”选项。 客户可以将用户配置文件(XML)设置 cachesigninuser 修改为 false

<azvpnprofile> 
    <clientauth> 
      <aad>  
          <cachesigninuser>false</cachesigninuser> 
      </aad> 
    </clientauth>    
</azvpnprofile> 

禁用登录缓存后,令牌将存储在内存中,仅适用于一次连接(或会话),而与令牌的有效时长(从 30 分钟到 90 天)无关。 连接断开后,内存中的令牌将被丢弃。 一个连接的持续时间取决于刷新令牌到期时间或 SIF。

VPN 客户端错误:正在拨打 VPN 连接 <VPN 连接名称>,状态 = VPN 平台未触发连接

可能还会在 RasClient 的事件查看器中看到以下错误:“用户<用户>拨打了一个名为 <VPN 连接名称>的连接,该连接已失败。 失败时返回的错误代码是 1460。”

原因

Azure VPN Client 没有在适用于 Windows 的应用设置中启用“后台应用”应用权限。

解决方案

  1. 在 Windows 中,转到“设置”->“隐私”->“后台应用”
  2. 将“允许应用在后台运行”切换到“开”

错误:“文件下载错误,未指定目标 URI”

原因

这是因为配置了不正确的网关类型。

解决方案

Azure VPN 网关类型必须是 VPN,VPN 类型必须是 RouteBased。

VPN 包安装程序未完成

原因

此问题可能由以前的 VPN 客户端安装引起。

解决方案

从 C:\Users\UserName\AppData\Roaming\Microsoft\Network\Connections<VirtualNetworkId> 删除旧的 VPN 客户端配置文件,再次运行 VPN 客户端安装程序。

VPN 客户端休眠或睡眠

解决方案

在 VPN 客户端运行的计算机中检查睡眠和休眠设置。

我无法使用专用解析程序从点到站点客户端解析专用 DNS 区域中的记录。

症状

在虚拟网络上使用 Azure 提供的 (168.63.129.16) DNS 服务器时,点到站点客户端将无法解析专用 DNS 区域(包括专用终结点)中存在的记录。

屏幕截图显示了 Azure VPN 客户端、打开的 PowerShell 窗口和 Azure 门户 DNS 服务器页。

原因

Azure DNS 服务器 IP 地址 (168.63.129.16) 只能从 Azure 平台解析。

解决方案

以下步骤可帮助从专用 DNS 区域解析记录:

将专用解析程序的入站 IP 地址配置为虚拟网络上的自定义 DNS 服务器,可帮助解析专用 DNS 区域中的记录(包括从专用终结点创建的记录)。 请注意,专用 DNS 区域必须与具有专用解析程序的虚拟网络相关联。

屏幕截图显示了 Azure VPN 客户端、打开的 PowerShell 窗口和 Azure 门户打开到 DNS 服务器页。

默认情况下,在虚拟网络上配置的 DNS 服务器将推送到通过 VPN 网关连接的点到站点客户端。 因此,将专用解析程序入站 IP 地址配置为虚拟网络上的自定义 DNS 服务器将自动将这些 IP 地址作为 VPN DNS 服务器推送到客户端,并且可以无缝解析来自专用 DNS 区域的记录(包括专用终结点)。