您可以通过从 NSX Edge CLI 中运行 IPSec 配置命令来对 IPSec VPN 隧道连接问题进行故障排除。您还可以使用 vSphere Web ClientNSX Data Center for vSphere REST API 来确定隧道故障的原因并查看隧道故障消息。

使用以下过程可对隧道创建和连接问题进行故障排除。

过程

  1. 从两个站点中收集支持日志。
    重要事项: 由于 NSX Edge 设备上的磁盘空间有限,必须将日志重定向到 Syslog 服务器。有关详细信息,请参见 NSX Data Center for vSphere 管理指南》中的“配置远程 Syslog 服务器”部分。
  2. 从第三方 VPN 解决方案中收集日志。
  3. NSX Edge CLI 中运行以下命令,检查 Edge 两端的 IPSec 配置:
    show config ipsec
    提示:

    您可能会发现,使用 SSH 可更加轻松地查看和捕获 NSX Edge 命令的输出。有关在 NSX Edge 上启用 SSH 的详细信息,请参见NSX 命令行界面参考指南》中的“登录和退出 CLI”主题。

  4. NSX Edge 上,记录问题发生时的实时状态。运行以下命令并记录结果。
    命令 用途
    show service ipsec 检查 IPSec VPN 服务的状态。
    show service ipsec sp 检查安全策略的状态。
    show service ipsec sa 检查安全关联 (Security Association, SA) 的状态。
  5. 如果仍出现问题,请在第三方 VPN 解决方案中捕获与 IPSec 相关的日志和输出。
  6. 查看与 IPSec 相关的日志和输出以确定问题。确认 IPSec VPN 服务正在运行、安全策略已经创建,以及设备之间的安全关联已经配置。
    可以从日志中发现的常见问题如下:
    • 无效的 ID:INVALID_ID_INFORMATION 或 PAYLOAD_MALFORMED
    • 无可信 CA:INVALID_KEY_INFORMATION 或更具体的错误。例如,no RSA public key known for 'C=CN, ST=BJ, O=VMware, OU=CINS, CN=left‘, or PAYLOAD_MALFORMED
    • 未找到推荐的代理 ID:INVALID_ID_INFORMATION 或 PAYLOAD_MALFORMED。
    • DPD 没有来自对等方的响应。例如,DPD: No response from peer - declaring peer dead
  7. vSphere Web ClientNSX Edge CLI 中检查隧道故障消息,或通过运行 NSX Data Center for vSphere REST API 来查看此消息。
    例如,要在 vSphere Web Client 中查看故障消息,请双击 NSX Edge,导航到 IPSec VPN 页面,然后执行以下操作:
    1. 单击显示 IPSec 统计信息 (Show IPSec Statistics)
    2. 选择已关闭的 IPSec 通道。
    3. 对于选定的通道,选择关闭(已禁用)的隧道,并查看隧道故障详细信息。
      • NSX 6.4.6 和更高版本中,在隧道状况列中单击已禁用
      • NSX 6.4.5 和更低版本中,在隧道状况列中单击查看详细信息

    下表列出了导致 IPSec 隧道出现连接问题的可能原因以及与每个原因相关联的故障消息。

    原因 故障消息
    IKEv1 对等站点无法访问。 Version-IKEv1 Retransmitting IKE Message as no response from Peer.
    IKEv1 阶段 1 建议不匹配。 Version-IKEv1 No Proposal Chosen. Check configured Encryption/Authentication/DH/IKE-Version.
    以下任一项不匹配:
    • IKEv1 PSK
    • IKEv1 ID
    • IKEv1 证书
    Version-IKEv1 Authentication Failed. Check the configured secret or local/peer ID configuration.
    IKEv1 阶段 2 建议不匹配。 IPSec-SA Proposals or Traffic Selectors did not match.
    IKEv2 对等站点无法访问。 Version-IKEv2 Retransmitting IKE Message as no response from Peer.
    IKEv2 IKE SA 建议不匹配。 Version-IKEv2 No Proposal Chosen. Check configured Encrypt/Authentication/DH/IKEversion.
    IKEv2 IPSec SA 建议不匹配。 IPSec-SA Proposals or Traffic Selectors did not match.
    IKEv2 IPSec SA 流量选择器不匹配。 Traffic selectors did not match. Check left/right subnet configuration.
    以下任一项不匹配:
    • IKEv2 PSK
    • IKEv2 ID
    • IKEv2 证书
    Version-IKEv2 Authentication Failed. Check the configured secret or local/peer ID configuration.
  8. NSX Edge 上针对 IKE 数据包或/和 ESP 数据包设置数据包捕获。
    请参见下图。确定数据包传输失败或丢弃的时间点:
    1. 在时间点 1 和 2 上设置数据包捕获。
    2. 从虚拟机 1 ping 到主机 2。
    3. 从主机 2 ping 到虚拟机 1。
    图 1. 数据传输中各个时间点的数据包捕获
    该图显示了可以捕获数据包的时间点 1 和时间点 2。

    有关 NSX Edge 与 Cisco 设备之间的数据包捕获会话的工作示例,请参见NSX 故障排除指南》中“成功协商的数据包捕获”主题。

  9. 查看所有数据,然后对其进行分析。数据包捕获数据有助于确定问题存在的位置。
    例如,您可以确定以下问题:
    • IKEv1 通道和隧道错误。
    • IKEv2 通道和隧道错误。
    • 数据路径错误。
    • IPSec VPN 隧道关闭错误。
    • IPSec VPN 隧道关闭的方向。