VPN 故障排除概述

虚拟网络网关在本地资源和Azure虚拟网络之间提供连接。 监视虚拟网络网关及其连接对于确保通信不中断至关重要。 Azure Network Watcher VPN 故障排除提供对虚拟网络网关及其连接进行故障排除的功能。 可以通过Azure门户、Azure PowerShell、Azure CLI或 REST API 调用 VPN 故障排除。 调用后,Network Watcher诊断网关或连接的运行状况,并返回相应的结果。 该请求是一个长时间执行的事务。 诊断完成后,将返回结果。

Azure门户中的Azure Network Watcher VPN故障排除的屏幕截图。

支持的网关类型

下表列出了Network Watcher故障排除支持哪些网关和连接:

网关或连接 支持
网关类型
VPN 支持
ExpressRoute 不支持
VPN 类型
基于路由 支持
基于策略 不支持
连接类型
IPsec 支持
VNet2VNet 支持
ExpressRoute 不支持
VPNClient 不支持

结果

可以通过返回的初步结果大致了解资源的运行状况。 可以为资源提供更深层的信息,如以下部分所示:

以下列表显示 VPN 故障排除 API 返回的值:

  • startTime - 此值是故障排除 API 调用的开始时间。
  • endTime - 此值是故障排除的结束时间。
  • code - 如果存在单个诊断故障,则此值为 UnHealthy。
  • results - 返回的关于连接或虚拟网关的结果的集合。
    • id - 此值为错误类型。
    • summary - 此值为错误的摘要。
    • detailed - 此值提供对错误的详细说明。
    • recommendedActions - 此属性是要采取的建议操作的集合。
      • actionText - 此值包含的文本描述了要采取的具体操作。
      • actionUri - 此值提供操作说明文档的 URI。
      • actionUriText - 此值对操作文本进行了简短的说明。

下表显示了提供的不同错误类型(即前面列表中结果下的 ID)并指示了错误是否会创建日志。

网关

错误类型 原因 日志
无故障 未检测到任何错误 是
网关未找到 找不到网关或未预配网关 否
计划维护 网关实例处于维护状态 否
用户驱动更新 用户更新正在进行时发生此故障。 更新可能是调整大小操作。 否
VipUnResponsive 网关的主实例因健康探测失败而无法访问时会发生此故障。 否
PlatformInActive 平台出现问题。 否
服务未运行 基础服务未运行。 否
未找到网关连接 当前网关上没有连接。 此错误只是一条警告。 否
连接未连接 连接未成功。 此错误只是一条警告。 是
网关CPU使用率超出限制 当前网关 CPU 使用率 > 95%。 是

连接

错误类型 原因 日志
无故障 未检测到任何错误 是
网关未找到 找不到网关或未预配网关 否
计划维护 网关实例处于维护状态 否
用户驱动更新 用户更新正在进行时发生此故障。 更新可能是调整大小操作。 否
VipUnResponsive 网关的主实例因健康探测失败而无法访问时会发生此故障。 否
ConnectionEntityNotFound 连接配置缺失 否
连接被标记为已断开 连接标记为“断开连接” 否
未在网关上配置连接 基础服务未配置连接。 是
连接标记为待机 底层服务标记为备用。 是
身份验证 预共享密钥不匹配 是
对等可达性 无法访问对等网关。 是
Ike策略不匹配 对等网关具有 Azure 不支持的 IKE 策略。 是
WfpParse 错误 分析 WFP 日志时出错。 是

日志文件

资源故障诊断完成后,其日志文件存储在存储帐户中。 下图显示了导致错误的调用的示例内容。

显示下载的压缩日志文件内容的屏幕截图。

注意

  1. 在某些情况下,仅部分日志文件写入到存储中。
  2. 对于较新的网关版本,IkeLogs.txt 文件将替换 IkeErrors.txt、Scrubbed-wfpdiag.txt 和 wfpdiag.txt.sum 文件,并包含整个 IKE 活动(而不仅仅是错误)。

有关从 Azure 存储帐户下载文件的说明,请参阅 Download a block blob。 可以使用的另一个工具是Storage Explorer。 有关“Azure Storage Explorer”的信息,请参阅使用“Azure Storage Explorer”下载 Blob。

ConnectionStats.txt

ConnectionStats.txt 文件包含连接的综合性统计信息,包括入口和出口字节数、连接状态、建立连接的时间。

注意

如果调用故障排除 API 后返回“正常”,则只在 zip 文件中返回 ConnectionStats.txt 文件。

该文件的内容类似于以下示例:

Connectivity State : Connected
Remote Tunnel Endpoint :
Ingress Bytes (since last connected) : 288 B
Egress Bytes (Since last connected) : 288 B
Connected Since : 2/1/2017 8:22:06 PM

CPUStats.txt

CPUStats.txt 文件包含测试时的 CPU 使用率和可用内存。 该文件的内容类似于以下示例:

Current CPU Usage : 0 % Current Memory Available : 641 MBs

IKElogs.txt

IKElogs.txt 文件包含在监视过程中发现的任何 IKE 活动。

以下示例显示了一个 IKElogs.txt 文件的内容。

