REST Resource: projects.locations.global.connectivityTests

资源:ConnectivityTest

用于网络可达性分析的连接测试。

JSON 表示法
{
  "name": string,
  "description": string,
  "source": {
    object (Endpoint)
  },
  "destination": {
    object (Endpoint)
  },
  "protocol": string,
  "relatedProjects": [
    string
  ],
  "displayName": string,
  "labels": {
    string: string,
    ...
  },
  "createTime": string,
  "updateTime": string,
  "reachabilityDetails": {
    object (ReachabilityDetails)
  },
  "probingDetails": {
    object (ProbingDetails)
  },
  "bypassFirewallChecks": boolean
}
字段
name

string

标识符。资源的唯一名称,格式为:projects/{projectId}/locations/global/connectivityTests/{test}

description

string

用户提供的连接测试说明。最多 512 个字符。

source

object (Endpoint)

必需。连接测试的来源规范。

您可以使用来源 IP 地址、虚拟机实例或 Compute Engine 网络的组合来唯一标识来源位置。

示例:如果来源 IP 地址是 Google Cloud Virtual Private Cloud (VPC) 网络中的内部 IP 地址,那么您还必须指定 VPC 网络。否则,请指定虚拟机实例,该实例已包含其内部 IP 地址和 VPC 网络信息。

如果测试的来源位于本地网络内,则您必须提供目标 VPC 网络。

如果来源端点是具有多个网络接口的 Compute Engine 虚拟机实例,则该实例本身不足以标识此端点。因此,您还必须指定来源 IP 地址或 VPC 网络。

即使来源位置不明确,也会进行可达性分析。但是,测试结果可能包含您不打算测试的端点。

destination

object (Endpoint)

必需。连接测试的目标规范。

您可以结合使用目标 IP 地址、Compute Engine 虚拟机实例或 VPC 网络来唯一标识目标位置。

即使目标 IP 地址不是唯一的,来源 IP 位置也是唯一的。通常,分析可以根据路由信息推断目标端点。

如果您指定的目标是虚拟机实例,并且该实例具有多个网络接口,则您还必须指定目标 IP 地址或 VPC 网络以标识目标接口。

即使目标位置不明确,也会进行可达性分析。但是,结果可能包含您不打算测试的端点。

protocol

string

测试的 IP 协议。如果未提供,则假定为“TCP”。

relatedProjects[]

string

与可达性分析可能相关的其他项目。这适用于测试可能跨越项目边界的情景。

displayName

string

仅供输出。连接测试的显示名称。

labels

map (key: string, value: string)

用于表示用户提供的元数据的资源标签。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

createTime

string (Timestamp format)

仅供输出。测试的创建时间。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

仅限输出。测试配置的更新时间。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

reachabilityDetails

object (ReachabilityDetails)

仅限输出。最近一次运行该测试的可达性详情。在创建新测试,更新现有测试或触发现有测试的一次性重新运行时,系统将更新该详情。

probingDetails

object (ProbingDetails)

仅限输出。此测试在最近一次运行中的探测详细信息,仅适用于适用的测试。在创建新测试,更新现有测试或触发现有测试的一次性重新运行时,系统将更新该详情。

bypassFirewallChecks

boolean

测试是否应跳过防火墙检查。如果未提供,我们会假定为 false。

端点

连接测试的来源或目标。

JSON 表示法
{
  "ipAddress": string,
  "port": integer,
  "instance": string,
  "forwardingRule": string,
  "gkeMasterCluster": string,
  "cloudSqlInstance": string,
  "redisInstance": string,
  "redisCluster": string,
  "cloudFunction": {
    object (CloudFunctionEndpoint)
  },
  "appEngineVersion": {
    object (AppEngineVersionEndpoint)
  },
  "cloudRunRevision": {
    object (CloudRunRevisionEndpoint)
  },
  "network": string,
  "networkType": enum (NetworkType),
  "projectId": string,
  "forwardingRuleTarget": enum (ForwardingRuleTarget),
  "loadBalancerId": string,
  "loadBalancerType": enum (LoadBalancerType)
}
字段
ipAddress

string

端点的 IP 地址,可以是外部或内部 IP。

port

integer

端点的 IP 协议端口。仅在协议为 TCP 或 UDP 时适用。

instance

string

Compute Engine 实例 URI。

forwardingRule

string

转发规则及其对应的 IP 地址构成 Google Cloud 负载均衡器的前端配置。转发规则还用于协议转发、Private Service Connect 和其他网络服务,以在控制平面中提供转发信息。格式:projects/{project}/global/forwardingRules/{id} 或 projects/{project}/regions/{region}/forwardingRules/{id}

gkeMasterCluster

string

Google Kubernetes Engine 主服务器的集群 URI。

cloudSqlInstance

string

Cloud SQL 实例 URI。

redisInstance

string

Redis 实例 URI。

redisCluster

string

一个 Redis 集群 URI。

cloudFunction

object (CloudFunctionEndpoint)

Cloud Functions 函数

appEngineVersion

object (AppEngineVersionEndpoint)

App Engine 服务版本

cloudRunRevision

object (CloudRunRevisionEndpoint)

Cloud Run 修订版本

network

string

Compute Engine 网络 URI。

networkType

enum (NetworkType)

端点所在的网络的类型。仅适用于来源端点,因为可以从来源推断出目标网络类型。

projectId

string

端点所在的项目 ID。如果提供了虚拟机实例或网络 URI,则可以从 URI 派生项目 ID。以下是必须提供项目 ID 的两种情况:1. 仅指定了 IP 地址,并且该 IP 地址在 Google Cloud 项目中。2. 使用共享 VPC 时,您提供的 IP 地址来自服务项目。在这种情况下,将在宿主项目中定义 IP 地址所在的网络。

forwardingRuleTarget

enum (ForwardingRuleTarget)

仅限输出。指定转发规则的目标类型。

loadBalancerId

string

仅限输出。转发规则指向的负载均衡器的 ID。对于与负载均衡器无关的转发规则,此字段为空。

loadBalancerType

enum (LoadBalancerType)

仅限输出。转发规则指向的负载均衡器的类型。

ForwardingRuleTarget

转发规则目标的类型。

枚举
FORWARDING_RULE_TARGET_UNSPECIFIED 转发规则目标未知。
INSTANCE 用于协议转发的 Compute Engine 实例。
LOAD_BALANCER 负载均衡器。具体类型可在 loadBalancerType 中找到。
VPN_GATEWAY 传统 Cloud VPN 网关。
PSC 转发规则是 Private Service Connect 端点。

LoadBalancerType

负载均衡器的类型。如需了解详情,请参阅 Google Cloud 负载平衡器摘要

枚举
LOAD_BALANCER_TYPE_UNSPECIFIED 转发规则指向的目标不是负载均衡器,或者负载均衡器类型不明。
HTTPS_ADVANCED_LOAD_BALANCER 全球外部 HTTP(S) 负载均衡器。
HTTPS_LOAD_BALANCER 全球外部 HTTP(S) 负载均衡器(经典版)
REGIONAL_HTTPS_LOAD_BALANCER 区域级外部 HTTP(S) 负载均衡器。
INTERNAL_HTTPS_LOAD_BALANCER 内部 HTTP(S) 负载均衡器。
SSL_PROXY_LOAD_BALANCER 外部 SSL 代理负载均衡器。
TCP_PROXY_LOAD_BALANCER 外部 TCP 代理负载均衡器。
INTERNAL_TCP_PROXY_LOAD_BALANCER 内部区域级 TCP 代理负载均衡器。
NETWORK_LOAD_BALANCER 外部 TCP/UDP 网络负载均衡器。
LEGACY_NETWORK_LOAD_BALANCER 基于目标池的外部 TCP/UDP 网络负载均衡器。
TCP_UDP_INTERNAL_LOAD_BALANCER 内部 TCP/UDP 负载平衡器。

CloudFunctionEndpoint

Cloud Function 属性的封装容器。

JSON 表示法
{
  "uri": string
}
字段
uri

string

Cloud Functions 函数名称。

AppEngineVersionEndpoint

App Engine 服务版本属性的封装容器。

JSON 表示法
{
  "uri": string
}
字段
uri

string

App Engine 服务版本名称。

CloudRunRevisionEndpoint

Cloud Run 修订版本属性的封装容器。

JSON 表示法
{
  "uri": string
}
字段
uri

string

Cloud Run 修订版本 URI。格式为:projects/{project}/locations/{location}/revisions/{revision}

NetworkType

端点网络的类型定义。使用以下选项之一:

