Windows 故障排查 - AWS 客户端 VPN

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Windows 故障排查

以下部分包含您在使用基于 Windows 的客户端连接到客户端 VPN 终端节点时可能遇到的问题相关信息。

AWS 提供的客户端

AWS 提供的客户端

AWS 提供的客户端创建事件日志并将其存储在计算机的以下位置。

C:\Users\User\AppData\Roaming\AWSVPNClient\logs

提供以下日志类型:

  • 应用程序日志:包含有关应用程序的信息。这些日志的前缀为“aws_vpn_client_”。

  • OpenVPN 日志:包含有关 OpenVPN 进程的信息。这些日志的前缀是“ovpn_aws_vpn_client_”。

AWS 提供的客户端使用 Windows 服务执行 root 操作。Windows 服务日志存储在计算机的以下位置。

C:\Program Files\Amazon\AWS VPN Client\WinServiceLogs\username

客户端无法连接

问题

AWS 提供的客户端无法连接到客户端 VPN 终端节点。

原因

出现此问题的原因可能是以下原因之一:

  • 计算机上已有另一个 OpenVPN 进程在运行,这会阻止客户端连接。

  • 您的配置 (.ovpn) 文件无效。

解决方案

确保您的计算机上是否运行其他 OpenVPN 应用程序。如果在运行这些应用程序,请停止或退出这些进程,然后再次尝试连接到客户端 VPN 终端节点。检查 OpenVPN 日志中的错误,并要求客户端 VPN 管理员验证以下信息:

客户端无法连接,显示“没有 Tap-Windows 适配器”日志消息

问题

AWS 提供的客户端无法连接到客户端 VPN 端点,并且应用程序日志中出现以下错误消息:“此系统上没有 TAP-Windows 适配器”。您应该能够通过转至“开始”->“所有程序”->“TAP-Windows”->“实用程序”->“添加新的 TAP-Windows 虚拟以太网适配器”来创建 Tap-Windows 适配器。

解决方案

您可以通过采取以下一项或多项操作来修复此问题:

  • 重新启动 TAP-Windows 适配器。

  • 重新安装 TAP-Windows 驱动程序。

  • 创建一个新的 TAP-Windows 适配器。

客户端卡在重新连接状态

问题

AWS 提供的客户端尝试连接到客户端 VPN 终端节点,但卡在重新连接状态。

原因

出现此问题的原因可能是以下原因之一:

  • 您的计算机未连接到 Internet。

  • DNS 主机名不会解析为 IP 地址。

  • OpenVPN 进程无限期地尝试连接到终端节点。

解决方案

验证您的计算机已连接到 Internet。要求客户端 VPN 管理员验证配置文件中的 remote 指令是否解析为有效的 IP 地址。您也可以通过在 AWS VPN 客户端窗口中选择 Disconnect (断开连接) 来断开 VPN 会话,然后尝试重新连接。

VPN 连接进程意外退出

问题

连接到客户端 VPN 终端节点时,客户端意外退出。

原因

计算机上未安装 TAP-Windows。运行客户端需要此软件。

解决方案

重新运行 AWS 提供的客户端安装程序以安装所有必需的依赖项。

应用程序无法启动

问题

在 Windows 7 上,在您尝试打开 AWS 提供的客户端时,客户端没有启动。

原因

计算机上未安装 .NET Framework 4.7.2 或更高版本。这是运行客户端所需的。

解决方案

重新运行 AWS 提供的客户端安装程序以安装所有必需的依赖项。

客户端无法创建配置文件

问题

在您尝试使用 AWS 提供的客户端创建配置文件时收到了以下错误。

The config should have either cert and key or auth-user-pass specified.
原因

如果客户端 VPN 终端节点使用双向身份验证,则配置 (.ovpn) 文件未包含客户端证书和密钥。

解决方案

确保您的客户端 VPN 管理员将客户端证书和密钥添加到配置文件中。有关更多信息,请参阅 AWS Client VPN 管理员指南中的导出客户端配置

使用 Windows 10 或 11 的 Dell PC 上出现客户端崩溃问题

问题

在运行 Windows 10 或 11 的某些 Dell PC(台式机和笔记本电脑)上,当您浏览文件系统以导入 VPN 配置文件时,可能会出现客户端崩溃的问题。如果出现此问题,您将在 AWS 提供的客户端日志中看到与以下类似的消息:

System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. at System.Data.SQLite.UnsafeNativeMethods.sqlite3_open_interop(Byte[] utf8Filename, Int32 flags, IntPtr& db) at System.Data.SQLite.SQLite3.Open(String strFilename, SQLiteConnectionFlags connectionFlags, SQLiteOpenFlagsEnum openFlags, Int32 maxPoolSize, Boolean usePool) at System.Data.SQLite.SQLiteConnection.Open() at STCommonShellIntegration.DataShellManagement.CreateNewConnection(SQLiteConnection& newConnection) at STCommonShellIntegration.DataShellManagement.InitConfiguration(Dictionary`2 targetSettings) at DBROverlayIcon.DBRBackupOverlayIcon.initComponent()
原因

Windows 10 和 11 中的 Dell Backup and Recovery 系统可能会导致与 AWS 提供的客户端冲突,尤其是以下三个 DLL:

  • DBR.dll ShellExtension

  • DBR.dll OverlayIconBackuped

  • DBR.dll OverlayIconNotBackuped

解决方案

要避免此问题,请首先确保您的客户端是 AWS 所提供客户端的最新版本。转到 AWSClient VPN 下载,如果有更新的版本,则升级到最新版本。

此外请执行下面的任意一项操作:
  • 如果您使用的是 Dell Backup and Recovery 应用程序,请确保该应用程序已经更新。一篇 Dell 论坛帖子表示该问题已在该应用程序的较新版本中得到解决。

  • 如果您使用的不是 Dell Backup and Recovery 应用程序,如果遇到此问题,仍需采取一些措施。如果您不想升级应用程序,则可以删除或重命名 DLL 文件。但请注意,这将导致 Dell Backup and Recovery 应用程序无法完整运行。

删除或重命名 DLL 文件
  1. 打开 Windows 资源管理器并浏览到 Dell Backup and Recovery 的安装位置。该应用程序通常安装在以下位置,但有时您可能需要使用搜索功能。

    C:\Program Files (x86)\Dell Backup and Recovery\Components\Shell
  2. 从安装目录中手动删除以下 DLL 文件,或将其重命名。这两种操作都将避免加载它们。

    • DBR.dll ShellExtension

    • DBR.dll OverlayIconBackuped

    • DBR.dll OverlayIconNotBackuped

    您可以通过在文件名末尾添加 “.bak” 来重命名文件,例如 D OverlayIconBackuped BR.dll.bak。

VPN 断开连接并显示弹出消息

问题

VPN 断开连接并弹出一条消息,上面写着:“由于您的设备所连接的本地网络的地址空间已更改,VPN 连接正在终止。请建立新的 VPN 连接。”

原因

Tap-Windows 适配器不包含所需的描述。

解决方案

如果下面的Description字段不匹配,请先移除 Tap-Windows 适配器,然后重新运行AWS提供的客户端安装程序以安装所有必需的依赖项。

C:\Users\jdoe> ipconfig /all Ethernet adapter Ethernet 2: Media State . . . . . . . . . . . : Media disconnected Connection-specific DNS Suffix . : Description . . . . . . . . . . . : AWS VPN Client TAP-Windows Adapter V9 Physical Address. . . . . . . . . : 00-FF-50-ED-5A-DE DHCP Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes

OpenVPN GUI

在 Windows 10 家庭版(64 位)和 Windows Server 2016(64 位) 上,测试了 11.10.0.0 和 11.11.0.0 版本的 OpenVPN GUI 软件的以下故障排查信息。

配置文件存储在计算机的以下位置。

C:\Users\User\OpenVPN\config

连接日志存储在计算机的以下位置。

C:\Users\User\OpenVPN\log

OpenVPN 连接客户端

在 Windows 10 家庭版(64 位)和 Windows Server 2016(64 位) 上,测试了 2.6.0.100 和 2.7.1.101 版本的 OpenVPN Connect 客户端软件的以下故障排查信息。

配置文件存储在计算机的以下位置。

C:\Users\User\AppData\Roaming\OpenVPN Connect\profile

连接日志存储在计算机的以下位置。

C:\Users\User\AppData\Roaming\OpenVPN Connect\logs

无法解析 DNS

问题

连接失败并显示以下错误。

Transport Error: DNS resolve error on 'cvpn-endpoint-xyz123.prod.clientvpn.us-east-1.amazonaws.com (http://cvpn-endpoint-xyz123.prod.clientvpn.us-east-1.amazonaws.com/)' for UDP session: No such host is known.
原因

无法解析 DNS 名称。客户端必须在 DNS 名称前附加一个随机字符串,以防止 DNS 缓存;但是,某些客户端不这样做。

解决方案

请参阅 AWS Client VPN 管理员指南中的无法解析客户端 VPN 终端节点 DNS 名称的解决方案。

缺少 PKI 别名

问题

与不使用双向身份验证的客户端 VPN 终端节点的连接失败,并出现以下错误。

FATAL:CLIENT_EXCEPTION: connect error: Missing External PKI alias
原因

OpenVPN Connect 客户端软件有一个已知问题,它尝试使用双向身份验证进行身份验证。如果配置文件不包含客户端密钥和证书,则身份验证将失败。

解决方案

在客户端 VPN 配置文件中指定随机客户端密钥和证书,然后将新配置导入 OpenVPN Connect 客户端软件。或者,使用不同的客户端,例如 OpenVPN GUI 客户端 (v11.12.0.0) 或 Viscosity 客户端 (v.1.7.14)。