#[non_exhaustive]pub enum State {
Show 47 variants
Unspecified,
StartFromInstance,
StartFromInternet,
StartFromGoogleService,
StartFromPrivateNetwork,
StartFromGkeMaster,
StartFromCloudSqlInstance,
StartFromGkePod,
StartFromRedisInstance,
StartFromRedisCluster,
StartFromCloudFunction,
StartFromAppEngineVersion,
StartFromCloudRunRevision,
StartFromStorageBucket,
StartFromPscPublishedService,
StartFromServerlessNeg,
ApplyIngressFirewallRule,
ApplyEgressFirewallRule,
ApplyRoute,
ApplyForwardingRule,
AnalyzeLoadBalancerBackend,
SpoofingApproved,
ArriveAtInstance,
ArriveAtInternalLoadBalancer,
ArriveAtExternalLoadBalancer,
ArriveAtHybridSubnet,
ArriveAtVpnGateway,
ArriveAtVpnTunnel,
ArriveAtInterconnectAttachment,
ArriveAtVpcConnector,
ArriveAtGkePod,
DirectVpcEgressConnection,
ServerlessExternalConnection,
NgfwPacketInspection,
Nat,
SkipGkePodIpMasquerading,
SkipGkeIngressNetworkPolicy,
SkipGkeEgressNetworkPolicy,
ApplyIngressGkeNetworkPolicy,
ApplyEgressGkeNetworkPolicy,
ProxyConnection,
Deliver,
Drop,
Forward,
Abort,
ViewerPermissionMissing,
UnknownValue(UnknownValue),
}Expand description
Type of states that are defined in the network state machine. Each step in the packet trace is in a specific state.
§Working with unknown values
This enum is defined as #[non_exhaustive] because Google Cloud may add
additional enum variants at any time. Adding new variants is not considered
a breaking change. Applications should write their code in anticipation of:
- New values appearing in future releases of the client library, and
- New values received dynamically, without application changes.
Please consult the Working with enums section in the user guide for some guidelines.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Unspecified
Unspecified state.
StartFromInstance
Initial state: packet originating from a Compute Engine instance. An InstanceInfo is populated with starting instance information.
StartFromInternet
Initial state: packet originating from the internet. The endpoint information is populated.
StartFromGoogleService
Initial state: packet originating from a Google service. The google_service information is populated.
StartFromPrivateNetwork
Initial state: packet originating from a VPC or on-premises network with internal source IP. If the source is a VPC network visible to the user, a NetworkInfo is populated with details of the network.
StartFromGkeMaster
Initial state: packet originating from a Google Kubernetes Engine cluster master. A GKEMasterInfo is populated with starting instance information.
StartFromCloudSqlInstance
Initial state: packet originating from a Cloud SQL instance. A CloudSQLInstanceInfo is populated with starting instance information.
StartFromGkePod
Initial state: packet originating from a Google Kubernetes Engine Pod. A GkePodInfo is populated with starting Pod information.
StartFromRedisInstance
Initial state: packet originating from a Redis instance. A RedisInstanceInfo is populated with starting instance information.
StartFromRedisCluster
Initial state: packet originating from a Redis Cluster. A RedisClusterInfo is populated with starting Cluster information.
StartFromCloudFunction
Initial state: packet originating from a Cloud Function. A CloudFunctionInfo is populated with starting function information.
StartFromAppEngineVersion
Initial state: packet originating from an App Engine service version. An AppEngineVersionInfo is populated with starting version information.
StartFromCloudRunRevision
Initial state: packet originating from a Cloud Run revision. A CloudRunRevisionInfo is populated with starting revision information.
StartFromStorageBucket
Initial state: packet originating from a Storage Bucket. Used only for return traces. The storage_bucket information is populated.
StartFromPscPublishedService
Initial state: packet originating from a published service that uses Private Service Connect. Used only for return traces.
StartFromServerlessNeg
Initial state: packet originating from a serverless network endpoint group backend. Used only for return traces. The serverless_neg information is populated.
ApplyIngressFirewallRule
Config checking state: verify ingress firewall rule.
ApplyEgressFirewallRule
Config checking state: verify egress firewall rule.
ApplyRoute
Config checking state: verify route.
ApplyForwardingRule
Config checking state: match forwarding rule.
AnalyzeLoadBalancerBackend
Config checking state: verify load balancer backend configuration.
SpoofingApproved
Config checking state: packet sent or received under foreign IP address and allowed.
ArriveAtInstance
Forwarding state: arriving at a Compute Engine instance.
ArriveAtInternalLoadBalancer
Forwarding state: arriving at a Compute Engine internal load balancer.
ArriveAtExternalLoadBalancer
Forwarding state: arriving at a Compute Engine external load balancer.
ArriveAtHybridSubnet
Forwarding state: arriving at a hybrid subnet. Appropriate routing configuration will be determined here.
ArriveAtVpnGateway
Forwarding state: arriving at a Cloud VPN gateway.
ArriveAtVpnTunnel
Forwarding state: arriving at a Cloud VPN tunnel.
ArriveAtInterconnectAttachment
Forwarding state: arriving at an interconnect attachment.
ArriveAtVpcConnector
Forwarding state: arriving at a VPC connector.
ArriveAtGkePod
Forwarding state: arriving at a GKE Pod.
DirectVpcEgressConnection
Forwarding state: for packets originating from a serverless endpoint forwarded through Direct VPC egress.
ServerlessExternalConnection
Forwarding state: for packets originating from a serverless endpoint forwarded through public (external) connectivity.
NgfwPacketInspection
Forwarding state: Layer 7 packet inspection by the firewall endpoint based on the configured security profile group.
Nat
Transition state: packet header translated. The nat field is populated
with the translation information.
SkipGkePodIpMasquerading
Transition state: GKE Pod IP masquerading is skipped. The
ip_masquerading_skipped field is populated with the reason.
SkipGkeIngressNetworkPolicy
Transition state: GKE Ingress Network Policy is skipped. The
gke_network_policy_skipped field is populated with the reason.
SkipGkeEgressNetworkPolicy
Transition state: GKE Egress Network Policy is skipped. The
gke_network_policy_skipped field is populated with the reason.
ApplyIngressGkeNetworkPolicy
Config checking state: verify ingress GKE network policy.
ApplyEgressGkeNetworkPolicy
Config checking state: verify egress GKE network policy.
ProxyConnection
Transition state: original connection is terminated and a new proxied connection is initiated.
Deliver
Final state: packet could be delivered.
Drop
Final state: packet could be dropped.
Forward
Final state: packet could be forwarded to a network with an unknown configuration.
Abort
Final state: analysis is aborted.
ViewerPermissionMissing
Special state: viewer of the test result does not have permission to see the configuration in this step.
UnknownValue(UnknownValue)
If set, the enum was initialized with an unknown value.
Applications can examine the value using State::value or State::name.