枚举
NETWORK_TYPE_UNSPECIFIED 如果未指定,则为默认类型。
GCP_NETWORK Google Cloud 中托管的网络。如需接收更多详细输出,请指定来源或目标网络的 URI。
NON_GCP_NETWORK 在 Google Cloud 之外托管的网络。这可以是本地网络,也可以是由其他云服务商托管的网络。

ReachabilityDetails

上次运行测试的配置分析结果。

JSON 表示法
{
  "result": enum (Result),
  "verifyTime": string,
  "error": {
    object (Status)
  },
  "traces": [
    {
      object (Trace)
    }
  ]
}
字段
result

enum (Result)

测试配置分析的总体结果。

verifyTime

string (Timestamp format)

配置分析的时间。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

error

object (Status)

可达性分析失败或取消可达性分析的详细信息。

traces[]

object (Trace)

如果一项测试在网络中具有多个可能的路径(例如当目标端点是具有多个后端的负载平衡器时),则结果可能包含跟踪记录列表。

结果

测试配置分析的总体结果。

枚举
RESULT_UNSPECIFIED 未指定任何结果。
REACHABLE

可能的情形包括:

  • 配置分析确定来自该来源的数据包预计会到达目的地。
  • 分析未完成,因为用户缺少对跟踪记录中某些资源的权限。但是,在用户的权限变得不足时,到目前为止已成功跟踪。
UNREACHABLE 来自来源的数据包在到达目的地之前可能会被丢弃。
AMBIGUOUS 来源端点和目标端点无法唯一标识网络中的测试位置,并且可达性结果包含多条跟踪记录。对于某些轨迹,系统可能会传送数据包,对于其他轨迹,则不会。如果返回路径本身应为可达,但转发路径的配置分析结果为模糊,则此结果也会分配给返回路径的配置分析。
UNDETERMINED

配置分析未完成。可能的原因包括:

  • 发生了权限错误 - 例如,用户可能没有对测试中指定的所有资源的读取权限。
  • 发生内部错误。
  • 分析器收到无效或不受支持的参数,或无法识别已知端点。

Trace

Trace 表示一个模拟的数据包转发路径。

  • 每条跟踪记录包含多个有序的步骤。
  • 每个步骤都处于具有关联配置的特定状态。
  • 状态分为最终状态或非最终状态。
  • 每个最终状态都有一个关联的原因。
  • 每个跟踪记录必须以最终状态(最后一步)结束。
  |---------------------Trace----------------------|
  Step1(State) Step2(State) ---  StepN(State(final))
JSON 表示法
{
  "endpointInfo": {
    object (EndpointInfo)
  },
  "steps": [
    {
      object (Step)
    }
  ],
  "forwardTraceId": integer
}
字段
endpointInfo

object (EndpointInfo)

从用户请求指定的源端点和目标端点定义派生,并由数据平面模型验证。如果存在从不同来源位置开始的多个跟踪记录,则跟踪记录之间的 endpointInfo 可能会有所不同。

steps[]

object (Step)

测试的跟踪记录包含从初始状态到最终状态(已递送、已丢弃、已转发或已中止)的多个步骤。

这些步骤按模拟网络状态机内的处理顺序排序。保留这些步骤的顺序,并避免对它们进行重新排列或排序,这一点至关重要。

forwardTraceId

integer

轨迹的 ID。对于正向轨迹,每个轨迹的此 ID 都是唯一的。对于返回跟踪记录,它与关联的正向跟踪记录的 ID 匹配。单个正向轨迹可以与零个、一个或多个返回轨迹相关联。

EndpointInfo

仅用于显示。测试端点的规范。EndpointInfo 派生自来源端点和目标端点,并由后端数据平面模型验证。

JSON 表示法
{
  "sourceIp": string,
  "destinationIp": string,
  "protocol": string,
  "sourcePort": integer,
  "destinationPort": integer,
  "sourceNetworkUri": string,
  "destinationNetworkUri": string,
  "sourceAgentUri": string
}
字段
sourceIp

string

来源 IP 地址。

destinationIp

string

目标 IP 地址。

protocol

string

字符串格式的 IP 协议,例如:“TCP”、“UDP”、“ICMP”。

sourcePort

integer

来源端口。仅在协议为 TCP 或 UDP 时有效。

destinationPort

integer

目标端口。仅在协议为 TCP 或 UDP 时有效。

sourceNetworkUri

string

此数据包源自的网络的 URI。

destinationNetworkUri

string

此数据包发送到的网络的 URI。

sourceAgentUri

string

此数据包源自的来源遥测代理的 URI。

步骤

模拟转发路径由多个步骤组成。每个步骤都有一个明确定义的状态和关联的配置。

JSON 表示法
{
  "description": string,
  "state": enum (State),
  "causesDrop": boolean,
  "projectId": string,

  // Union field step_info can be only one of the following:
  "instance": {
    object (InstanceInfo)
  },
  "firewall": {
    object (FirewallInfo)
  },
  "route": {
    object (RouteInfo)
  },
  "endpoint": {
    object (EndpointInfo)
  },
  "googleService": {
    object (GoogleServiceInfo)
  },
  "forwardingRule": {
    object (ForwardingRuleInfo)
  },
  "vpnGateway": {
    object (VpnGatewayInfo)
  },
  "vpnTunnel": {
    object (VpnTunnelInfo)
  },
  "vpcConnector": {
    object (VpcConnectorInfo)
  },
  "deliver": {
    object (DeliverInfo)
  },
  "forward": {
    object (ForwardInfo)
  },
  "abort": {
    object (AbortInfo)
  },
  "drop": {
    object (DropInfo)
  },
  "loadBalancer": {
    object (LoadBalancerInfo)
  },
  "network": {
    object (NetworkInfo)
  },
  "gkeMaster": {
    object (GKEMasterInfo)
  },
  "cloudSqlInstance": {
    object (CloudSQLInstanceInfo)
  },
  "cloudFunction": {
    object (CloudFunctionInfo)
  },
  "appEngineVersion": {
    object (AppEngineVersionInfo)
  },
  "cloudRunRevision": {
    object (CloudRunRevisionInfo)
  },
  "nat": {
    object (NatInfo)
  },
  "proxyConnection": {
    object (ProxyConnectionInfo)
  },
  "loadBalancerBackendInfo": {
    object (LoadBalancerBackendInfo)
  },
  "storageBucket": {
    object (StorageBucketInfo)
  },
  "serverlessNeg": {
    object (ServerlessNegInfo)
  }
  // End of list of possible types for union field step_info.
}
字段
description

string

步骤说明。通常,这是状态的摘要。

state

enum (State)

每个步骤都处于某种预定义状态。

causesDrop

boolean

这是通向最终状态“丢弃”的步骤。

projectId

string

包含此步骤正在验证的配置的项目 ID。

联合字段 step_info。与每个步骤关联的配置或元数据。根据查看者的许可过滤配置。如果查看者无权在此步骤中查看相应配置,则对于非最终状态,将填充特殊状态 (VIEWER_PERMISSION_MISSING);对于最终状态,将清除该配置。step_info 只能是下列其中一项:
instance

object (InstanceInfo)

显示 Compute Engine 实例的信息。

firewall

object (FirewallInfo)

显示 Compute Engine 防火墙规则的信息。

route

object (RouteInfo)

显示 Compute Engine 路由的信息。

endpoint

object (EndpointInfo)

显示正在分析的来源和目标的信息。处于中间状态的端点信息可能与初始输入有所不同,因为它可能会被 NAT 或连接代理之类的状态所修改。

googleService

object (GoogleServiceInfo)

显示某项 Google 服务的信息

forwardingRule

object (ForwardingRuleInfo)

显示 Compute Engine 转发规则的信息。

vpnGateway

object (VpnGatewayInfo)

显示 Compute Engine VPN 网关的信息。

vpnTunnel

object (VpnTunnelInfo)

显示 Compute Engine VPN 隧道的信息。

vpcConnector

object (VpcConnectorInfo)

显示 VPC 连接器的信息。

deliver

object (DeliverInfo)

显示最终状态“递送”和原因的信息。

forward

object (ForwardInfo)

显示最终状态“forward”的信息和原因。

abort

object (AbortInfo)

显示最终状态“中止”和原因的信息。

drop

object (DropInfo)

显示最终状态“丢弃”和原因的信息。

loadBalancer
(deprecated)

object (LoadBalancerInfo)

显示负载平衡器的信息。已废弃,取而代之的是 loadBalancerBackendInfo 字段,不会在新测试中使用。

network

object (NetworkInfo)

