- 资源:ConnectivityTest
- 端点
- NetworkType
- ReachabilityDetails
- 结果
- 跟踪记录
- EndpointInfo
- 步骤
- 状态
- InstanceInfo
- FirewallInfo
- RouteInfo
- RouteType
- NextHopType
- ForwardingRuleInfo
- VpnGatewayInfo
- VpnTunnelInfo
- RoutingType
- DeliverInfo
- 目标
- ForwardInfo
- 目标
- AbortInfo
- 原因
- DropInfo
- 原因
- LoadBalancerInfo
- LoadBalancerType
- LoadBalancerBackend
- HealthCheckFirewallState
- BackendType
- NetworkInfo
- 方法
资源:ConnectivityTest
用于网络可达性分析的连接测试。
JSON 表示法 | |
---|---|
{ "name": string, "description": string, "source": { object ( |
字段 | |
---|---|
name |
必需。资源的唯一名称,格式为: |
description |
用户提供的连接测试说明。最多 512 个字符。 |
source |
必需。连接测试的来源规范。 您可以使用来源 IP 地址、虚拟机实例或 Compute Engine 网络的组合来唯一标识来源位置。 示例:如果来源 IP 地址是 Google Cloud Virtual Private Cloud (VPC) 网络中的内部 IP 地址,那么您还必须指定 VPC 网络。否则,请指定虚拟机实例,该实例已包含其内部 IP 地址和 VPC 网络信息。 如果测试的来源位于本地网络内,则您必须提供目标 VPC 网络。 如果来源端点是具有多个网络接口的 Compute Engine 虚拟机实例,则该实例本身不足以标识此端点。因此,您还必须指定来源 IP 地址或 VPC 网络。 即使来源位置不明确,也会进行可达性分析。但是,测试结果可能包含您不打算测试的端点。 |
destination |
必需。连接测试的目标规范。 您可以结合使用目标 IP 地址、Compute Engine 虚拟机实例或 VPC 网络来唯一标识目标位置。 即使目标 IP 地址不是唯一的,来源 IP 位置也是唯一的。通常,分析可以根据路由信息推断目标端点。 如果您指定的目标是虚拟机实例,并且该实例具有多个网络接口,则您还必须指定目标 IP 地址或 VPC 网络以标识目标接口。 即使目标位置不明确,也会进行可达性分析。但是,结果可能包含您不打算测试的端点。 |
protocol |
测试的 IP 协议。如果未提供,则假定为“TCP”。 |
relatedProjects[] |
与可达性分析可能相关的其他项目。这适用于测试可能跨越项目边界的情景。 |
displayName |
仅供输出。连接测试的显示名称。 |
labels |
用于表示用户提供的元数据的资源标签。 包含一系列 |
createTime |
仅供输出。测试的创建时间。 时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒。示例: |
updateTime |
仅供输出。测试配置的更新时间。 时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒。示例: |
reachabilityDetails |
仅供输出。最近一次运行该测试的可达性详情。在创建新测试,更新现有测试或触发现有测试的一次性重新运行时,系统将更新该详情。 |
端点
连接测试的来源或目标。
JSON 表示法 | |
---|---|
{
"ipAddress": string,
"port": integer,
"instance": string,
"network": string,
"networkType": enum ( |
字段 | |
---|---|
ipAddress |
端点的 IP 地址,可以是外部 IP 或内部 IP。仅当测试的目标是全局负载平衡器 VIP 时,才允许使用 IPv6 地址。 |
port |
端点的 IP 协议端口。仅在协议为 TCP 或 UDP 时适用。 |
instance |
Compute Engine 实例 URI。 |
network |
Compute Engine 网络 URI。 |
networkType |
端点所在的网络的类型。仅适用于来源端点,因为可以从来源推断出目标网络类型。 |
projectId |
端点所在的项目 ID。如果提供了虚拟机实例或网络 URI,则可以从 URI 派生项目 ID。以下是必须提供项目 ID 的两种情况:1. 仅指定了 IP 地址,并且该 IP 地址在 GCP 项目中。2. 使用共享 VPC 时,您提供的 IP 地址来自服务项目。在这种情况下,将在宿主项目中定义 IP 地址所在的网络。 |
NetworkType
端点网络的类型定义。使用以下选项之一:
NETWORK_TYPE_UNSPECIFIED
如果未指定,则为默认类型。
GCP_NETWORK
Google Cloud Platform 中托管的网络。如需接收更多详细输出,请指定来源或目标网络的 URI。
NON_GCP_NETWORK
在 Google Cloud Platform 外部托管的网络。这可以是本地网络,也可以是由其他云服务商托管的网络。
枚举 | |
---|---|
NETWORK_TYPE_UNSPECIFIED |
如果未指定,则为默认类型。 |
GCP_NETWORK |
Google Cloud Platform 中托管的网络。如需接收更多详细输出,请指定来源或目标网络的 URI。 |
NON_GCP_NETWORK |
在 Google Cloud Platform 外部托管的网络。这可以是本地网络,也可以是由其他云服务商托管的网络。 |
ReachabilityDetails
最近一次运行的可达性状态的详细信息。
JSON 表示法 | |
---|---|
{ "result": enum ( |
字段 | |
---|---|
result |
测试的总体可达性结果。 |
verifyTime |
可达性状态得到验证的时间。 时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒。示例: |
error |
可达性分析失败或取消可达性分析的详细信息。 |
traces[] |
如果一项测试在网络中具有多个可能的路径(例如当目标端点是具有多个后端的负载平衡器时),则结果可能包含跟踪记录列表。 |
结果
测试的总体可达性结果,可以是下列值之一:
RESULT_UNSPECIFIED
未指定结果。
REACHABLE
来源数据包有望到达目标。可能的场景是:*数据包被追踪到目标。*根据您拥有权限的配置,分析已部分完成。最终状态指示数据包已转发。
UNREACHABLE
来源数据包有望在到达目标之前被丢弃。
UNDETERMINED
无法确定可达性。可能的原因是:*由于权限错误,分析已中止。用户没有对该测试中所列项目的读取权限。*由于无效的参数,分析已中止,或者分析器无法识别有效的端点位置进行分析。*由于内部错误,分析已中止。
AMBIGUOUS
如果来源端点和目标端点不能唯一地标识网络中的测试位置,并且可达性结果包含具有可到达和不可到达状态混合的多个跟踪记录,则将返回此结果。
枚举 | |
---|---|
RESULT_UNSPECIFIED |
未指定结果。 |
REACHABLE |
来源数据包有望到达目标。 |
UNREACHABLE |
来源数据包有望在到达目标之前被丢弃。 |
AMBIGUOUS |
如果来源端点和目标端点不能唯一地标识网络中的测试位置,并且可达性结果包含具有可到达和不可到达状态混合的多个跟踪记录,则将返回此结果。 |
UNDETERMINED |
无法确定可达性。可能的原因包括:
|
跟踪记录
跟踪记录表示一条模拟数据包转发的路径。
- 每条跟踪记录包含多个有序的步骤。
- 每个步骤都处于特定状态,并具有关联的配置。
- 状态被分类为最终或非最终状态。
- 每个最终状态都有一个与之相关的原因。
- 每个跟踪记录必须以最终状态(最后一步)结束。
|---------------------Trace----------------------|
Step1(State) Step2(State) --- StepN(State(final))
JSON 表示法 | |
---|---|
{ "endpointInfo": { object ( |
字段 | |
---|---|
endpointInfo |
从来源和目标端点定义派生,并由数据平面模型验证。如果存在从不同来源位置开始的多个跟踪记录,则跟踪记录之间的 endpointInfo 可能会有所不同。 |
steps[] |
测试的跟踪记录包含从初始状态到最终状态(已递送、已丢弃、已转发或已中止)的多个步骤。 这些步骤按模拟网络状态机内的处理顺序排序。保留这些步骤的顺序,并避免对它们进行重新排列或排序,这一点至关重要。 |
EndpointInfo
仅用于显示。测试端点的规范。EndpointInfo 派生自来源端点和目标端点,并由后端数据平面模型验证。
JSON 表示法 | |
---|---|
{ "sourceIp": string, "destinationIp": string, "protocol": string, "sourcePort": integer, "destinationPort": integer, "sourceNetworkUri": string, "destinationNetworkUri": string } |
字段 | |
---|---|
sourceIp |
来源 IP 地址。 |
destinationIp |
目标 IP 地址。 |
protocol |
字符串格式的 IP 协议,例如:“TCP”、“UDP”、“ICMP”。 |
sourcePort |
来源端口。仅在协议为 TCP 或 UDP 时有效。 |
destinationPort |
目标端口。仅在协议为 TCP 或 UDP 时有效。 |
sourceNetworkUri |
此数据包源自的网络的 URI。 |
destinationNetworkUri |
此数据包发送到的网络的 URI。 |
步骤
模拟转发路径由多个步骤组成。每个步骤都有一个明确定义的状态和关联的配置。
JSON 表示法 | |
---|---|
{ "description": string, "state": enum ( |
字段 | ||
---|---|---|
description |
步骤说明。通常,这是状态的摘要。 |
|
state |
每个步骤都处于某种预定义状态。 |
|
causesDrop |
这是通向最终状态“丢弃”的步骤。 |
|
projectId |
包含此步骤正在验证的配置的项目 ID。 |
|
联合字段 step_info 。与每个步骤关联的配置或元数据。根据查看者的许可过滤配置。如果查看者无权在此步骤中查看相应配置,则对于非最终状态,将填充特殊状态 (VIEWER_PERMISSION_MISSING);对于最终状态,将清除该配置。step_info 只能是下列其中一项: |
||
instance |
显示 Compute Engine 实例的信息。 |
|
firewall |
显示 Compute Engine 防火墙规则的信息。 |
|
route |
显示 Compute Engine 路由的信息。 |
|
endpoint |
显示正在分析的来源和目标的信息。处于中间状态的端点信息可能与初始输入有所不同,因为它可能会被 NAT 或连接代理之类的状态所修改。 |
|
forwardingRule |
显示 Compute Engine 转发规则的信息。 |
|
vpnGateway |
显示 Compute Engine VPN 网关的信息。 |
|
vpnTunnel |
显示 Compute Engine VPN 隧道的信息。 |
|
deliver |
显示最终状态“递送”和原因的信息。 |
|
forward |
显示最终状态“转发”和原因的信息。 |
|
abort |
显示最终状态“中止”和原因的信息。 |
|
drop |
显示最终状态“丢弃”和原因的信息。 |
|
loadBalancer |
显示负载平衡器的信息。 |
|
network |
显示 GCP 网络的信息。 |
状态
网络状态机中定义的状态类型。数据包跟踪记录中的每个步骤都处于特定状态。
STATE_UNSPECIFIED
未指定状态。
START_FROM_INSTANCE
初始状态:来自 Compute Engine 实例的数据包。
InstanceInfo
将使用初始实例信息填充。
START_FROM_INTERNET
初始状态:来自互联网的数据包。端点信息将被填充。
START_FROM_PRIVATE_NETWORK
初始状态:来自具有内部来源 IP 的 VPC 或本地网络的数据包。如果来源是对用户可见的 Virtual Private Cloud (VPC) 网络,则
NetworkInfo
将填充网络的详细信息。
APPLY_INGRESS_FIREWALL_RULE
配置检查状态:验证入站防火墙规则。
APPLY_EGRESS_FIREWALL_RULE
配置检查状态:验证出站防火墙规则。
APPLY_ROUTE
配置检查状态:验证路由。
APPLY_FORWARDING_RULE
配置检查状态:匹配转发规则。
SPOOFING_APPROVED
配置检查状态:数据包在外部 IP 地址下发送或接收并被允许。
ARRIVE_AT_INSTANCE
转发状态:到达 Compute Engine 实例。
ARRIVE_AT_INTERNAL_LOAD_BALANCER
转发状态:到达 Compute Engine 内部负载平衡器。
ARRIVE_AT_EXTERNAL_LOAD_BALANCER
转发状态:到达 Compute Engine 外部负载平衡器。
ARRIVE_AT_VPN_GATEWAY
转发状态:到达 Cloud VPN 网关。
ARRIVE_AT_VPN_TUNNEL
转发状态:到达 Cloud VPN 隧道。
NAT
过渡状态:数据包标头已转换。
PROXY_CONNECTION
过渡状态:原始连接已终止,新的代理连接已启动。
DELIVER
最终状态:数据包可以被递送。
DROP
最终状态:数据包可能被丢弃。
FORWARD
最终状态:数据包可能被转发到配置未知的网络。
ABORT
最终状态:分析已中止。
VIEWER_PERMISSION_MISSING
特殊状态:测试结果的查看者无权在此步骤中查看配置。
枚举 | |
---|---|
STATE_UNSPECIFIED |
未指定状态。 |
START_FROM_INSTANCE |
初始状态:来自 Compute Engine 实例的数据包。将使用起始实例信息填充 InstanceInfo。 |
START_FROM_INTERNET |
初始状态:来自互联网的数据包。端点信息将被填充。 |
START_FROM_PRIVATE_NETWORK |
初始状态:来自具有内部来源 IP 的 VPC 或本地网络的数据包。如果来源是对用户可见的 VPC 网络,则将使用网络详细信息填充 NetworkInfo。 |
APPLY_INGRESS_FIREWALL_RULE |
配置检查状态:验证入站防火墙规则。 |
APPLY_EGRESS_FIREWALL_RULE |
配置检查状态:验证出站防火墙规则。 |
APPLY_ROUTE |
配置检查状态:验证路由。 |
APPLY_FORWARDING_RULE |
配置检查状态:匹配转发规则。 |
SPOOFING_APPROVED |
配置检查状态:数据包在外部 IP 地址下发送或接收并被允许。 |
ARRIVE_AT_INSTANCE |
转发状态:到达 Compute Engine 实例。 |
ARRIVE_AT_INTERNAL_LOAD_BALANCER |
转发状态:到达 Compute Engine 内部负载平衡器。 |
ARRIVE_AT_EXTERNAL_LOAD_BALANCER |
转发状态:到达 Compute Engine 外部负载平衡器。 |
ARRIVE_AT_VPN_GATEWAY |
转发状态:到达 Cloud VPN 网关。 |
ARRIVE_AT_VPN_TUNNEL |
转发状态:到达 Cloud VPN 隧道。 |
NAT |
过渡状态:数据包标头已转换。 |
PROXY_CONNECTION |
过渡状态:原始连接已终止,新的代理连接已启动。 |
DELIVER |
最终状态:数据包已递送。 |
DROP |
最终状态:数据包已丢弃。 |
FORWARD |
最终状态:数据包已转发到未知配置的网络。 |
ABORT |
最终状态:分析已中止。 |
VIEWER_PERMISSION_MISSING |
特殊状态:测试结果的查看者无权在此步骤中查看配置。 |
InstanceInfo
仅用于显示。与 Compute Engine 实例关联的元数据。
JSON 表示法 | |
---|---|
{ "displayName": string, "uri": string, "interface": string, "networkUri": string, "internalIp": string, "externalIp": string, "networkTags": [ string ], "serviceAccount": string } |
字段 | |
---|---|
displayName |
Compute Engine 实例的名称。 |
uri |
Compute Engine 实例的 URI。 |
interface |
Compute Engine 实例的网络接口的名称。 |
networkUri |
Compute Engine 网络的 URI。 |
internalIp |
网络接口的内部 IP 地址。 |
externalIp |
网络接口的外部 IP 地址。 |
networkTags[] |
在实例上配置的网络标记。 |
serviceAccount |
为实例授权的服务帐号。 |
FirewallInfo
仅用于显示。与 Compute Engine 防火墙规则关联的元数据。
JSON 表示法 | |
---|---|
{ "displayName": string, "uri": string, "direction": string, "action": string, "priority": integer, "networkUri": string, "targetTags": [ string ], "targetServiceAccounts": [ string ] } |
字段 | |
---|---|
displayName |
Compute Engine 防火墙规则的名称。 |
uri |
Compute Engine 防火墙规则的 URI。隐式默认规则没有 URI。 |
direction |
可能的值:INGRESS、EGRESS |
action |
可能的值:ALLOW、DENY |
priority |
防火墙规则的优先级。 |
networkUri |
Compute Engine 网络的 URI。 |
targetTags[] |
防火墙规则的目标标记。 |
targetServiceAccounts[] |
防火墙规则的目标服务帐号。 |
RouteInfo
仅用于显示。与 Compute Engine 路由关联的元数据。
JSON 表示法 | |
---|---|
{ "routeType": enum ( |
字段 | |
---|---|
routeType |
路由类型。 |
nextHopType |
下一个跃点的类型。 |
displayName |
Compute Engine 路由的名称。 |
uri |
Compute Engine 路由的 URI。来自 Cloud Router 的动态路由没有 URI。从 Google Cloud VPC 到本地网络的通告路由也没有 URI。 |
destIpRange |
路由的目标 IP 范围。 |
nextHop |
路由的下一个跃点。 |
networkUri |
Compute Engine 网络的 URI。 |
priority |
路由的优先级。 |
instanceTags[] |
路由的实例标记。 |
RouteType
路由类型:
ROUTE_TYPE_UNSPECIFIED
未指定类型。默认值。
SUBNET
路由是系统自动创建的子网路由。
STATIC
用户创建的静态路由,包括指向互联网的默认路由。
DYNAMIC
在 BGP 对等体之间交换的动态路由。
PEERING_SUBNET
从对等互连网络接收到的子网路由。
PEERING_STATIC
从对等互连网络接收的静态路由。
PEERING_DYNAMIC
从对等互连网络接收的动态路由。
枚举 | |
---|---|
ROUTE_TYPE_UNSPECIFIED |
未指定类型。默认值。 |
SUBNET |
路由是系统自动创建的子网路由。 |
STATIC |
用户创建的静态路由,包括指向互联网的默认路由。 |
DYNAMIC |
在 BGP 对等体之间交换的动态路由。 |
PEERING_SUBNET |
从对等互连网络接收到的子网路由。 |
PEERING_STATIC |
从对等互连网络接收的静态路由。 |
PEERING_DYNAMIC |
从对等互连网络接收的动态路由。 |
NextHopType
下一个跃点的类型:
NEXT_HOP_TYPE_UNSPECIFIED
未指定类型。默认值。
NEXT_HOP_IP
下一个跃点是 IP 地址。
NEXT_HOP_INSTANCE
下一个跃点是 Compute Engine 实例。
NEXT_HOP_NETWORK
下一个跃点是 VPC 网络网关。
NEXT_HOP_PEERING
下一个跃点是对等互连 VPC。
NEXT_HOP_INTERCONNECT
下一个跃点是互连。
NEXT_HOP_VPN_TUNNEL
下一个跃点是 VPN 隧道。
NEXT_HOP_VPN_GATEWAY
下一个跃点是 VPN 网关。仅当通过 VPN 跟踪从本地到 GCP 的连接时,才会发生这种情况。该分析会模拟通过 VPN 隧道从本地网络离开的数据包,并到达 Cloud VPN 网关。
NEXT_HOP_INTERNET_GATEWAY
下一个跃点是互联网网关。
NEXT_HOP_BLACKHOLE
下一个跃点是黑洞;也就是说,下一个跃点不存在或未运行。
枚举 | |
---|---|
NEXT_HOP_TYPE_UNSPECIFIED |
未指定类型。默认值。 |
NEXT_HOP_IP |
下一个跃点是 IP 地址。 |
NEXT_HOP_INSTANCE |
下一个跃点是 Compute Engine 实例。 |
NEXT_HOP_NETWORK |
下一个跃点是 VPC 网络网关。 |
NEXT_HOP_PEERING |
下一个跃点是对等互连 VPC。 |
NEXT_HOP_INTERCONNECT |
下一个跃点是互连。 |
NEXT_HOP_VPN_TUNNEL |
下一个跃点是 VPN 隧道。 |
NEXT_HOP_VPN_GATEWAY |
下一个跃点是 VPN 网关。仅当通过 VPN 跟踪从本地网络到 GCP 的连接时,才会发生这种情况。该分析会模拟通过 VPN 隧道从本地网络离开的数据包,并到达 Cloud VPN 网关。 |
NEXT_HOP_INTERNET_GATEWAY |
下一个跃点是互联网网关。 |
NEXT_HOP_BLACKHOLE |
下一个跃点是黑洞;也就是说,下一个跃点不存在或未运行。 |
ForwardingRuleInfo
仅用于显示。与 Compute Engine 转发规则关联的元数据。
JSON 表示法 | |
---|---|
{ "displayName": string, "uri": string, "matchedProtocol": string, "matchedPortRange": string, "vip": string, "target": string, "networkUri": string } |
字段 | |
---|---|
displayName |
Compute Engine 转发规则的名称。 |
uri |
Compute Engine 转发规则的 URI。 |
matchedProtocol |
在转发规则中定义的与测试匹配的协议。 |
matchedPortRange |
在转发规则中定义的与测试匹配的端口范围。 |
vip |
转发规则的 VIP。 |
target |
转发规则的目标类型。 |
networkUri |
网络 URI。仅对内部负载平衡器有效。 |
VpnGatewayInfo
仅用于显示。与 Compute Engine VPN 网关关联的元数据。
JSON 表示法 | |
---|---|
{ "displayName": string, "uri": string, "networkUri": string, "ipAddress": string, "vpnTunnelUri": string, "region": string } |
字段 | |
---|---|
displayName |
VPN 网关的名称。 |
uri |
VPN 网关的 URI。 |
networkUri |
配置了 VPN 网关的 Compute Engine 网络的 URI。 |
ipAddress |
VPN 网关的 IP 地址。 |
vpnTunnelUri |
与该 VPN 网关关联的 VPN 隧道。一个 VPN 网关上可能配置了多个 VPN 隧道,并且仅显示与测试相关的那个。 |
region |
配置了此 VPN 网关的 GCP 区域的名称。 |
VpnTunnelInfo
仅用于显示。与 Compute Engine VPN 隧道关联的元数据。
JSON 表示法 | |
---|---|
{
"displayName": string,
"uri": string,
"sourceGateway": string,
"remoteGateway": string,
"remoteGatewayIp": string,
"sourceGatewayIp": string,
"networkUri": string,
"region": string,
"routingType": enum ( |
字段 | |
---|---|
displayName |
VPN 隧道的名称。 |
uri |
VPN 隧道的 URI。 |
sourceGateway |
隧道本地端 VPN 网关的 URI。 |
remoteGateway |
隧道远程端 VPN 网关的 URI。 |
remoteGatewayIp |
远程 VPN 网关的 IP 地址。 |
sourceGatewayIp |
本地 VPN 网关的 IP 地址。 |
networkUri |
配置了 VPN 隧道的 Compute Engine 网络的 URI。 |
region |
配置了此 VPN 隧道的 GCP 区域的名称。 |
routingType |
路由政策的类型。 |
RoutingType
VPN 路由政策的类型。如需了解详情,请参阅网络和隧道路由。
ROUTING_TYPE_UNSPECIFIED
未指定类型。默认值。
ROUTE_BASED
基于路由的 VPN。
POLICY_BASED
基于政策的路由。
DYNAMIC
动态 (BGP) 路由。
枚举 | |
---|---|
ROUTING_TYPE_UNSPECIFIED |
未指定类型。默认值。 |
ROUTE_BASED |
基于路由的 VPN。 |
POLICY_BASED |
基于政策的路由。 |
DYNAMIC |
动态 (BGP) 路由。 |
DeliverInfo
最终状态“递送”和相关资源的详细信息。
JSON 表示法 | |
---|---|
{
"target": enum ( |
字段 | |
---|---|
target |
数据包递送到的目标类型。 |
resourceUri |
数据包递送到的资源的 URI。 |
Target
递送目标类型:
TARGET_UNSPECIFIED
未指定目标。
INSTANCE
目标是 Compute Engine 实例。
INTERNET
目标是互联网。
GOOGLE_API
目标是 Google API。
枚举 | |
---|---|
TARGET_UNSPECIFIED |
未指定目标。 |
INSTANCE |
目标是 Compute Engine 实例。 |
INTERNET |
目标是互联网。 |
GOOGLE_API |
目标是 Google API。 |
ForwardInfo
最终状态“转发”和相关资源的详细信息。
JSON 表示法 | |
---|---|
{
"target": enum ( |
字段 | |
---|---|
target |
该数据包转发到的目标类型。 |
resourceUri |
数据包转发到的资源的 URI。 |
Target
转发目标类型。
TARGET_UNSPECIFIED
未指定目标。
PEERING_VPC
已转发到 VPC 对等互连网络。
VPN_GATEWAY
已转发到 Cloud VPN 网关。
INTERCONNECT
已转发到 Cloud Interconnect 连接。
GKE_MASTER
已转发到 Google Kubernetes Engine 容器集群主实例。
IMPORTED_CUSTOM_ROUTE_NEXT_HOP
已转发到从对等互连 VPC 导入的自定义路由的下一个跃点。
枚举 | |
---|---|
TARGET_UNSPECIFIED |
未指定目标。 |
PEERING_VPC |
已转发到 VPC 对等互连网络。 |
VPN_GATEWAY |
已转发到 Cloud VPN 网关。 |
INTERCONNECT |
已转发到 Cloud Interconnect 连接。 |
GKE_MASTER |
已转发到 Google Kubernetes Engine 容器集群主实例。 |
IMPORTED_CUSTOM_ROUTE_NEXT_HOP |
已转发到从对等互连 VPC 导入的自定义路由的下一个跃点。 |
AbortInfo
最终状态“中止”和相关资源的详细信息。
JSON 表示法 | |
---|---|
{
"cause": enum ( |
字段 | |
---|---|
cause |
导致分析中止的原因。 |
resourceUri |
导致中止的资源的 URI。 |
Cause
中止原因类型:
CAUSE_UNSPECIFIED
原因不明。
UNKNOWN_NETWORK
由于未知网络而被中止。由于用户无权访问宿主项目的网络配置(包括防火墙规则和路由),因此无法进行可达性分析。当项目是服务项目并且要跟踪的端点在宿主项目的网络中时,会发生这种情况。
UNKNOWN_IP
已中止操作,因为 IP 地址未知。
UNKNOWN_PROJECT
已中止操作,因为无法从测试输入中获得任何项目信息。
PERMISSION_DENIED
已中止操作,因为用户缺乏访问运行测试所需的全部或部分网络配置的权限。
NO_SOURCE_LOCATION
已中止操作,因为无法通过输入测试请求提取到任何有效的源端点。
INVALID_ARGUMENT
已中止操作,因为测试中指定的来源和/或目标端点无效。端点无效的可能原因包括:IP 地址格式错误;实例或网络 URI 不存在;IP 地址不在指定的网络 URI 范围内;以及实例不拥有指定网络中的网络接口。
NO_EXTERNAL_IP
已中止操作,因为流量是从公共 IP 发送到没有外部 IP 的实例的。
UNINTENDED_DESTINATION
已中止操作,因为没有跟踪记录与输入测试请求中指定的目标信息匹配。
TRACE_TOO_LONG
已中止操作,因为跟踪记录中步骤数超出特定上限,这可能是由路由循环所致。
枚举 | |
---|---|
CAUSE_UNSPECIFIED |
原因不明。 |
UNKNOWN_NETWORK |
由于未知网络而被中止。由于用户无权访问宿主项目的网络配置(包括防火墙规则和路由),因此无法进行可达性分析。当项目是服务项目并且要跟踪的端点在宿主项目的网络中时,会发生这种情况。 |
UNKNOWN_IP |
已中止操作,因为 IP 地址未知。 |
UNKNOWN_PROJECT |
已中止操作,因为无法从测试输入中获得任何项目信息。 |
PERMISSION_DENIED |
已中止操作,因为用户缺乏访问运行测试所需的全部或部分网络配置的权限。 |
NO_SOURCE_LOCATION |
已中止操作,因为无法通过输入测试请求提取到任何有效的源端点。 |
INVALID_ARGUMENT |
已中止操作,因为测试中指定的来源和/或目标端点无效。端点无效的可能原因包括:IP 地址格式错误;实例或网络 URI 不存在;IP 地址不在指定的网络 URI 范围内;以及实例不拥有指定网络中的网络接口。 |
NO_EXTERNAL_IP |
已中止操作,因为流量是从公共 IP 发送到没有外部 IP 的实例的。 |
UNINTENDED_DESTINATION |
已中止操作,因为没有跟踪记录与输入测试请求中指定的目标信息匹配。 |
TRACE_TOO_LONG |
已中止操作,因为跟踪记录中步骤数超出特定上限,这可能是由路由循环所致。 |
DropInfo
最终状态“丢弃”和相关资源的详细信息。
JSON 表示法 | |
---|---|
{
"cause": enum ( |
字段 | |
---|---|
cause |
导致数据包被丢弃的原因。 |
resourceUri |
导致丢弃的资源的 URI。 |
Cause
丢弃原因类型:
CAUSE_UNSPECIFIED
原因不明。
UNKNOWN_EXTERNAL_ADDRESS
目标外部地址无法解析为已知目标。如果该地址用在 GCP 项目中,请提供项目 ID 作为测试输入。
FOREIGN_IP_DISALLOWED
如果出现以下情况,Compute Engine 实例只能发送或接收具有外部 IP 的数据包
ip_forward
已启用。
FIREWALL_RULE
因为防火墙规则而被丢弃,除非因为连接跟踪之故获得允许。
NO_ROUTE
因为没有路由而被丢弃。
ROUTE_BLACKHOLE
因路由无效而被丢弃。路由的下一个跃点是黑洞。
ROUTE_WRONG_NETWORK
数据包意外发送至错误的网络。示例:您跟踪了从 VM1:Network1 到 VM2:Network2 的数据包,但在 Network1 中配置的路由会将发往 VM2 的 IP 地址的数据包发送到 Network3。
PRIVATE_TRAFFIC_TO_INTERNET
目标地址为内部地址的数据包被发送至互联网网关。
PRIVATE_GOOGLE_ACCESS_DISALLOWED
只分配了内部 IP 的实例想要访问 Google API 及服务,但专用 Google 访问通道并未启用。
NO_EXTERNAL_ADDRESS
只分配了内部 IP 的实例想要访问外部主机,但子网中并未启用 Cloud NAT,除非虚拟机上的特殊配置允许此连接。如需了解详情,请参见虚拟机实例的特殊配置。
UNKNOWN_INTERNAL_ADDRESS
目标内部地址无法解析为已知目标。如果这是共享 VPC 场景,请验证是否提供了服务项目 ID 作为测试输入。否则,请验证项目中是否使用了 IP 地址。
FORWARDING_RULE_MISMATCH
转发规则的协议和端口与数据包标头不一致。
FORWARDING_RULE_NO_INSTANCES
转发规则没有配置后端。
FIREWALL_BLOCKING_LOAD_BALANCER_BACKEND_HEALTH_CHECK
防火墙会阻止对后端的运行状况检查探测,并导致后端无法用于来自负载平衡器的流量。如需了解详情,请参阅[运行状况检查防火墙规则](/load-balancing/docs/ health-checks#firewall_rules)。
INSTANCE_NOT_RUNNING
从非运行状态的 Compute Engine 实例发送或发送给该实例的数据包。
TRAFFIC_TYPE_BLOCKED
流量类型被阻止,用户无法配置防火墙规则来启用它。如需了解详情,请参阅[始终禁止的流量](/vpc/docs/firewalls# blockedtraffic)。
GKE_MASTER_UNAUTHORIZED_ACCESS
未经授权,无法访问 GKE 主节点的端点。如需了解详情,请参阅[访问集群端点](/kubernetes-engine/docs/how-to/ private-clusters#access_to_the_cluster_endpoints)。
枚举 | |
---|---|
CAUSE_UNSPECIFIED |
原因不明。 |
UNKNOWN_EXTERNAL_ADDRESS |
目标外部地址无法解析为已知目标。 |
FOREIGN_IP_DISALLOWED |
Compute Engine 实例只能发送或接收具有外部 IP 的数据包
已启用。 |
FIREWALL_RULE |
因为防火墙规则而被丢弃,除非因为连接跟踪之故获得允许。 |
NO_ROUTE |
因为没有路由而被丢弃。 |
ROUTE_BLACKHOLE |
因路由无效而被丢弃。路由的下一个跃点是黑洞。 |
ROUTE_WRONG_NETWORK |
数据包意外发送至错误的网络。示例:用户跟踪了从 VM1:Network1 到 VM2:Network2 的数据包,但在 Network1 中配置的路由会将发往 VM2 的 IP 地址的数据包发送到 Network3。 |
PRIVATE_TRAFFIC_TO_INTERNET |
目标地址为内部地址的数据包被发送至互联网网关。 |
PRIVATE_GOOGLE_ACCESS_DISALLOWED |
只分配了内部 IP 的实例想要访问 Google API 及服务,但专用 Google 访问通道并未启用。 |
NO_EXTERNAL_ADDRESS |
只分配了内部 IP 的实例想要访问外部主机,但子网中并未启用 Cloud NAT,除非虚拟机上的特殊配置允许此连接。如需了解详情,请参见虚拟机实例的特殊配置。 |
UNKNOWN_INTERNAL_ADDRESS |
目标内部地址无法解析为已知目标。 |
FORWARDING_RULE_MISMATCH |
转发规则的协议和端口与数据包标头不一致。 |
FORWARDING_RULE_NO_INSTANCES |
转发规则没有配置后端。 |
FIREWALL_BLOCKING_LOAD_BALANCER_BACKEND_HEALTH_CHECK |
防火墙会阻止对后端的运行状况检查探测,并导致后端无法用于来自负载平衡器的流量。如需了解详情,请参阅[运行状况检查防火墙规则](/load-balancing/docs/ health-checks#firewall_rules)。 |
INSTANCE_NOT_RUNNING |
从非运行状态的 Compute Engine 实例发送或发送给该实例的数据包。 |
TRAFFIC_TYPE_BLOCKED |
流量类型被阻止,用户无法配置防火墙规则来启用它。如需了解详情,请参阅[始终禁止的流量](/vpc/docs/firewalls# blockedtraffic)。 |
GKE_MASTER_UNAUTHORIZED_ACCESS |
未获得对 GKE 主实例端点的访问权限。如需了解详情,请参阅[访问集群端点](/kubernetes-engine/docs/how-to/ private-clusters#access_to_the_cluster_endpoints)。 |
LoadBalancerInfo
仅用于显示。与负载平衡器关联的元数据。
JSON 表示法 | |
---|---|
{ "loadBalancerType": enum ( |
字段 | |
---|---|
loadBalancerType |
负载平衡器的类型。 |
healthCheckUri |
针对负载平衡器的运行状况检查的 URI。 |
backends[] |
负载平衡器后端的信息。 |
backendType |
负载平衡器的后端配置类型。 |
backendUri |
后端配置 URI。 |
LoadBalancerType
负载平衡器的类型定义:
LOAD_BALANCER_TYPE_UNSPECIFIED
类型未指定。
INTERNAL_TCP_UDP
内部 TCP/UDP 负载平衡器。
NETWORK_TCP_UDP
网络 TCP/UDP 负载平衡器。
HTTP_PROXY
HTTP(S) 代理负载平衡器。
TCP_PROXY
TCP 代理负载平衡器。
SSL_PROXY
SSL 代理负载平衡器。
枚举 | |
---|---|
LOAD_BALANCER_TYPE_UNSPECIFIED |
类型未指定。 |
INTERNAL_TCP_UDP |
内部 TCP/UDP 负载平衡器。 |
NETWORK_TCP_UDP |
网络 TCP/UDP 负载平衡器。 |
HTTP_PROXY |
HTTP(S) 代理负载平衡器。 |
TCP_PROXY |
TCP 代理负载平衡器。 |
SSL_PROXY |
SSL 代理负载平衡器。 |
LoadBalancerBackend
仅用于显示。与特定负载平衡器后端关联的元数据。
JSON 表示法 | |
---|---|
{
"displayName": string,
"uri": string,
"healthCheckFirewallState": enum ( |
字段 | |
---|---|
displayName |
Compute Engine 实例或网络端点的名称。 |
uri |
Compute Engine 实例或网络端点的 URI。 |
healthCheckFirewallState |
运行状况检查防火墙配置的状态。 |
healthCheckAllowingFirewallRules[] |
允许从运行状况检查 IP 范围进行探测的防火墙规则 URI 的列表。 |
healthCheckBlockingFirewallRules[] |
禁止从运行状况检查 IP 范围进行探测的防火墙规则 URI 的列表。 |
HealthCheckFirewallState
运行状况检查防火墙配置的状态:
HEALTH_CHECK_FIREWALL_STATE_UNSPECIFIED
状态未指定。如果未填充,则为默认状态。
CONFIGURED
已配置防火墙规则,以允许对后端进行运行状况检查探测。
MISCONFIGURED
已配置防火墙规则,以允许部分运行状况检查范围或禁止所有运行状况检查范围。如果从拒绝的 IP 范围发送运行状况检查探测,则对后端的运行状况检查将失败。然后,后端将被标记为不正常,并且不会接收发送到负载平衡器的流量。
枚举 | |
---|---|
HEALTH_CHECK_FIREWALL_STATE_UNSPECIFIED |
状态未指定。如果未填充,则为默认状态。 |
CONFIGURED |
已配置防火墙规则,以允许对后端进行运行状况检查探测。 |
MISCONFIGURED |
已配置防火墙规则,以允许部分运行状况检查范围或禁止所有运行状况检查范围。如果从拒绝的 IP 范围发送运行状况检查探测,则对后端的运行状况检查将失败。然后,后端将被标记为不正常,并且不会接收发送到负载平衡器的流量。 |
BackendType
负载平衡器后端配置的类型定义:
BACKEND_TYPE_UNSPECIFIED
类型未指定。
BACKEND_SERVICE
后端服务作为负载平衡器的后端。
TARGET_POOL
目标池作为负载平衡器的后端。
枚举 | |
---|---|
BACKEND_TYPE_UNSPECIFIED |
类型未指定。 |
BACKEND_SERVICE |
后端服务作为负载平衡器的后端。 |
TARGET_POOL |
目标池作为负载平衡器的后端。 |
NetworkInfo
仅用于显示。与 Compute Engine 网络关联的元数据。
JSON 表示法 | |
---|---|
{ "displayName": string, "uri": string, "matchedIpRange": string } |
字段 | |
---|---|
displayName |
Compute Engine 网络的名称。 |
uri |
Compute Engine 网络的 URI。 |
matchedIpRange |
与测试匹配的 IP 范围。 |
方法 |
|
---|---|
|
创建一个新的连接测试。 |
|
删除特定的 ConnectivityTest 。 |
|
详细了解特定连接测试。 |
|
获取资源的访问权限控制政策。 |
|
列出项目拥有的所有连接测试。 |
|
更新现有 ConnectivityTest 的配置。 |
|
重新运行现有的 ConnectivityTest 。 |
|
针对指定资源设置访问权限控制政策。 |
|
返回调用者对指定资源拥有的权限。 |