你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

VPN 故障排除概述

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

Screenshot of Azure Network Watcher VPN troubleshoot in the Azure portal.

支持的网关类型

下表列出了网络观察程序故障排除支持的网关和连接:

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

结果

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

以下列表是通过故障排除 API 返回的值:

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

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

网关

错误类型 原因 日志
NoFault 未检测到任何错误
GatewayNotFound 找不到网关或未预配网关
PlannedMaintenance 网关实例处于维护状态
UserDrivenUpdate 用户更新正在进行时发生此故障。 更新可能是重设大小操作。
VipUnResponsive 由于运行状况探测失败导致无法访问网关的主实例时发生此故障。
PlatformInActive 平台出现问题。
ServiceNotRunning 基础服务未运行。
NoConnectionsFoundForGateway 网关未建立连接。 此错误只是一条警告。
ConnectionsNotConnected 连接未连接。 此错误只是一条警告。
GatewayCPUUsageExceeded 当前网关 CPU 使用率 > 95%。

连接

错误类型 原因 日志
NoFault 未检测到任何错误
GatewayNotFound 找不到网关或未预配网关
PlannedMaintenance 网关实例处于维护状态
UserDrivenUpdate 用户更新正在进行时发生此故障。 更新可能是重设大小操作。
VipUnResponsive 由于运行状况探测失败导致无法访问网关的主实例时发生此故障。
ConnectionEntityNotFound 连接配置缺失
ConnectionIsMarkedDisconnected 连接标记为“断开连接”
ConnectionNotConfiguredOnGateway 基础服务未配置连接。
ConnectionMarkedStandby 底层服务标记为备用。
Authentication 预共享密钥不匹配
PeerReachability 无法访问对等网关。
IkePolicyMismatch 对等网关中的 IKE 策略不受 Azure 支持。
WfpParse Error 分析 WFP 日志时出错。

日志文件

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

Screenshot shows the content of the downloaded zipped log files.

注意

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

有关从 Azure 存储帐户下载文件的说明,请参阅 下载块 blob。 可以使用的另一个工具是存储资源管理器。 有关 Azure 存储资源管理器的信息,请参阅 使用Azure 存储资源管理器下载 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|52.161.24.36|Deleted ICookie from the high priority thread pool list
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|IKE diagnostic event:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|Event Header:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Timestamp: 1601-01-01T00:00:00.000Z
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Flags: 0x00000106
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    Local address field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    Remote address field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    IP version field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  IP version: IPv4
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  IP protocol: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Local address: 13.78.238.92
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Remote address: 52.161.24.36
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Local Port: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Remote Port: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Application ID:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  User SID: <invalid>
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|Failure type: IKE/Authip Main Mode Failure
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|Type specific info:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Failure error code:0x000035e9
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    IKE authentication credentials are unacceptable
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.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 故障排除操作,请等待上一个操作完成。 在上一个操作尚未完成时触发新的操作会导致后续操作失败。
  • CLI Bug: 如果正在使用 Azure CLI 运行命令,则 VPN 网关和存储帐户需要位于同一资源组中。 具有不同资源组中资源的客户可以改为使用 PowerShell 或 Azure 门户。

下一步

要了解如何诊断虚拟网络网关或网关连接问题,请参阅诊断虚拟网络间的通信问题