显示 Google Cloud 网络的信息。

gkeMaster

object (GKEMasterInfo)

显示 Google Kubernetes Engine 集群主实例的信息。

cloudSqlInstance

object (CloudSQLInstanceInfo)

显示 Cloud SQL 实例的信息。

cloudFunction

object (CloudFunctionInfo)

显示 Cloud Functions 函数的信息。

appEngineVersion

object (AppEngineVersionInfo)

显示 App Engine 服务版本的信息。

cloudRunRevision

object (CloudRunRevisionInfo)

显示 Cloud Run 修订版本的信息。

nat

object (NatInfo)

显示 NAT 的信息。

proxyConnection

object (ProxyConnectionInfo)

显示 ProxyConnection 的信息。

loadBalancerBackendInfo

object (LoadBalancerBackendInfo)

显示特定负载均衡器后端的信息。

storageBucket

object (StorageBucketInfo)

显示存储分区的信息。仅用于返回跟踪记录。

serverlessNeg

object (ServerlessNegInfo)

显示无服务器网络端点组后端的信息。仅用于返回轨迹。

网络状态机中定义的状态类型。数据包跟踪记录中的每个步骤都处于特定状态。

枚举
STATE_UNSPECIFIED 未指定状态。
START_FROM_INSTANCE 初始状态:来自 Compute Engine 实例的数据包。使用起始实例信息填充 InstanceInfo。
START_FROM_INTERNET 初始状态:来自互联网的数据包。已填充端点信息。
START_FROM_GOOGLE_SERVICE 初始状态:数据包源自 Google 服务。系统会填充 googleService 信息。
START_FROM_PRIVATE_NETWORK 初始状态:来自具有内部来源 IP 的 VPC 或本地网络的数据包。如果来源是对用户可见的 VPC 网络,则将使用网络详细信息填充 NetworkInfo。
START_FROM_GKE_MASTER 初始状态:数据包源自 Google Kubernetes Engine 集群主服务器。GKEMasterInfo 会使用启动实例信息进行填充。
START_FROM_CLOUD_SQL_INSTANCE 初始状态:来自 Cloud SQL 实例的数据包。CloudSQLInstanceInfo 填充了起始实例信息。
START_FROM_CLOUD_FUNCTION 初始状态:来自 Cloud Functions 函数的数据包。使用起始函数信息填充 CloudFunctionInfo。
START_FROM_APP_ENGINE_VERSION 初始状态:来自 App Engine 服务版本的数据包。使用起始版本信息填充 AppEngineVersionInfo。
START_FROM_CLOUD_RUN_REVISION 初始状态:数据包源自 Cloud Run 修订版本。CloudRunRevisionInfo 使用起始修订版本信息填充。
START_FROM_STORAGE_BUCKET 初始状态:来自 Storage 存储分区的数据包。仅用于返回跟踪记录。系统会填充 storageBucket 信息。
START_FROM_PSC_PUBLISHED_SERVICE 初始状态:数据包来自使用 Private Service Connect 的已发布服务。仅用于返回轨迹。
START_FROM_SERVERLESS_NEG 初始状态:来自无服务器网络端点组后端的数据包。仅用于返回跟踪记录。已填充无服务器 Neg 信息。
APPLY_INGRESS_FIREWALL_RULE 配置检查状态:验证入站防火墙规则。
APPLY_EGRESS_FIREWALL_RULE 配置检查状态:验证出站防火墙规则。
APPLY_ROUTE 配置检查状态:验证路由。
APPLY_FORWARDING_RULE 配置检查状态:匹配转发规则。
ANALYZE_LOAD_BALANCER_BACKEND 配置检查状态:验证负载均衡器后端配置。
SPOOFING_APPROVED 配置检查状态:数据包在外部 IP 地址下发送或接收并被允许。
ARRIVE_AT_INSTANCE 转发状态:到达 Compute Engine 实例。
ARRIVE_AT_INTERNAL_LOAD_BALANCER

转发状态:即将到达 Compute Engine 内部负载均衡器。已废弃,取而代之的是 ANALYZE_LOAD_BALANCER_BACKEND 状态,不会在新测试中使用。

ARRIVE_AT_EXTERNAL_LOAD_BALANCER

转发状态:到达 Compute Engine 外部负载均衡器。已废弃,取而代之的是 ANALYZE_LOAD_BALANCER_BACKEND 状态,不会在新测试中使用。

ARRIVE_AT_VPN_GATEWAY 转发状态:到达 Cloud VPN 网关。
ARRIVE_AT_VPN_TUNNEL 转发状态:到达 Cloud VPN 隧道。
ARRIVE_AT_VPC_CONNECTOR 转发状态:即将到达 VPC 连接器。
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,
  "pscNetworkAttachmentUri": string
}
字段
displayName

string

Compute Engine 实例的名称。

uri

string

Compute Engine 实例的 URI。

interface

string

Compute Engine 实例的网络接口的名称。

networkUri

string

Compute Engine 网络的 URI。

internalIp

string

网络接口的内部 IP 地址。

externalIp

string

网络接口的外部 IP 地址。

networkTags[]

string

在实例上配置的网络标记。

serviceAccount
(deprecated)

string

为实例授权的服务账号。

pscNetworkAttachmentUri

string

NIC 所连接 PSC 网络连接的 URI(如果相关)。

FirewallInfo

仅用于显示。与 VPC 防火墙规则、隐含 VPC 防火墙规则或防火墙政策规则关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "direction": string,
  "action": string,
  "priority": integer,
  "networkUri": string,
  "targetTags": [
    string
  ],
  "targetServiceAccounts": [
    string
  ],
  "policy": string,
  "policyUri": string,
  "firewallRuleType": enum (FirewallRuleType)
}
字段
displayName

string

防火墙规则的显示名。对于防火墙政策规则,此字段可能为空。

uri

string

防火墙规则的 URI。此字段不适用于隐式 VPC 防火墙规则。

direction

string

可能的值:INGRESS、EGRESS

action

string

可能的值:ALLOW、DENY、APPLY_SECURITY_PROFILE_GROUP

priority

integer

防火墙规则的优先级。

networkUri

string

防火墙规则关联的 VPC 网络的 URI。此字段不适用于分层防火墙政策规则。

targetTags[]

string

VPC 防火墙规则定义的目标标记。此字段不适用于防火墙政策规则。

targetServiceAccounts[]

string

防火墙规则指定的目标服务账号。

policy

string

与此规则关联的防火墙政策的名称。此字段不适用于 VPC 防火墙规则和隐式 VPC 防火墙规则。

policyUri

string

与此规则关联的防火墙政策的 URI。此字段不适用于 VPC 防火墙规则和隐含的 VPC 防火墙规则。

firewallRuleType

enum (FirewallRuleType)

防火墙规则的类型。

FirewallRuleType

防火墙规则的类型。

枚举
FIREWALL_RULE_TYPE_UNSPECIFIED 未指定类型。
HIERARCHICAL_FIREWALL_POLICY_RULE 分层防火墙政策规则。如需了解详情,请参阅分层防火墙政策概览
VPC_FIREWALL_RULE VPC 防火墙规则。如需了解详情,请参阅 VPC 防火墙规则概览
IMPLIED_VPC_FIREWALL_RULE 隐式 VPC 防火墙规则。如需了解详情,请参阅隐式规则
SERVERLESS_VPC_ACCESS_MANAGED_FIREWALL_RULE 由无服务器 VPC 访问通道管理的隐式防火墙规则,用于允许入站流量。它们不会显示在 Google Cloud 控制台中。如需了解详情,请参阅 VPC 连接器的隐式规则
NETWORK_FIREWALL_POLICY_RULE 全局网络防火墙政策规则。如需了解详情,请参阅网络防火墙政策
NETWORK_REGIONAL_FIREWALL_POLICY_RULE 区域级网络防火墙政策规则。如需了解详情,请参阅区域级网络防火墙政策
UNSUPPORTED_FIREWALL_POLICY_RULE 防火墙政策规则包含 Connectivity Tests 尚不支持的特性。如果可能匹配此类规则,则会跳过防火墙分析。请参阅不支持的配置列表
TRACKING_STATE 请求流量通过允许防火墙规则时创建的响应流量的跟踪状态。如需了解详情,请参阅防火墙规则规范

RouteInfo

仅用于显示。与 Compute Engine 路由关联的元数据。