Remote <IPaddress>:500: Local <IPaddress>:500: [RECEIVED][SA_AUTH] Received IKE AUTH message
Remote <IPaddress>:500: Local <IPaddress>:500: Received Traffic Selector payload request- [Tsid 0x729  ]Number of TSIs 2: StartAddress 10.20.0.0 EndAddress 10.20.255.255 PortStart 0 PortEnd 65535 Protocol 0, StartAddress 192.168.100.0 EndAddress 192.168.100.255 PortStart 0 PortEnd 65535 Protocol 0 Number of TSRs 1:StartAddress 0.0.0.0 EndAddress 255.255.255.255 PortStart 0 PortEnd 65535 Protocol 0
Remote <IPaddress>:500: Local <IPaddress>:500: [SEND] Proposed Traffic Selector payload will be (Final Negotiated) - [Tsid 0x729  ]Number of TSIs 2: StartAddress 10.20.0.0 EndAddress 10.20.255.255 PortStart 0 PortEnd 65535 Protocol 0, StartAddress 192.168.100.0 EndAddress 192.168.100.255 PortStart 0 PortEnd 65535 Protocol 0 Number of TSRs 1:StartAddress 0.0.0.0 EndAddress 255.255.255.255 PortStart 0 PortEnd 65535 Protocol 0
Remote <IPaddress>:500: Local <IPaddress>:500: [RECEIVED]Received IPSec payload: Policy1:Cipher=DESIntegrity=Md5
IkeCleanupQMNegotiation called with error 13868 and flags a
Remote <IPaddress>:500: Local <IPaddress>:500: [SEND][NOTIFY] Sending Notify Message - Policy Mismatch

IKEErrors.txt

IKEErrors.txt 文件包含在监视过程中发现的任何 IKE 错误。

以下示例显示一个 IKEErrors.txt 文件的内容。 你的错误可能因具体问题而有所不同。

Error: Authentication failed. Check shared key. Check crypto. Check lifetimes. 
	 based on log : Peer failed with Windows error 13801(ERROR_IPSEC_IKE_AUTH_FAIL)
Error: On-prem device sent invalid payload. 
	 based on log : IkeFindPayloadInPacket failed with Windows error 13843(ERROR_IPSEC_IKE_INVALID_PAYLOAD)

Scrubbed-wfpdiag.txt

Scrubbed-wfpdiag.txt 日志文件包含 wfp 日志。 该日志记录了数据包丢弃和 IKE/AuthIP 故障的情况。

以下示例显示 Scrubbed-wfpdiag.txt 文件的内容。 在此示例中,连接的预共享密钥错误(从倒数第三行可以看出)。 以下示例只是完整日志的一个片段,因为日志可能很长(具体取决于问题)。

...
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Deleted ICookie from the high priority thread pool list
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| IKE diagnostic event:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Event Header:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Timestamp: 1601-01-01T00:00:00.000Z
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Flags: 0x00000106
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Local address field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Remote address field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| IP version field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| IP version: IPv4
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| IP protocol: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Local address: 203.0.113.92
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Remote address: 203.0.113.36
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Local Port: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Remote Port: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Application ID:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| User SID: <invalid>
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Failure type: IKE/Authip Main Mode Failure
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Type specific info:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Failure error code:0x000035e9
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| IKE authentication credentials are unacceptable
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36|
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|203.0.113.36| Failure point: Remote
...

wfpdiag.txt.sum

wfpdiag.txt.sum 文件是一个显示已处理的缓冲区和事件的日志。

以下示例是 wfpdiag.txt.sum 文件的内容。

Files Processed:
	C:\Resources\directory\924336c47dd045d5a246c349b8ae57f2.GatewayTenantWorker.DiagnosticsStorage\2017-02-02T17-34-23\wfpdiag.etl
Total Buffers Processed 8
Total Events  Processed 2169
Total Events  Lost      0
Total Format  Errors    0
Total Formats Unknown   486
Elapsed Time            330 sec
+-----------------------------------------------------------------------------------+
|EventCount    EventName            EventType   TMF                                 |
+-----------------------------------------------------------------------------------+
|        36    ikeext               ike_addr_utils_c844  a0c064ca-d954-350a-8b2f-1a7464eef8b6|
|        12    ikeext               ike_addr_utils_c857  a0c064ca-d954-350a-8b2f-1a7464eef8b6|
|        96    ikeext               ike_addr_utils_c832  a0c064ca-d954-350a-8b2f-1a7464eef8b6|
|         6    ikeext               ike_bfe_callbacks_c133  1dc2d67f-8381-6303-e314-6c1452eeb529|
|         6    ikeext               ike_bfe_callbacks_c61  1dc2d67f-8381-6303-e314-6c1452eeb529|
|        12    ikeext               ike_sa_management_c5698  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|         6    ikeext               ike_sa_management_c8447  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|        12    ikeext               ike_sa_management_c494  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|        12    ikeext               ike_sa_management_c642  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|         6    ikeext               ike_sa_management_c3162  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|        12    ikeext               ike_sa_management_c3307  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|

注意事项

  • 每个订阅一次只能运行一个 VPN 故障排除操作。 若要运行其他 VPN 故障排除操作,请等待现有操作完成。 如果在上一个操作未完成的情况下触发新操作,会导致后续操作失败。
  • 如果使用Azure CLI运行命令,VPN Gateway和存储帐户需要位于同一资源组中。 具有不同资源组中的资源的客户可以使用 PowerShell 或 Azure 门户。

下一步