以下指南可帮助您排查 Connectivity Tests 的常见问题。
如需详细了解连接测试,请参阅概览。
如需解读 Connectivity Tests 配置分析的状态,请参阅配置分析状态。
常见问题
取得测试结果所需的时间太长
由于连接测试会查询 Virtual Private Cloud (VPC) 网络配置的最新快照,因此获得结果可能需要一些时间。如需了解详情,请参阅预期查询响应时间。
如果在运行连接测试时遇到较长或不稳定的延迟时间,请将该问题报告给支持团队并说明如何重现该问题。
我的测试的配置分析未能提取我所做的配置更改
对测试路径中的 Google Cloud 资源进行配置更改后,您可能需要使用测试的配置分析来验证更改。但是,Connectivity Tests 需要 20 秒到 120 秒才能接收到配置更新并将其整合到分析中。确保在更改配置后等待足够长的时间再运行测试。
某些类型的配置可能需要更长的时间才能完成。如果您的配置更改经过长时间后未通过连接测试验证,并且可以重现,请将该问题报告给支持团队并说明如何重现该问题。
此延迟不适用于动态验证。因此,动态验证和配置分析显示的结果之间可能存在暂时不匹配的情况。例如,如果您创建了防火墙规则,则动态验证通常会立即响应新规则。但是,您可能需要等待 20 秒或更长时间,配置分析才能评估该防火墙规则以及测试路径中的其他资源。
测试状态问题
我无法访问有关分层防火墙政策的详细信息
测试的跟踪记录可能会引用您无权查看的分层防火墙政策。
但是,即使您无权查看政策,也仍然可以查看应用于 VPC 网络的政策规则。如需了解详情,请参阅分层防火墙政策概览中的有效防火墙规则。
对分层防火墙政策的访问权限是在组织和文件夹级层定义的。如需详细了解查看这些政策所需的权限,请参阅分层防火墙政策概览中的 Identity and Access Management (IAM) 角色。
我的测试显示了 Deliver
的最终配置分析状态,但连接中断
在某些情况下,配置分析会建议来源和目标端点可访问。但是,您可能会发现在两个端点之间连接实际上已中断,或者动态验证显示 100% 数据包丢失。
为理解这种情况,请注意,Connectivity Tests 使用两种类型的分析:一种是配置分析,用于检测项目中的活跃配置中的问题;另一种是动态验证,用于在数据层面发送探测。
最终配置分析状态为 Deliver
表示 Connectivity Tests 未检测到任何配置问题。但是,仍然可能存在会导致连接问题的数据路径问题。如需进行问题排查,请考虑以下方面:
- 来源虚拟机或目标虚拟机遇到了客机操作系统问题,例如客机操作系统内核崩溃、网络接口控制器 (NIC) 未初始化或网络驱动程序不兼容。检查虚拟机状态和 NIC 配置。
- 一个广泛性问题会影响网络平面。查看项目的性能信息中心,特别注意相关区域对的丢包率。此外,请查看 Google Cloud 状态信息中心。
- 您的网络遇到偶尔出现的网络编程问题,例如向特定 Google Cloud 实体传播网络配置的问题。请考虑 5 分钟后再重新运行测试。如果问题仍然存在,请停止并启动来源虚拟机或目标虚拟机(如停止和启动实例中所述),然后重新运行测试。
我的测试返回了 Undetermined
的总体配置分析结果
总体可达性结果为 Undetermined
意味着配置分析无法确定连接。此结果可能会由于以下任何原因而显示:
- 发生了权限错误 - 例如,用户可能没有对测试中指定的所有资源的读取权限。
- 发生内部错误。
- 分析器收到无效或不受支持的参数,或无法识别已知端点。
- 您正在尝试验证超出 Google Cloud 范围的路由。Connectivity Tests 无法访问 Google Cloud 外部的网络配置。
我的测试返回了 Ambiguous
的总体配置分析结果
总体配置分析结果为 Ambiguous
表示 Connectivity Tests 返回了多条跟踪记录,并且存在混合最终状态。
下表列出了此状态的一些常见原因和解决方法。
原因 | 示例 | 解决方法 |
---|---|---|
来源位置不是唯一的。 | 您指定了内部来源 IP 地址,但并未指定 IP 地址所在的 VPC 网络(内部来源 IP 地址是您无法通过互联网访问的地址)。由于可以从多个 VPC 网络访问此地址,因此连接测试可以从每个位置开始跟踪。 | 使用此 IP 地址所在的 VPC 网络更新测试。 |
跟踪记录具有多个可能的目标。 | 您已将跟踪记录目标指定为具有多个后端且并非所有后端均可访问的负载平衡器 VIP。 | 研究这种情况的发生原因,并在重新运行测试之前根据需要解决问题。 |
我的测试返回了 Abort
的整体配置分析结果,系统显示 Invalid Argument
消息
产生 Invalid Argument
消息的一些常见原因如下:
- 您提供的 IP 地址不受支持。示例包括环回地址、多播 IP 地址、到仅分配了 IPv4 地址的虚拟机实例的 IPv6 地址。
- 虚拟机实例或指定的网络不存在。在创建测试时删除虚拟机实例或 VPC 网络时,可能会发生这种情况。
使用 Network Management API 时,出于以下原因之一,通常会返回 Invalid Argument
消息:
- 虚拟机或网络 URI 的名称拼写错误或位置不正确。
- 指定的项目 ID 错误。如果您使用项目名称而非项目 ID,则会发生此错误。
- 指定的内部 IP 地址和所选网络之间不匹配。即使用于连接测试的 Google Cloud 控制台对指定的 Compute Engine 实例、网络和项目执行严格的验证,这种类型的不匹配仍然可能发生。
配置分析结果为 Packet could not be delivered
,但动态验证表示已递送所有数据包
多种原因可能导致这种明显的不一致。请考虑以下可能的原因和补救措施:
最近的 VPC 网络配置变更导致配置分析与活跃探测不一致。重新运行测试,如果可能的话,请确保在测试之前或测试期间网络配置不会更改。
发生了偶尔出现的网络编程问题。停止并启动来源虚拟机或目标虚拟机(如停止和启动实例中所述),然后重新运行测试。
配置分析结果为 Packet could be delivered
,但动态验证表示部分数据包丢失
多种原因可能导致这种明显的不一致。可能的原因和解决方案包括:
源或目标虚拟机受到限制,同时超出了允许的出口或入口带宽。转到虚拟机实例详情页面,然后查看 Monitoring 标签页的详细信息,以分析虚拟机流量。查看网络字节数指标并将其与网络宽带中相应机器类型的带宽限制进行比较。
一个广泛性问题会影响网络平面。查看项目的性能信息中心,特别注意相关区域对。此外,请查看 Google Cloud 状态信息中心。
配置分析结果为 Packet could be delivered
,而动态验证显示完整递送,但我的应用遇到数据包丢失问题
多种原因可能导致这种明显的不一致。可能的原因和解决方案包括:
- 客机操作系统(例如内部防火墙规则)可能阻止了流量。请验证流量未被阻止,然后再次尝试测试。
- 应用数据包可能会遍历不同于网络验证探测的网络路径。考虑重新建立连接。例如,尝试使用其他源端口。
- 动态验证检测到单向丢包。在这种情况下,丢包可能发生在返回路径上。考虑以相反方向运行测试。
测试结果不包含动态验证结果
并非 Connectivity Tests 支持的所有测试都可以动态验证。确保测试满足动态验证所需的条件,如概览中所指定。
Network Management API 返回了 INTERNAL_ERROR
此事件通常不应该发生。如果是这样,请将问题报告给支持团队并说明如何重现该问题。
Google Cloud 控制台问题
用于连接测试的 Google Cloud 控制台崩溃
Google Cloud 控制台通常不应崩溃。如果是这样,请将问题报告给支持团队并说明如何重现该问题。
后续步骤
- 识别和修复 ICMP 问题(教程)