JSON 表示法
{
  "routeType": enum (RouteType),
  "nextHopType": enum (NextHopType),
  "routeScope": enum (RouteScope),
  "displayName": string,
  "uri": string,
  "destIpRange": string,
  "nextHop": string,
  "networkUri": string,
  "priority": integer,
  "instanceTags": [
    string
  ],
  "srcIpRange": string,
  "destPortRanges": [
    string
  ],
  "srcPortRanges": [
    string
  ],
  "protocols": [
    string
  ],
  "nccHubUri": string,
  "nccSpokeUri": string
}
字段
routeType

enum (RouteType)

路由类型。

nextHopType

enum (NextHopType)

下一个跃点的类型。

routeScope

enum (RouteScope)

指示路由适用的国家/地区。

displayName

string

路由的名称。

uri

string

路线的 URI。动态路由、对等互连静态路由和对等互连动态路由没有 URI。从 Google Cloud VPC 到本地网络的通告路由也没有 URI。

destIpRange

string

路由的目标 IP 范围。

nextHop

string

路由的下一个跃点。

networkUri

string

Compute Engine 网络的 URI。仅限影音平台路线。

priority

integer

路由的优先级。

instanceTags[]

string

路由的实例标记。

srcIpRange

string

路由的来源 IP 地址范围。仅限基于政策的路由。

destPortRanges[]

string

路由的目标端口范围。仅限基于政策的路由。

srcPortRanges[]

string

路线的来源端口范围。仅限基于政策的路由。

protocols[]

string

路由的协议。仅限基于政策的路由。

nccHubUri

string

NCC Hub 的 URI。仅限 NCC_HUB 路线。

nccSpokeUri

string

NCC Spoke 的 URI。仅限 NCC_HUB 路线。

RouteType

路由类型:

枚举
ROUTE_TYPE_UNSPECIFIED 未指定类型。默认值。
SUBNET 路由是系统自动创建的子网路由。
STATIC 用户创建的静态路由,包括通向互联网的默认路由。
DYNAMIC 在 BGP 对等体之间交换的动态路由。
PEERING_SUBNET 从对等互连网络接收到的子网路由。
PEERING_STATIC 从对等互连网络接收的静态路由。
PEERING_DYNAMIC 从对等互连网络接收的动态路由。
POLICY_BASED 基于政策的路由。

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 跟踪从本地网络到 Google Cloud 的连接时,才会发生这种情况。该分析会模拟通过 VPN 隧道从本地网络离开的数据包,并到达 Cloud VPN 网关。
NEXT_HOP_INTERNET_GATEWAY 下一个跃点是互联网网关。
NEXT_HOP_BLACKHOLE 下一个跃点是黑洞;也就是说,下一个跃点不存在或未运行。
NEXT_HOP_ILB 下一个跃点是内部负载平衡器的转发规则。
NEXT_HOP_ROUTER_APPLIANCE 下一个跃点是路由器设备实例
NEXT_HOP_NCC_HUB 下一个跃点是 NCC hub。

RouteScope

指明路由适用的范围。

枚举
ROUTE_SCOPE_UNSPECIFIED 未指定范围。默认值。
NETWORK 路由适用于网络中的数据包。
NCC_HUB 路由适用于使用 NCC Hub 路由表的数据包。

GoogleServiceInfo

仅用于显示。有关向 VPC 网络发送数据包的 Google 服务的详细信息。虽然来源 IP 可能是可公开路由的地址,但某些 Google 服务会使用 Google 生产基础架构内的特殊路由来访问 Compute Engine 实例。https://cloud.google.com/vpc/docs/routes#special_return_paths

JSON 表示法
{
  "sourceIp": string,
  "googleServiceType": enum (GoogleServiceType)
}
字段
sourceIp

string

来源 IP 地址。

googleServiceType

enum (GoogleServiceType)

识别到的 Google 服务类型。

GoogleServiceType

识别到的 Google 服务类型。

枚举
GOOGLE_SERVICE_TYPE_UNSPECIFIED 未指定的 Google 服务。
IAP 身份感知代理。https://cloud.google.com/iap/docs/using-tcp-forwarding
GFE_PROXY_OR_HEALTH_CHECK_PROBER 共享 IP 地址范围的两项服务之一:* 负载均衡器代理 * 集中式健康检查探测器 https://cloud.google.com/load-balancing/docs/firewall-rules
CLOUD_DNS Cloud DNS 与使用专用路由的转发目标或备用域名服务器之间的连接。https://cloud.google.com/dns/docs/zones/forwarding-zones#firewall-rules https://cloud.google.com/dns/docs/policies#firewall-rules
GOOGLE_API private.googleapis.com 和 restricted.googleapis.com
GOOGLE_API_PSC 通过 Private Service Connect 使用 Google API。https://cloud.google.com/vpc/docs/configure-private-service-connect-apis
GOOGLE_API_VPC_SC 通过 VPC Service Controls 使用 Google API。https://cloud.google.com/vpc/docs/configure-private-service-connect-apis

ForwardingRuleInfo

仅用于显示。与 Compute Engine 转发规则关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "matchedProtocol": string,
  "matchedPortRange": string,
  "vip": string,
  "target": string,
  "networkUri": string,
  "region": string,
  "loadBalancerName": string,
  "pscServiceAttachmentUri": string,
  "pscGoogleApiTarget": string
}
字段
displayName

string

转发规则的名称。

uri

string

转发规则的 URI。

matchedProtocol

string

在转发规则中定义的与数据包匹配的协议。

matchedPortRange

string

在转发规则中定义的与数据包匹配的端口范围。

vip

string

转发规则的 VIP。

target

string

转发规则的目标类型。

networkUri

string

网络 URI。

region

string

转发规则的区域。仅为区域级转发规则设置。

loadBalancerName

string

转发规则所属的负载均衡器的名称。对于与负载均衡器无关的转发规则(例如 PSC 转发规则),请留空。

pscServiceAttachmentUri

string

此转发规则定位到的 PSC 服务连接的 URI(如果适用)。

pscGoogleApiTarget

string

此转发规则的 PSC Google API 目标(如果适用)。

VpnGatewayInfo

仅用于显示。与 Compute Engine VPN 网关关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "networkUri": string,
  "ipAddress": string,
  "vpnTunnelUri": string,
  "region": string
}
字段
displayName

string

VPN 网关的名称。

uri

string

VPN 网关的 URI。

networkUri

string

配置了 VPN 网关的 Compute Engine 网络的 URI。

ipAddress

string

VPN 网关的 IP 地址。

vpnTunnelUri

string

与该 VPN 网关关联的 VPN 隧道。一个 VPN 网关上可能配置了多个 VPN 隧道,并且仅显示与测试相关的那个。

region

string

配置了此 VPN 网关的 Google Cloud 区域的名称。

VpnTunnelInfo

仅用于显示。与 Compute Engine VPN 隧道关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "sourceGateway": string,
  "remoteGateway": string,
  "remoteGatewayIp": string,
  "sourceGatewayIp": string,
  "networkUri": string,
  "region": string,
  "routingType": enum (RoutingType)
}
字段
displayName

string

VPN 隧道的名称。

uri

string

VPN 隧道的 URI。

sourceGateway

string

隧道本地端 VPN 网关的 URI。

remoteGateway

string

隧道远程端 VPN 网关的 URI。

remoteGatewayIp

string

远程 VPN 网关的 IP 地址。

sourceGatewayIp

string

本地 VPN 网关的 IP 地址。

networkUri

string

配置了 VPN 隧道的 Compute Engine 网络的 URI。

region

string

配置了此 VPN 隧道的 Google Cloud 区域的名称。

routingType

enum (RoutingType)

路由政策的类型。

RoutingType

VPN 路由政策的类型。如需了解详情,请参阅网络和隧道路由

枚举
ROUTING_TYPE_UNSPECIFIED 未指定类型。默认值。
ROUTE_BASED 基于路由的 VPN。
POLICY_BASED 基于政策的路由。
DYNAMIC 动态 (BGP) 路由。

VpcConnectorInfo

仅用于显示。与 VPC 连接器关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "location": string
}
字段
displayName

string

VPC 连接器的名称。

uri

string

VPC 连接器的 URI。

location

string

部署 VPC 连接器的位置。

DeliverInfo

最终状态“递送”和相关资源的详细信息。

JSON 表示法
{
  "target": enum (Target),
  "resourceUri": string,
  "ipAddress": string,
  "storageBucket": string,
  "pscGoogleApiTarget": string
}
字段
target

enum (Target)

数据包递送到的目标类型。

resourceUri

string

数据包递送到的资源的 URI。

ipAddress

string

目标的 IP 地址(如果适用)。

storageBucket

string

