

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

# 排除 AWS 客户端 VPN 与基于 Windows 的客户端的连接故障
<a name="windows-troubleshooting"></a>

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

## AWS 提供的客户端事件日志
<a name="aws-provided-client"></a>

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

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

提供以下日志类型：
+ **应用程序日志**：包含有关应用程序的信息。这些日志的前缀为“aws\$1vpn\$1client\$1”。
+ **OpenVPN 日志**：包含有关 OpenVPN 进程的信息。这些日志的前缀是“ovpn\$1aws\$1vpn\$1client\$1”。

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

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

**Topics**
+ [AWS 提供的客户端事件日志](#aws-provided-client)
+ [客户端无法连接](#windows-troubleshooting-client-vpn-cannot-connect)
+ [客户端无法连接，显示“没有 Tap-Windows 适配器”日志消息](#windows-troubleshooting-client-vpn-cannot-connect-tap-driver)
+ [客户端卡在重新连接状态](#windows-troubleshooting-client-vpn-stuck)
+ [VPN 连接进程意外退出](#windows-troubleshooting-client-vpn-quits)
+ [应用程序无法启动](#windows-troubleshooting-client-vpn-cannot-launch)
+ [客户端无法创建配置文件](#windows-troubleshooting-client-vpn-cannot-create-profile)
+ [VPN 断开连接并显示弹出消息](#windows-troubleshooting-client-vpn-connection-terminated)
+ [PCs 使用Windows 10或11的戴尔系统会发生客户机崩溃](#windows-troubleshooting-client-vpn-crash-dell)
+ [OpenVPN GUI](#windows-troubleshooting-openvpn-gui)
+ [OpenVPN 连接客户端](#windows-troubleshooting-openvpn-connect)
+ [无法解析 DNS](#windows-troubleshooting-openvpn-connect-dns)
+ [缺少 PKI 别名](#windows-troubleshooting-openvpn-connect-pki)

## 客户端无法连接
<a name="windows-troubleshooting-client-vpn-cannot-connect"></a>

**问题**  
 AWS 提供的客户端无法连接到 Client VPN 端点。

**原因**  
出现此问题的原因可能是以下原因之一：
+ 计算机上已有另一个 OpenVPN 进程在运行，这会阻止客户端连接。
+ 您的配置（.ovpn）文件无效。

**解决方案**  
确保您的计算机上是否运行其他 OpenVPN 应用程序。如果在运行这些应用程序，请停止或退出这些进程，然后再次尝试连接到客户端 VPN 终端节点。检查 OpenVPN 日志中的错误，并要求客户端 VPN 管理员验证以下信息：
+ 配置文件包含正确的客户端密钥和证书。有关更多信息，请参阅 *AWS Client VPN 管理员指南*中的[导出客户端配置](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-endpoint-export.html)。
+ CRL 仍然有效。有关更多信息，请参阅 *AWS Client VPN 管理员指南*中的[客户端无法连接到客户端 VPN 终端节点](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/troubleshooting.html#client-cannot-connect)。

## 客户端无法连接，显示“没有 Tap-Windows 适配器”日志消息
<a name="windows-troubleshooting-client-vpn-cannot-connect-tap-driver"></a>

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

**解决方案**  
您可以通过采取以下一项或多项操作来修复此问题：
+ 重新启动 TAP-Windows 适配器。
+ 重新安装 TAP-Windows 驱动程序。
+ 创建一个新的 TAP-Windows 适配器。

## 客户端卡在重新连接状态
<a name="windows-troubleshooting-client-vpn-stuck"></a>

**问题**  
 AWS 提供的客户端正在尝试连接到 Client VPN 端点，但处于重新连接状态。

**原因**  
出现此问题的原因可能是以下原因之一：
+ 您的计算机未连接到 Internet。
+ DNS 主机名不会解析为 IP 地址。
+ OpenVPN 进程无限期地尝试连接到终端节点。

**解决方案**  
验证您的计算机已连接到 Internet。要求客户端 VPN 管理员验证配置文件中的 `remote` 指令是否解析为有效的 IP 地址。也可以在 VPN 客户端窗口中选择 “**断开连接**” 来断开 AWS VPN 会话，然后重试连接。

## VPN 连接进程意外退出
<a name="windows-troubleshooting-client-vpn-quits"></a>

**问题**  
连接到 Client VPN 端点时，客户端意外退出。

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

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

## 应用程序无法启动
<a name="windows-troubleshooting-client-vpn-cannot-launch"></a>

**问题**  
在 Windows 7 上，当你尝试打开 AWS 提供的客户端时，它不会启动。

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

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

## 客户端无法创建配置文件
<a name="windows-troubleshooting-client-vpn-cannot-create-profile"></a>

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

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

**原因**  
如果 Client VPN 端点使用双向身份验证，则配置（.ovpn）文件未包含客户端证书和密钥。

**解决方案**  
确保您的客户端 VPN 管理员将客户端证书和密钥添加到配置文件中。有关更多信息，请参阅 *AWS Client VPN 管理员指南*中的[导出客户端配置](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-endpoint-export.html)。

## VPN 断开连接并显示弹出消息
<a name="windows-troubleshooting-client-vpn-connection-terminated"></a>

**问题**  
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
```

## PCs 使用Windows 10或11的戴尔系统会发生客户机崩溃
<a name="windows-troubleshooting-client-vpn-crash-dell"></a>

**问题**  
在某些运行Windows 10或11的戴尔 PCs （台式机和笔记本电脑）上，当您浏览文件系统以导入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和Recovery系统可能会导致与 AWS 提供的客户机发生冲突，尤其是与以下三个客户机发生冲突 DLLs：
+ DBRShellExtension.dll
+ DBROverlayIconBackuped.ll
+ DBROverlayIconNotBackuped.ll

**解决方案**  
为避免出现此问题，请首先确保您的客户机与所 AWS 提供客户端的最新版本保持同步。转到 [AWS Client VPN 下载](https://aws.amazon.com/vpn/client-vpn-download/)，如果有更新的版本，则升级到最新版本。

**此外请执行下面的任意一项操作：**
+ 如果您使用的是 Dell Backup and Recovery 应用程序，请确保该应用程序已经更新。一篇 [Dell 论坛帖子](https://www.dell.com/community/en/conversations/productivity-software/backup-and-recovery-causing-applications-using-qt5-dlls-to-crash/647f54c6f4ccf8a8dee57b89?commentId=647f6c00f4ccf8a8de92b263#M35007)表示该问题已在该应用程序的较新版本中得到解决。
+ 如果您使用的不是 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
   ```

1. 从安装目录中手动删除以下 DLL 文件，或将其重命名。这两种操作都将避免加载它们。
   + DBRShellExtension.dll
   + DBROverlayIconBackuped.ll
   + DBROverlayIconNotBackuped.ll

   **您可以通过在文件名末尾添加 “.bak” 来重命名文件，DBROverlayIconBackuped例如.dll.bak。**

## OpenVPN GUI
<a name="windows-troubleshooting-openvpn-gui"></a>

在 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 连接客户端
<a name="windows-troubleshooting-openvpn-connect"></a>

在 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
<a name="windows-troubleshooting-openvpn-connect-dns"></a>

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

```
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 名称](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/troubleshooting.html#resolve-host-name)的解决方案。

## 缺少 PKI 别名
<a name="windows-troubleshooting-openvpn-connect-pki"></a>

**问题**  
与不使用双向身份验证的 Client VPN 端点的连接失败，并出现以下错误。

```
FATAL:CLIENT_EXCEPTION: connect error: Missing External PKI alias
```

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

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