要将数据包传送到的 Cloud Storage 存储桶的名称(如果适用)。

pscGoogleApiTarget

string

数据包所传送到的 PSC Google API 目标(如果适用)。

目标

递送目标类型:

枚举
TARGET_UNSPECIFIED 未指定目标。
INSTANCE 目标是 Compute Engine 实例。
INTERNET 目标是互联网。
GOOGLE_API 目标是 Google API。
GKE_MASTER 目标是 Google Kubernetes Engine 集群主服务器。
CLOUD_SQL_INSTANCE 目标是 Cloud SQL 实例。
PSC_PUBLISHED_SERVICE 目标是使用 Private Service Connect 的已发布服务。
PSC_GOOGLE_API 目标是使用 Private Service Connect 的 Google API。
PSC_VPC_SC 目标是使用 Private Service Connect 的 VPC-SC。
SERVERLESS_NEG 目标是无服务器网络端点组。
STORAGE_BUCKET 目标是 Cloud Storage 存储桶。
PRIVATE_NETWORK 目标是专用网络。仅用于返回轨迹。
CLOUD_FUNCTION 目标是 Cloud Functions 函数。仅用于返回跟踪记录。
APP_ENGINE_VERSION 目标是 App Engine 服务版本。仅用于返回轨迹。
CLOUD_RUN_REVISION 目标是 Cloud Run 修订版本。仅用于返回轨迹。
GOOGLE_MANAGED_SERVICE Target 是一项由 Google 代管式服务。仅用于返回跟踪记录。

ForwardInfo

最终状态“转发”和相关资源的详细信息。

JSON 表示法
{
  "target": enum (Target),
  "resourceUri": string,
  "ipAddress": string
}
字段
target

enum (Target)

该数据包转发到的目标类型。

resourceUri

string

数据包转发到的资源的 URI。

ipAddress

string

目标的 IP 地址(如果适用)。

目标

转发目标类型。

枚举
TARGET_UNSPECIFIED 未指定目标。
PEERING_VPC 已转发到 VPC 对等互连网络。
VPN_GATEWAY 已转发到 Cloud VPN 网关。
INTERCONNECT 已转发到 Cloud Interconnect 连接。
GKE_MASTER

已转发到 Google Kubernetes Engine 容器集群主实例。

IMPORTED_CUSTOM_ROUTE_NEXT_HOP 已转发到从对等互连 VPC 导入的自定义路由的下一个跃点。
CLOUD_SQL_INSTANCE

转发到 Cloud SQL 实例。

ANOTHER_PROJECT 已转发到其他项目中的 VPC 网络。
NCC_HUB 已转发到 NCC 中心。
ROUTER_APPLIANCE 转发到路由器设备。

AbortInfo

最终状态“中止”和相关资源的详细信息。

JSON 表示法
{
  "cause": enum (Cause),
  "resourceUri": string,
  "ipAddress": string,
  "projectsMissingPermission": [
    string
  ]
}
字段
cause

enum (Cause)

导致分析中止的原因。

resourceUri

string

导致中止的资源的 URI。

ipAddress

string

导致中止的 IP 地址。

projectsMissingPermission[]

string

用户在请求中指定但缺少访问权限的项目 ID 的列表。在这种情况下,分析会因 PERMISSION_DENIED 原因而中止。

原因

中止原因类型:

枚举
CAUSE_UNSPECIFIED 原因不明。
UNKNOWN_NETWORK

由于未知网络而被中止。已废弃,在新测试中不使用。

UNKNOWN_PROJECT

已中止操作,因为无法从测试输入中获得任何项目信息。已废弃,在新测试中不使用。

NO_EXTERNAL_IP

已取消,因为流量是从公共 IP 发送到没有外部 IP 的实例。已弃用,不在新测试中使用。

UNINTENDED_DESTINATION

已中止操作,因为没有跟踪记录与输入测试请求中指定的目标信息匹配。已废弃,在新测试中不使用。

SOURCE_ENDPOINT_NOT_FOUND

因找不到来源端点而中止。已弃用,不在新测试中使用。

MISMATCHED_SOURCE_NETWORK

因来源网络与来源端点不匹配而中止。已废弃,在新测试中不使用。

DESTINATION_ENDPOINT_NOT_FOUND

因找不到目标端点而中止。已废弃,在新测试中不使用。

MISMATCHED_DESTINATION_NETWORK

因目标网络与目标端点不匹配而中止。已废弃,在新测试中不使用。

UNKNOWN_IP 已取消,因为找不到任何具有数据包目标 IP 地址的端点。
GOOGLE_MANAGED_SERVICE_UNKNOWN_IP 已取消,因为在 Google 管理的项目中找不到任何具有数据包目标 IP 的端点。
SOURCE_IP_ADDRESS_NOT_IN_SOURCE_NETWORK 已取消,因为来源 IP 地址不属于来源 VPC 网络的任何子网。
PERMISSION_DENIED 已中止,用户无权访问运行测试所需的全部或部分网络配置。
PERMISSION_DENIED_NO_CLOUD_NAT_CONFIGS 已中止,因为用户无权访问运行测试所需的 Cloud NAT 配置。
PERMISSION_DENIED_NO_NEG_ENDPOINT_CONFIGS 已中止,因为用户无权访问运行测试所需的网络端点组端点配置。
NO_SOURCE_LOCATION 已取消,因为无法通过输入测试请求得出任何有效的来源或目标端点。
INVALID_ARGUMENT 已取消,因为请求中指定的来源或目标端点无效。下面列举了一些示例:- 请求可能包含格式错误的资源 URI、项目 ID 或 IP 地址。- 请求可能包含不一致的信息(例如,请求可能同时包含实例和网络,但实例在该网络中可能没有 NIC)。
TRACE_TOO_LONG 由于跟踪记录中的步骤数超过了特定限制,分析被取消。这可能是由路由循环引起的。
INTERNAL_ERROR 因内部服务器错误而中止。
UNSUPPORTED 已中止,因为测试场景不受支持。
MISMATCHED_IP_VERSION 已取消,因为源资源和目标资源没有共同的 IP 版本。
GKE_KONNECTIVITY_PROXY_UNSUPPORTED 已取消,因为控制平面与源集群的节点之间的连接由该节点启动,并由 Konnectivity 代理管理。
RESOURCE_CONFIG_NOT_FOUND 已中止,原因是缺少所需的资源配置。
VM_INSTANCE_CONFIG_NOT_FOUND 已取消,因为缺少预期的虚拟机实例配置。
NETWORK_CONFIG_NOT_FOUND 已取消,因为缺少预期的网络配置。
FIREWALL_CONFIG_NOT_FOUND 已取消,因为缺少预期的防火墙配置。
ROUTE_CONFIG_NOT_FOUND 已取消,因为缺少预期的路由配置。
GOOGLE_MANAGED_SERVICE_AMBIGUOUS_PSC_ENDPOINT 已取消,因为 Google 管理的服务的 PSC 端点选择不明确(多个 PSC 端点符合测试输入)。
SOURCE_PSC_CLOUD_SQL_UNSUPPORTED 已取消,因为不支持使用基于 PSC 的 Cloud SQL 实例作为来源的测试。
SOURCE_FORWARDING_RULE_UNSUPPORTED 已取消,因为不支持使用转发规则作为来源的测试。
NON_ROUTABLE_IP_ADDRESS 已取消,因为有一个端点是不可路由的 IP 地址(环回地址、链路本地地址等)。
UNKNOWN_ISSUE_IN_GOOGLE_MANAGED_PROJECT 已中止,因为 Google 管理的项目中发生了未知问题。
UNSUPPORTED_GOOGLE_MANAGED_PROJECT_CONFIG 已中止,因为 Google 管理的项目的配置不受支持。

DropInfo

最终状态“丢弃”和相关资源的详细信息。

JSON 表示法
{
  "cause": enum (Cause),
  "resourceUri": string,
  "sourceIp": string,
  "destinationIp": string,
  "region": string
}
字段
cause

enum (Cause)

导致数据包被丢弃的原因。

resourceUri

string

导致丢弃的资源的 URI。

sourceIp

string

丢弃的数据包的来源 IP 地址(如果相关)。

destinationIp

string

丢弃的数据包的目标 IP 地址(如果适用)。

region

string

丢弃数据包的区域(如果适用)。

原因

丢弃原因类型:

枚举
CAUSE_UNSPECIFIED 原因不明。
UNKNOWN_EXTERNAL_ADDRESS 目标外部地址无法解析为已知目标。如果该地址用在 Google Cloud 项目中,请提供项目 ID 作为测试输入。
FOREIGN_IP_DISALLOWED 只有在启用了 ip_forward 的情况下,Compute Engine 实例才能发送或接收具有外部 IP 地址的数据包。
FIREWALL_RULE 因为防火墙规则而被丢弃,除非因为连接跟踪之故获得允许。
NO_ROUTE 因为没有匹配的路由而被丢弃。
ROUTE_BLACKHOLE 因路由无效而被丢弃。路由的下一个跃点是黑洞。
ROUTE_WRONG_NETWORK 数据包意外发送至错误的网络。示例:您跟踪从 VM1:Network1 到 VM2:Network2 的数据包,但是,Network1 中配置的路由会将发往 VM2 的 IP 地址的数据包发送到 Network3。
ROUTE_NEXT_HOP_IP_ADDRESS_NOT_RESOLVED 路由的下一个跃点 IP 地址无法解析为 GCP 资源。
ROUTE_NEXT_HOP_RESOURCE_NOT_FOUND 找不到路由的下一个跃点资源。
ROUTE_NEXT_HOP_INSTANCE_WRONG_NETWORK 路由的下一个跃点实例在路由的网络中没有 NIC。
ROUTE_NEXT_HOP_INSTANCE_NON_PRIMARY_IP 路由的下一个跃点 IP 地址不是下一个跃点实例的主 IP 地址。
ROUTE_NEXT_HOP_FORWARDING_RULE_IP_MISMATCH 路由的下一个跃点转发规则与下一个跃点 IP 地址不匹配。
ROUTE_NEXT_HOP_VPN_TUNNEL_NOT_ESTABLISHED 路由的下一个跃点 VPN 隧道已关闭(没有有效的 IKE SA)。
ROUTE_NEXT_HOP_FORWARDING_RULE_TYPE_INVALID 路由的下一个跃点转发规则类型无效(不是内部直通式负载均衡器的转发规则)。
NO_ROUTE_FROM_INTERNET_TO_PRIVATE_IPV6_ADDRESS 数据包从互联网发送到专用 IPv6 地址。
VPN_TUNNEL_LOCAL_SELECTOR_MISMATCH 数据包与基于政策的 VPN 隧道本地选择器不匹配。
VPN_TUNNEL_REMOTE_SELECTOR_MISMATCH 数据包与基于政策的 VPN 隧道远程选择器不匹配。
PRIVATE_TRAFFIC_TO_INTERNET 具有内部目标地址的数据包已发送到互联网网关。
PRIVATE_GOOGLE_ACCESS_DISALLOWED 仅具有内部 IP 地址的实例尝试访问 Google API 和服务,但子网中未启用专用 Google 访问通道。
PRIVATE_GOOGLE_ACCESS_VIA_VPN_TUNNEL_UNSUPPORTED 来源端点尝试通过 VPN 隧道连接到其他网络来访问 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 防火墙会阻止对后端的健康检查探测,并导致后端无法用于来自负载均衡器的流量。如需了解详情,请参阅健康检查防火墙规则
INSTANCE_NOT_RUNNING 从非运行状态的 Compute Engine 实例发送或发送给该实例的数据包。
GKE_CLUSTER_NOT_RUNNING 发自或发送到未处于运行状态的 GKE 集群的数据包。
CLOUD_SQL_INSTANCE_NOT_RUNNING 从非运行状态的 Cloud SQL 实例发送或发送给该实例的数据包。
TRAFFIC_TYPE_BLOCKED 流量类型被阻止,用户无法配置防火墙规则来启用它。如需了解详情,请参阅始终禁止的流量
GKE_MASTER_UNAUTHORIZED_ACCESS 未经授权,无法访问 Google Kubernetes Engine 集群主服务器的端点。如需了解详情,请参阅访问集群端点
CLOUD_SQL_INSTANCE_UNAUTHORIZED_ACCESS 未经授权,无法访问 Cloud SQL 实例端点。如需了解详情,请参阅使用授权网络进行授权
DROPPED_INSIDE_GKE_SERVICE 数据包被丢弃在 Google Kubernetes Engine 服务中。
DROPPED_INSIDE_CLOUD_SQL_SERVICE 数据包被丢弃在 Cloud SQL 服务中。
GOOGLE_MANAGED_SERVICE_NO_PEERING 数据包被丢弃,因为来源网络和 Google 代管式服务网络之间没有对等互连。
GOOGLE_MANAGED_SERVICE_NO_PSC_ENDPOINT 数据包被丢弃,因为 Google 代管式服务使用 Private Service Connect (PSC),但在项目中找不到 PSC 端点。
GKE_PSC_ENDPOINT_MISSING 由于 GKE 集群使用了 Private Service Connect (PSC),但在项目中找不到 PSC 端点,因此数据包被丢弃。
CLOUD_SQL_INSTANCE_NO_IP_ADDRESS 由于 Cloud SQL 实例既没有专用 IP 地址也没有公共 IP 地址,数据包被丢弃。
GKE_CONTROL_PLANE_REGION_MISMATCH 由于无法从与集群所在区域不同的区域访问 GKE 集群专用端点,数据包被丢弃。
PUBLIC_GKE_CONTROL_PLANE_TO_PRIVATE_DESTINATION 从公共 GKE 集群控制平面发送到专用 IP 地址的数据包。
GKE_CONTROL_PLANE_NO_ROUTE 由于没有从 GKE 集群控制平面到目标网络的路由,数据包被丢弃。
CLOUD_SQL_INSTANCE_NOT_CONFIGURED_FOR_EXTERNAL_TRAFFIC 不允许从 Cloud SQL 实例向外部 IP 地址发送数据包。Cloud SQL 实例未配置为向外部 IP 地址发送数据包。
PUBLIC_CLOUD_SQL_INSTANCE_TO_PRIVATE_DESTINATION 从只有公共 IP 地址的 Cloud SQL 实例发送到专用 IP 地址的数据包。
CLOUD_SQL_INSTANCE_NO_ROUTE 由于没有从 Cloud SQL 实例到目标网络的路由,数据包被丢弃。
CLOUD_SQL_CONNECTOR_REQUIRED 数据包被丢弃,因为 Cloud SQL 实例要求所有连接都使用 Cloud SQL 连接器,并以 Cloud SQL 代理端口 (3307) 为目标。
CLOUD_FUNCTION_NOT_ACTIVE 数据包可能因为 Cloud Functions 函数未处于活动状态而被丢弃。
VPC_CONNECTOR_NOT_SET 数据包可能因为未设置 VPC 连接器而被丢弃。
VPC_CONNECTOR_NOT_RUNNING 数据包可能因 VPC 连接器未处于运行状态而被丢弃。
VPC_CONNECTOR_SERVERLESS_TRAFFIC_BLOCKED 数据包可能因为不允许从无服务器服务到 VPC 连接器的流量而被丢弃。
VPC_CONNECTOR_HEALTH_CHECK_TRAFFIC_BLOCKED 由于不允许健康检查流量进入 VPC 连接器,数据包可能被丢弃。
FORWARDING_RULE_REGION_MISMATCH 数据包可能因为从其他区域发送到没有全球访问权限的区域转发而被丢弃。
PSC_CONNECTION_NOT_ACCEPTED Private Service Connect 端点属于未获准连接到服务的项目。
PSC_ENDPOINT_ACCESSED_FROM_PEERED_NETWORK 数据包已通过对等互连发送到 Private Service Connect 端点,但不受支持
PSC_NEG_PRODUCER_ENDPOINT_NO_GLOBAL_ACCESS 数据包已发送到 Private Service Connect 后端(网络端点组),但生产者 PSC 转发规则未启用全球访问权限。
PSC_NEG_PRODUCER_FORWARDING_RULE_MULTIPLE_PORTS 数据包会发送到 Private Service Connect 后端(网络端点组),但提供方 PSC 转发规则指定了多个端口。
CLOUD_SQL_PSC_NEG_UNSUPPORTED 数据包已发送到针对 Cloud SQL 服务连接的 Private Service Connect 后端(网络端点组),但不支持此配置。
NO_NAT_SUBNETS_FOR_PSC_SERVICE_ATTACHMENT 未为 PSC 服务连接定义任何 NAT 子网。
PSC_TRANSITIVITY_NOT_PROPAGATED PSC 端点通过 NCC 访问,但 PSC 传递性配置尚未传播。
HYBRID_NEG_NON_DYNAMIC_ROUTE_MATCHED 从混合 NEG 代理发送的数据包与非动态路由匹配,但不支持此类配置。
HYBRID_NEG_NON_LOCAL_DYNAMIC_ROUTE_MATCHED 从混合 NEG 代理发送的数据包与下一个跃点位于不同区域的动态路由匹配,但不支持此类配置。
CLOUD_RUN_REVISION_NOT_READY 从未准备好的 Cloud Run 修订版本发送的数据包。
DROPPED_INSIDE_PSC_SERVICE_PRODUCER 数据包在 Private Service Connect 服务提供方内部被丢弃了。
LOAD_BALANCER_HAS_NO_PROXY_SUBNET 数据包已发送到负载均衡器(需要代理专用子网,但未找到该子网)。
CLOUD_NAT_NO_ADDRESSES 发送到 Cloud NAT 的数据包没有有效的 NAT IP。
ROUTING_LOOP 数据包被卡在路由循环中。
DROPPED_INSIDE_GOOGLE_MANAGED_SERVICE 数据包因 Google 管理的服务中发生的未指定原因而被丢弃。仅用于返回跟踪记录。
LOAD_BALANCER_BACKEND_INVALID_NETWORK 由于负载均衡器后端实例在负载均衡器预期的网络中没有网络接口,数据包被丢弃。
BACKEND_SERVICE_NAMED_PORT_NOT_DEFINED 数据包因未在实例组级别定义名为端口的后端服务而被丢弃。
DESTINATION_IS_PRIVATE_NAT_IP_RANGE 数据包因目标 IP 范围属于 Private NAT IP 范围而被丢弃。

LoadBalancerInfo

仅用于显示。与负载平衡器关联的元数据。

JSON 表示法
{
  "loadBalancerType": enum (LoadBalancerType),
  "healthCheckUri": string,
  "backends": [
    {
      object (LoadBalancerBackend)
    }
  ],
  "backendType": enum (BackendType),
  "backendUri": string
}
字段
loadBalancerType

enum (LoadBalancerType)

负载平衡器的类型。

healthCheckUri
(deprecated)

string

针对负载均衡器的健康检查的 URI。已弃用且不再填充,因为不同的负载均衡器后端可能具有不同的健康检查。

backends[]

object (LoadBalancerBackend)

负载平衡器后端的信息。

backendType

enum (BackendType)

负载平衡器的后端配置类型。

backendUri

string

后端配置 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 代理负载平衡器。

LoadBalancerBackend

仅用于显示。与特定负载平衡器后端关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "healthCheckFirewallState": enum (HealthCheckFirewallState),
  "healthCheckAllowingFirewallRules": [
    string
  ],
  "healthCheckBlockingFirewallRules": [
    string
  ]
}
字段
displayName

string

Compute Engine 实例或网络端点的名称。

uri

string

Compute Engine 实例或网络端点的 URI。

healthCheckFirewallState

enum (HealthCheckFirewallState)

健康检查防火墙配置的状态。

healthCheckAllowingFirewallRules[]

string

允许从健康检查 IP 范围进行探测的防火墙规则 URI 的列表。

healthCheckBlockingFirewallRules[]

string

禁止从健康检查 IP 范围进行探测的防火墙规则 URI 的列表。

HealthCheckFirewallState

健康检查防火墙配置的状态:

枚举
HEALTH_CHECK_FIREWALL_STATE_UNSPECIFIED 状态未指定。如果未填充,则为默认状态。
CONFIGURED 已配置防火墙规则,以允许对后端进行健康检查探测。
MISCONFIGURED 已配置防火墙规则,以允许部分健康检查范围或禁止所有健康检查范围。如果从拒绝的 IP 范围发送健康检查探测,则对后端的健康检查将失败。然后,后端将被标记为不正常,并且不会接收发送到负载平衡器的流量。

BackendType

负载平衡器后端配置的类型定义:

枚举
BACKEND_TYPE_UNSPECIFIED 类型未指定。
BACKEND_SERVICE 后端服务作为负载平衡器的后端。
TARGET_POOL 目标池作为负载平衡器的后端。
TARGET_INSTANCE 将目标实例设为负载均衡器的后端。

NetworkInfo

仅用于显示。与 Compute Engine 网络关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "matchedIpRange": string
}
字段
displayName

string

Compute Engine 网络的名称。

uri

string

Compute Engine 网络的 URI。

matchedIpRange

string

与测试匹配的 IP 范围。

GKEMasterInfo

仅用于显示。与 Google Kubernetes Engine (GKE) 集群主实例关联的元数据。

JSON 表示法
{
  "clusterUri": string,
  "clusterNetworkUri": string,
  "internalIp": string,
  "externalIp": string
}
字段
clusterUri

string

GKE 集群的 URI。

clusterNetworkUri

string

GKE 集群网络的 URI。

internalIp

string

GKE 集群主服务器的内部 IP 地址。

externalIp

string

GKE 集群主服务器的外部 IP 地址。

CloudSQLInstanceInfo

仅用于显示。与 Cloud SQL 实例关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "networkUri": string,
  "internalIp": string,
  "externalIp": string,
  "region": string
}
字段
displayName

string

Cloud SQL 实例的名称。

uri

string

Cloud SQL 实例的 URI。

networkUri

string

Cloud SQL 实例网络的 URI,如果实例没有网络,则为空字符串。

internalIp

string

Cloud SQL 实例的内部 IP 地址。

externalIp

string

Cloud SQL 实例的外部 IP 地址。

region

string

Cloud SQL 实例运行的区域。

CloudFunctionInfo

仅用于显示。与 Cloud Functions 函数关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "location": string,
  "versionId": string
}
字段
displayName

string

Cloud Function 的名称。

uri

string

Cloud Functions 函数的 URI。

location

string

部署 Cloud Function 的位置。

versionId

string (int64 format)

最新成功部署的 Cloud Function 版本 ID。

AppEngineVersionInfo

仅用于显示。与 App Engine 版本关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "runtime": string,
  "environment": string
}
字段
displayName

string

App Engine 版本的名称。

uri

string

App Engine 版本的 URI。

runtime

string

App Engine 版本的运行时。

environment

string

版本的 App Engine 执行环境。

CloudRunRevisionInfo

仅用于显示。与 Cloud Run 修订版本关联的元数据。

JSON 表示法
{
  "displayName": string,
  "uri": string,
  "serviceName": string,
  "location": string,
  "serviceUri": string
}
字段
displayName

string

Cloud Run 修订版本的名称。

uri

string

Cloud Run 修订版本的 URI。

serviceName
(deprecated)

string

此修订版本所属的 Cloud Run 服务的 ID。从未设置,不会导出到 v1 协议和公共协议。请勿导出到 v1beta1 公共 proto。

location

string

此修订版本的部署位置。

serviceUri

string

此修订版本所属的 Cloud Run 服务的 URI。

NatInfo

仅用于显示。与 NAT 关联的元数据。

JSON 表示法
{
  "type": enum (Type),
  "protocol": string,
  "networkUri": string,
  "oldSourceIp": string,
  "newSourceIp": string,
  "oldDestinationIp": string,
  "newDestinationIp": string,
  "oldSourcePort": integer,
  "newSourcePort": integer,
  "oldDestinationPort": integer,
  "newDestinationPort": integer,
  "routerUri": string,
  "natGatewayName": string
}
字段
type

enum (Type)

NAT 的类型。

protocol

string

字符串格式的 IP 协议,例如:“TCP”、“UDP”、“ICMP”。

networkUri

string

进行 NAT 转换的网络的 URI。

oldSourceIp

string

进行 NAT 转换之前的来源 IP 地址。

newSourceIp

string

NAT 转换后的来源 IP 地址。

oldDestinationIp

string

完成 NAT 转换前的目标 IP 地址。

newDestinationIp

string

完成 NAT 转换后的目标 IP 地址。

oldSourcePort

integer

执行 NAT 转换之前的来源端口。仅在协议为 TCP 或 UDP 时有效。

newSourcePort

integer

NAT 转换后的来源端口。仅在协议为 TCP 或 UDP 时有效。

oldDestinationPort

integer

完成 NAT 转换前的目标端口。仅在协议为 TCP 或 UDP 时有效。

newDestinationPort

integer

完成 NAT 转换后的目标端口。仅在协议为 TCP 或 UDP 时有效。

routerUri

string

Cloud Router 路由器的 URI。仅在类型为 CLOUD_NAT 时有效。

natGatewayName

string

Cloud NAT 网关的名称。仅在类型为 CLOUD_NAT 时有效。

类型

NAT 的类型。

枚举
TYPE_UNSPECIFIED 类型未指定。
INTERNAL_TO_EXTERNAL 从 Compute Engine 实例的内部地址到外部地址。
EXTERNAL_TO_INTERNAL 从 Compute Engine 实例的外部地址到内部地址。
CLOUD_NAT Cloud NAT 网关。
PRIVATE_SERVICE_CONNECT Private Service Connect NAT。

ProxyConnectionInfo

仅用于显示。与 ProxyConnection 关联的元数据。

JSON 表示法
{
  "protocol": string,
  "oldSourceIp": string,
  "newSourceIp": string,
  "oldDestinationIp": string,
  "newDestinationIp": string,
  "oldSourcePort": integer,
  "newSourcePort": integer,
  "oldDestinationPort": integer,
  "newDestinationPort": integer,
  "subnetUri": string,
  "networkUri": string
}
字段
protocol

string

字符串格式的 IP 协议,例如:“TCP”、“UDP”、“ICMP”。

oldSourceIp

string

原始连接的来源 IP 地址。

newSourceIp

string

新连接的来源 IP 地址。

oldDestinationIp

string

原始连接的目标 IP 地址

newDestinationIp

string

新连接的目标 IP 地址。

oldSourcePort

integer

原始连接的来源端口。仅在协议为 TCP 或 UDP 时有效。

newSourcePort

integer

新连接的来源端口。仅在协议为 TCP 或 UDP 时有效。

oldDestinationPort

integer

原始连接的目标端口。仅在协议为 TCP 或 UDP 时有效。

newDestinationPort

integer

新连接的目标端口。仅在协议为 TCP 或 UDP 时有效。

subnetUri

string

代理子网的 URI。

networkUri

string

被代理连接的网络的 URI。

LoadBalancerBackendInfo

仅用于显示。与负载均衡器后端关联的元数据。

JSON 表示法
{
  "name": string,
  "instanceUri": string,
  "backendServiceUri": string,
  "instanceGroupUri": string,
  "networkEndpointGroupUri": string,
  "backendBucketUri": string,
  "pscServiceAttachmentUri": string,
  "pscGoogleApiTarget": string,
  "healthCheckUri": string,
  "healthCheckFirewallsConfigState": enum (HealthCheckFirewallsConfigState)
}
字段
name

string

后端的显示名。例如,它可以是实例组后端的实例名称,也可以是区域网络端点组后端的 IP 地址和端口。

instanceUri

string

后端实例的 URI(如果适用)。系统会为实例组后端和区域 NEG 后端填充此值。

backendServiceUri

string

此后端所属的后端服务的 URI(如果适用)。

instanceGroupUri

string

此后端所属的实例组的 URI(如果适用)。

networkEndpointGroupUri

string

此后端所属的网络端点组的 URI(如果适用)。

backendBucketUri

string

此后端目标的后端存储桶的 URI(如果适用)。

pscServiceAttachmentUri

string

此 PSC NEG 后端目标的 PSC 服务连接的 URI(如果适用)。

pscGoogleApiTarget

string

PSC Google API 目标,此 PSC NEG 后端的目标(如果适用)。

healthCheckUri

string

附加到此后端的健康检查的 URI(如果适用)。

healthCheckFirewallsConfigState

enum (HealthCheckFirewallsConfigState)

仅限输出。后端的健康检查防火墙配置状态。这是静态防火墙分析(用于验证是否允许从必需 IP 地址范围到后端的健康检查流量)的结果。即使配置了这些防火墙,后端可能仍处于不健康状态。如需了解详情,请参阅文档:https://cloud.google.com/load-balancing/docs/firewall-rules

HealthCheckFirewallsConfigState

健康检查防火墙配置状态枚举。

枚举
HEALTH_CHECK_FIREWALLS_CONFIG_STATE_UNSPECIFIED 未指定配置状态。这通常表示后端未附加任何健康检查,或者存在意外的配置错误,导致 Connectivity Tests 无法验证健康检查配置。
FIREWALLS_CONFIGURED 已配置允许健康检查流量从所有必需 IP 范围传入后端的防火墙规则(政策)。
FIREWALLS_PARTIALLY_CONFIGURED 防火墙规则(政策)仅允许来自部分所需 IP 地址范围的健康检查流量。
FIREWALLS_NOT_CONFIGURED 防火墙规则(政策)拒绝从所有必需 IP 范围传入后端的健康检查流量。
FIREWALLS_UNSUPPORTED 网络包含不受支持类型的防火墙规则,因此 Connectivity Tests 无法验证健康检查配置状态。如需查看不受支持的配置列表,请参阅相关文档:https://cloud.google.com/network-intelligence-center/docs/connectivity-tests/concepts/overview#unsupported-configs

StorageBucketInfo

仅用于显示。与存储桶关联的元数据。

JSON 表示法
{
  "bucket": string
}
字段
bucket

string

Cloud Storage 存储分区名称。

ServerlessNegInfo

仅用于显示。与无服务器网络端点组后端关联的元数据。

JSON 表示法
{
  "negUri": string
}
字段
negUri

string

无服务器网络端点组的 URI。

ProbingDetails

上次运行测试时有效探测的结果。

JSON 表示法
{
  "result": enum (ProbingResult),
  "verifyTime": string,
  "error": {
    object (Status)
  },
  "abortCause": enum (ProbingAbortCause),
  "sentProbeCount": integer,
  "successfulProbeCount": integer,
  "endpointInfo": {
    object (EndpointInfo)
  },
  "probingLatency": {
    object (LatencyDistribution)
  },
  "destinationEgressLocation": {
    object (EdgeLocation)
  }
}
字段
result

enum (ProbingResult)

主动探测的总体结果。

verifyTime

string (Timestamp format)

通过主动探测评估可达性的时间。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

error

object (Status)

有关内部失败或主动探测取消的详细信息。

abortCause

enum (ProbingAbortCause)

探测中止的原因。

sentProbeCount

integer

发送的探测次数。

successfulProbeCount

integer

到达目的地的探测次数。

endpointInfo

object (EndpointInfo)

来源端点和目标端点,根据测试输入得出,用于主动探测。

probingLatency

object (LatencyDistribution)

通过单向主动探测测量的延迟时间:从来源到目标端点。

destinationEgressLocation

object (EdgeLocation)

发往/源自互联网的数据包将出站/入站的 EdgeLocation。只有具有互联网目标/来源地址的连接性测试才会填充此字段。不得将此字段的缺失视为目标/来源属于 Google 广告联盟的标志。

ProbingResult

测试的总体探测结果。

枚举
PROBING_RESULT_UNSPECIFIED 未指定任何结果。
REACHABLE 至少 95% 的数据包到达了目的地。
UNREACHABLE 没有任何数据包到达目的地。
REACHABILITY_INCONSISTENT 不到 95% 的数据包到达了目的地。
UNDETERMINED 无法确定可达性。可能的原因是:*用户无权访问运行测试所需的部分网络资源。* 无法从请求中派生出有效的来源端点。* 发生内部错误。

ProbingAbortCause

中止原因类型。

枚举
PROBING_ABORT_CAUSE_UNSPECIFIED 未指定原因。
PERMISSION_DENIED 用户无权访问运行测试所需的部分网络资源。
NO_SOURCE_LOCATION 无法从该请求中获得有效的来源端点。

LatencyDistribution

描述测量的延迟时间分布。

JSON 表示法
{
  "latencyPercentiles": [
    {
      object (LatencyPercentile)
    }
  ]
}
字段
latencyPercentiles[]

object (LatencyPercentile)

代表性延迟时间百分位。

LatencyPercentile

延迟时间百分位数排名和值。

JSON 表示法
{
  "percent": integer,
  "latencyMicros": string
}
字段
percent

integer

此数据点所适用的样本的百分比。

latencyMicros

string (int64 format)

观察到的延迟时间的第 百分位数(以微秒为单位)。百分比/100 的样本的比例的延迟时间低于或等于此字段的值。

EdgeLocation

网络边缘位置的表示形式,请参阅 https://cloud.google.com/vpc/docs/edge-locations

JSON 表示法
{
  "metropolitanArea": string
}
字段
metropolitanArea

string

都市圈的名称。

方法

create

创建一个新的连接测试。

delete

删除特定的 ConnectivityTest

get

详细了解特定连接测试。

getIamPolicy

获取资源的访问权限控制政策。

list

列出项目拥有的所有连接测试。

patch

更新现有 ConnectivityTest 的配置。

rerun

重新运行现有的 ConnectivityTest

setIamPolicy

针对指定资源设置访问权限控制政策。

testIamPermissions

返回调用者对指定资源拥有的权限。