Stati per l'analisi delle configurazioni

Un'analisi di configurazione del test di connettività passa attraverso una serie di stati di test durante il controllo della configurazione di ogni risorsa Google Cloud in un percorso di rete da un'origine designata a una destinazione designata. Utilizza questo riferimento per interpretare questi stati.

Per ulteriori informazioni su Connectivity Tests, inclusi i dettagli sull'analisi del piano dati in tempo reale, consulta la panoramica.

Stati di test

Un'analisi della configurazione del test di connettività fornisce i dati per i seguenti stati del test nell'ordine elencato:

  • Stato iniziale
  • Stato del controllo della configurazione
  • Stato di inoltro
  • Stato di transizione
  • Stato speciale
  • Stato finale
  • Risultato della raggiungibilità complessiva

Alcuni di questi stati vengono visualizzati in ogni traccia, mentre altri vengono visualizzati solo quando si testa la configurazione di una risorsa Google Cloud specifica o quando si esegue una determinata attività.

Lo stato finale e il risultato di raggiungibilità complessiva forniscono l'output del test più importante.

Inoltre, l'output del test può includere i metadati per le risorse Google Cloud associate a uno o più stati, ad esempio informazioni sul nome e sull'indirizzo IP di un'istanza di una macchina virtuale (VM).

In che modo l'analisi della configurazione valuta la raggiungibilità

L'analisi della configurazione simula un pacchetto di test attraverso un percorso di rete verificando le configurazioni per le risorse Google Cloud in quel percorso. Alcuni esempi di configurazioni di rete non valide sono una regola di forwarding di Cloud Load Balancing che non ha backend o un percorso di rete inesistente.

Durante lo stato di controllo della configurazione, Connectivity Tests raccolgono informazioni su i route di rete, ad esempio route configurati dall'utente, route dinamici basati su annunci BGP o route basati su criteri. L'analisi della configurazione sceglie quindi una route di rete in base all'applicabilità e all'ordine.

Per lo stato del controllo della configurazione, verified indica che Connectivity Tests confermano che una configurazione per la risorsa Google Cloud testata è valida. La configurazione consente al pacchetto di test simulato di continuare lungo il percorso di rete in fase di test.

Per le regole firewall in entrata e in uscita, verified indica che l'analisi della configurazione conferma che la regola firewall è valida. La regola del firewall consente il passaggio del pacchetto di test simulato.

Se Connectivity Tests determina che una configurazione non è valida, il pacchetto ha uno stato finale Drop.

Risultato della raggiungibilità complessiva

L'analisi della configurazione fornisce un riepilogo generale dello stato di raggiungibilità, noto anche come risultato. I risultati possono avere uno dei quattro valori: Reachable, Unreachable, Ambiguous e Undetermined.

Tabella dei valori

La tabella seguente descrive il valore per ogni tipo di risultato di raggiungibilità complessiva.

Risultato della raggiungibilità complessiva Descrizione
Reachable Esistono due possibili scenari. In entrambi gli scenari, Connectivity Tests non rilevano problemi di configurazione. Pertanto, entrambi gli scenari sono considerati Reachable.
  • Nel primo scenario, il pacchetto proveniente dall'origine dovrebbe raggiungere la destinazione. Lo stato finale di una o più tracce è Deliver.
  • Nel secondo scenario, l'analisi è parzialmente completata in base alle configurazioni per le quali l'utente dispone dell'autorizzazione. Lo stato finale di una o più tracce è Forward.
Unreachable Il pacchetto proveniente dall'origine dovrebbe essere eliminato prima di raggiungere la destinazione. Lo stato finale di tutte le tracce è Drop.
Ambiguous

Questo risultato viene restituito se gli endpoint di origine e di destinazione non identificano in modo univoco la posizione del test nella rete e il risultato della copertura complessiva contiene più tracce con stati Reachable e Unreachable misti.

In questo caso, gli stati finali tra più tracce restituiscono stati finali diversi. Il risultato Ambiguous non si applica ai test che contengono una sola traccia.

Undetermined

Impossibile determinare la raggiungibilità. Lo stato finale di una traccia è Forward o Abort. Per più tracce, lo stato finale è una combinazione di Forward o Abort.

La raggiungibilità dall'origine alla destinazione non può essere determinata per uno dei seguenti motivi:

  • L'analisi viene interrotta a causa di un errore di autorizzazione. L'utente non dispone dell'autorizzazione di lettura per i progetti elencati nel test.
  • L'analisi viene interrotta a causa di errori interni.

Più tracce

Ogni analisi di configurazione può contenere più tracce e lo stato finale di queste tracce potrebbe non essere lo stesso. Ad esempio, un pacchetto indirizzato all'indirizzo VIP di un bilanciatore del carico Google Cloud potrebbe avere n tracce se sono configurate n istanze VM di backend per il bilanciatore del carico. Queste tracce n potrebbero non avere gli stessi stati finali.

Poiché un'analisi può produrre più tracce possibili, vale quanto segue:

  • Se esiste un solo risultato della traccia, il risultato della raggiungibilità complessiva corrisponde allo stato finale della traccia.
  • Se sono presenti più risultati della traccia, il risultato della raggiungibilità complessiva viene calcolato in base alla distribuzione degli stati finali contenuti in tutte le tracce.

Metadati dei risultati

Oltre al risultato di raggiungibilità complessiva per le tracce, ogni risultato del test contiene i seguenti metadati:

  • La data e l'ora in cui è stato verificato lo stato del test
  • Dettagli dell'errore di un fallimento o dell'annullamento di un test
  • Dettagli della traccia per ogni traccia

I dettagli dell'errore di un test non riuscito o annullato vengono visualizzati come codici e messaggi nel risultato complessivo della raggiungibilità. Ad esempio, un test con stato finale Abort potrebbe mostrare un messaggio di errore come Failed to pull initial config. An internal error occurred.

Stato iniziale

Durante lo stato iniziale, l'analisi della configurazione simula l'avvio da un endpoint di rete.

Messaggio Descrizione
START_FROM_INSTANCE Il pacchetto ha avuto origine da un'istanza Compute Engine. I metadati di InstanceInfo sono stati compilati da Connectivity Tests.
START_FROM_INTERNET Il pacchetto ha avuto origine da internet. I metadati di EndpointInfo sono stati compilati da Connectivity Tests.
START_FROM_PRIVATE_NETWORK Il pacchetto ha avuto origine da una rete VPC o da una rete on-premise con un indirizzo IP sorgente interno. Se l'origine era una rete VPC visibile all'utente, i metadati NetworkInfo sono stati compilati con i dettagli della rete da Connectivity Tests.
START_FROM_CLOUD_FUNCTION Il pacchetto ha avuto origine da una funzione Cloud Run. I metadati di CloudFunctionInfo sono stati compilati da Connectivity Tests.
START_FROM_CLOUD_RUN_REVISION Il pacchetto ha avuto origine da una revisione di un servizio Cloud Run. I metadati di CloudRunRevisionInfo sono stati compilati da Connectivity Tests.
START_FROM_APP_ENGINE_VERSION Il pacchetto ha avuto origine da una versione di un servizio dell'ambiente standard di App Engine. I metadati di AppEngineVersionInfo sono stati compilati da Connectivity Tests.

Stato finale

Esistono quattro stati finali: Drop, Abort, Forward e Deliver. Ogni sezione seguente contiene una tabella con messaggi e descrizioni per ogni stato.

Rilascia

Connectivity Tests hanno ignorato il pacchetto di test simulato perché il target di test non era raggiungibile per i seguenti motivi.

Messaggio Descrizione
UNKNOWN_EXTERNAL_ADDRESS L'indirizzo esterno di destinazione non può essere risolto in una destinazione nota.
FOREIGN_IP_DISALLOWED L'istanza VM può inviare o ricevere un pacchetto con un indirizzo IP esterno solo se ip_forward è abilitato. In altre parole, l'indirizzo IP estero non ha superato un controllo antifrode.
FIREWALL_RULE

Ignorato a causa di una regola del firewall, a meno che non sia consentito per il monitoraggio delle connessioni.

Connectivity Tests potrebbe rifiutare un pacchetto di test perché il pacchetto corrisponde a una regola firewall di blocco. Tuttavia, il piano dati effettivo potrebbe consentire il passaggio del pacchetto a causa del monitoraggio delle connessioni nella regola del firewall. Il monitoraggio delle connessioni consente il ritorno dei pacchetti per una connessione esistente nonostante la regola del firewall.

NO_ROUTE Ignorato per assenza di route.
ROUTE_BLACKHOLE È stato ignorato perché l'hop successivo della route con corrispondenza non esiste.
ROUTE_WRONG_NETWORK Il pacchetto è stato inviato alla rete errata (non intenzionale), come mostrato in Rilevamento di configurazioni non valide o incoerenti.
PRIVATE_TRAFFIC_TO_INTERNET Un pacchetto con un indirizzo di destinazione interno è stato inviato a un gateway internet.
PRIVATE_GOOGLE_ACCESS_DISALLOWED Un'istanza VM con solo un indirizzo IP interno ha provato ad accedere a un'API o a un servizio Google, ma l'accesso privato Google non è stato abilitato.
NO_EXTERNAL_ADDRESS Un'istanza VM con solo un indirizzo IP interno ha tentato di accedere a host esterni tramite una route il cui hop successivo è il gateway internet predefinito. Prevedibile quando Cloud NAT non è abilitato nella subnet o quando non esiste un'altra route predefinita che utilizza un tipo di hop successivo diverso (ad esempio una VM proxy).
UNKNOWN_INTERNAL_ADDRESS Impossibile risolvere un indirizzo interno di destinazione in un target noto.
FORWARDING_RULE_MISMATCH Il protocollo e le porte di una regola di forwarding non corrispondono all'intestazione del pacchetto oppure il pacchetto non ha origine o destinazione nella stessa regione del bilanciatore del carico della regione.
FORWARDING_RULE_NO_INSTANCES I backend non sono stati configurati per una regola di forwarding.
FIREWALL_BLOCKING_LOAD_BALANCER_BACKEND_HEALTH_CHECK

Una regola firewall ha bloccato i probe del controllo di integrità verso i backend e li ha resi non disponibili per il traffico proveniente dal bilanciatore del carico.

Nell'ambito della sequenza di test per Cloud Load Balancing, l'analisi della configurazione verifica che le regole firewall esistenti siano state configurate per consentire l'invio di un pacchetto di controllo di integrità ai backend di Cloud Load Balancing. Questo controllo della configurazione genera un healthCheckFirewallState. Per maggiori dettagli, consulta Regole firewall per i controlli di integrità.

INSTANCE_NOT_RUNNING È stato inviato un pacchetto da o verso un'istanza VM che non era in stato di esecuzione.
TRAFFIC_TYPE_BLOCKED Il tipo di traffico è stato bloccato e l'utente non ha potuto configurare una regola firewall per abilitarlo. Per maggiori dettagli, consulta Traffico sempre bloccato.
GKE_MASTER_UNAUTHORIZED_ACCESS L'accesso all'endpoint del control plane di Google Kubernetes Engine non è stato autorizzato. Per maggiori dettagli, consulta Accedere agli endpoint del cluster.
DROPPED_INSIDE_GKE_SERVICE Un pacchetto è stato ignorato all'interno del servizio Google Kubernetes Engine.
CLOUD_SQL_INSTANCE_UNAUTHORIZED_ACCESS L'accesso all'endpoint dell'istanza Cloud SQL non è autorizzato. Per maggiori dettagli, consulta Autorizzazione con reti autorizzate.
DROPPED_INSIDE_CLOUD_SQL_SERVICE Un pacchetto è stato ignorato all'interno del servizio Cloud SQL.
GOOGLE_MANAGED_SERVICE_NO_PEERING Un pacchetto è stato ignorato perché non esiste alcun peering tra la rete di origine e la rete dei servizi gestiti da Google.
CLOUD_SQL_INSTANCE_NO_IP_ADDRESS Un pacchetto è stato ignorato perché l'istanza Cloud SQL non ha un indirizzo IP privato o pubblico.
PSC_CONNECTION_NOT_ACCEPTED Un pacchetto è stato ignorato perché la connessione al servizio pubblicato che utilizza Private Service Connect non è accettata.
CLOUD_FUNCTION_NOT_ACTIVE Un pacchetto è stato ignorato perché la funzione Cloud Run non è attiva.
VPC_CONNECTOR_NOT_SET Un pacchetto è stato ignorato perché il servizio dell'ambiente standard App Engine, la funzione Cloud Run o la revisione Cloud Run non ha un connettore Accesso VPC serverless configurato.
VPC_CONNECTOR_NOT_RUNNING Un pacchetto è stato ignorato perché il connettore di accesso VPC serverless non è in esecuzione.
CLOUD_RUN_REVISION_NOT_READY Un pacchetto è stato ignorato perché la revisione di Cloud Run non è pronta e non può gestire il traffico.

Interrompi

L'analisi della configurazione è stata interrotta per mancanza di informazioni di base, ad esempio per mancanza di accesso alla configurazione di rete.

Questo stato si verifica in genere quando Connectivity Tests non dispongono delle autorizzazioni corrette per ottenere la configurazione dal progetto host per un progetto di servizio, come mostrato nella tabella seguente.

Messaggio Descrizione
UNKNOWN_NETWORK

Interrotta a causa di una rete sconosciuta. L'analisi non può procedere perché, in una rete VPC condiviso, l'utente che esegue il test non ha accesso alle configurazioni di rete del progetto host, incluse le regole e le route del firewall.

L'esecuzione di un test di connettività richiede che l'utente che lo esegue possa leggere le configurazioni di risorse come le route nel progetto host. Questo accade perché le risorse di rete vengono allocate nel progetto host, ma le risorse effettive esistono nel progetto di servizio.

UNKNOWN_IP

L'analisi è stata interrotta perché gli indirizzi IP richiesti per l'analisi erano sconosciuti. Ciò è dovuto a un input utente errato o all'impossibilità dell'analisi della configurazione di determinare un endpoint valido in base ai parametri di input forniti.

In una rete VPC condiviso, l'utente che eseguiva il test non aveva accesso alle configurazioni di rete del progetto host. Questo accesso è obbligatorio per i test in base agli indirizzi IP nel progetto di servizio.

UNKNOWN_PROJECT L'analisi è stata interrotta perché non è stato possibile ricavare informazioni sul progetto dall'input del test di connettività. Questo è dovuto a un input errato da parte dell'utente o, in base ai parametri di input forniti, l'analisi non è riuscita a determinare un progetto valido.
PERMISSION_DENIED L'analisi è stata interrotta perché l'utente non disponeva dell'autorizzazione per accedere a tutte o parte delle configurazioni di rete necessarie per eseguire il test.
NO_SOURCE_LOCATION L'analisi è stata interrotta perché non è stato possibile ricavare un endpoint di origine valido dall'input del test. Questo è dovuto a un input utente errato o, in base ai parametri di input forniti, l'analisi non è riuscita a determinare un endpoint di origine valido.
INVALID_ARGUMENT

L'analisi è stata interrotta perché l'endpoint di origine e/o di destinazione specificato nell'input del test non era valido. Ecco alcuni possibili motivi per questo messaggio:

  • Un indirizzo IP con formato non corretto
  • Un URI di rete o un'istanza VM inesistente
  • Un indirizzo IP non compreso nell'intervallo dell'URI di rete specificato
  • Un'istanza VM che non possiede l'interfaccia di rete nella rete specificata
NO_EXTERNAL_IP L'analisi è stata interrotta perché il traffico è stato inviato da un indirizzo IP pubblico a un'istanza VM che non aveva un indirizzo IP esterno.
UNINTENDED_DESTINATION L'analisi è stata interrotta perché nessuna delle tracce è riuscita a trovare una corrispondenza con le informazioni di destinazione specificate nell'input del test.
TRACE_TOO_LONG L'analisi è stata interrotta perché il numero di passaggi nella traccia ha superato un determinato limite. Questo problema potrebbe essere causato da un loop di routing.
INTERNAL_ERROR Interrotta a causa di un errore interno del server.
SOURCE_ENDPOINT_NOT_FOUND Interrotta perché non è stato possibile trovare l'endpoint di origine.
MISMATCHED_SOURCE_NETWORK Interrotta perché la rete di origine non corrisponde all'endpoint di origine.
DESTINATION_ENDPOINT_NOT_FOUND Interrotta perché non è stato possibile trovare l'endpoint di destinazione.
MISMATCHED_DESTINATION_NETWORK Interrotta perché la rete di destinazione non corrisponde all'endpoint di destinazione.

Avanti

L'analisi si è interrotta in un endpoint specifico e non poteva procedere oltre:

  • L'analisi è parzialmente completata in base alle configurazioni in cui l'utente ha l'autorizzazione.
  • Il pacchetto di test è stato inoltrato a una rete con una configurazione sconosciuta.
  • Il target di test non è stato eliminato in base alla configurazione nota e il pacchetto di test è stato inoltrato a una rete in cui Connectivity Tests non hanno visibilità.
Messaggio Inoltro effettuato
PEERING_VPC A una rete VPC peer
VPN_GATEWAY A un gateway Cloud VPN
INTERCONNECT A una connessione Cloud Interconnect
GKE_MASTER A un control plane GKE
IMPORTED_CUSTOM_ROUTE_NEXT_HOP All'hop successivo di una route personalizzata importata da una rete VPC di peering
CLOUD_SQL_INSTANCE A un'istanza Cloud SQL

Distribuisci

L'analisi è riuscita a raggiungere il target e a inviare il pacchetto di test simulato.

Uno stato finale di Deliver non garantisce che il traffico possa passare attraverso il piano dati. Lo scopo dell'analisi è convalidare i problemi di configurazione che potrebbero causare un calo del traffico.

Messaggio Target
INSTANCE Un'istanza VM Compute Engine
INTERNET Internet
GOOGLE_API Un'API di Google
GKE_MASTER Un control plane GKE
CLOUD_SQL_INSTANCE Un'istanza Cloud SQL
PSC_GOOGLE_API Tutte le API e tutti i servizi Google che utilizzano Private Service Connect
PSC_VPC_SC Controlli di servizio VPC che utilizzano Private Service Connect
PSC_PUBLISHED_SERVICE Un servizio pubblicato che utilizza Private Service Connect

Metadati

L'analisi della configurazione mostra i seguenti metadati per lo stato finale.

Nome dei metadati Descrizione
AbortInfo Causa di uno stato finale Abort e l'URI della risorsa che ha causato lo stato.
DropInfo Causa di uno stato finale Drop e l'URI della risorsa che ha causato lo stato.
ForwardInfo Il tipo di destinazione e l'URI della risorsa di destinazione a cui è stato infine inoltrato un pacchetto di test (stato finale Forward).

Altri stati

Prima che il pacchetto di test raggiunga uno degli stati finali, passa attraverso i seguenti stati intermedi: stato di controllo della configurazione, stato di inoltro, stato di transizione e stato speciale.

Stato del controllo della configurazione

Durante lo stato di controllo della configurazione, Connectivity Tests controllano la configurazione delle risorse Google Cloud nel percorso di rete simulato, verificano che la configurazione delle risorse sia valida e che consenta al pacchetto di test simulato di continuare nel percorso di rete.

Se necessario, l'analisi della configurazione esegue un controllo di spoofing.

Messaggio Descrizione
APPLY_INGRESS_FIREWALL_RULE Regola firewall in entrata verificata.
APPLY_EGRESS_FIREWALL_RULE Regola firewall in uscita verificata.
APPLY_ROUTE Percorso verificato.
APPLY_FORWARDING_RULE Regola di forwarding con corrispondenza.
SPOOFING_APPROVED Il pacchetto è stato inviato o ricevuto con un indirizzo IP esterno, ma consentito. Per maggiori dettagli, consulta Controllo dello spoofing.

Stato di inoltro

Durante lo stato di inoltro, Connectivity Tests simula un pacchetto che arriva a una risorsa Google Cloud intermedia nel percorso di test (ad esempio un pacchetto che arriva a un gateway Cloud VPN o a un bilanciatore del carico Google Cloud).

Messaggio Descrizione
ARRIVE_AT_INSTANCE È stata raggiunta un'istanza VM di Compute Engine.
ARRIVE_AT_INTERNAL_LOAD_BALANCER È stato raggiunto un bilanciatore del carico Google Cloud che utilizza un indirizzo IP privato come VIP.
ARRIVE_AT_EXTERNAL_LOAD_BALANCER È stato raggiunto l'indirizzo IP pubblico di un bilanciatore del carico Google Cloud.
ARRIVE_AT_VPN_GATEWAY È arrivato a un gateway Cloud VPN.
ARRIVE_AT_VPN_TUNNEL È stato raggiunto un tunnel Cloud VPN.
ARRIVE_AT_VPC_CONNECTOR È stato raggiunto un connettore di accesso VPC serverless.

Stato di transizione

Durante lo stato di transizione, Connectivity Tests verificano le configurazioni simulate in cui un pacchetto viene modificato (ad esempio, quando Cloud NAT traduce un'intestazione di pacchetto o quando un proxy di bilanciamento del carico Google Cloud termina e riavvia una sessione TCP in entrata alle istanze VM).

Messaggio Descrizione
NAT L'intestazione del pacchetto è stata tradotta.
PROXY_CONNECTION La connessione originale è stata interrotta ed è stata avviata una nuova connessione con proxy.

Stato speciale

In questo stato, un visualizzatore di test non ha l'autorizzazione per visualizzare una o più risorse Google Cloud. Per ulteriori informazioni, consulta Testare le autorizzazioni.

Nome dei metadati Descrizione
VIEWER_PERMISSION_MISSING L'utente che visualizza il risultato del test non ha l'autorizzazione per vedere la configurazione della risorsa Google Cloud in questo passaggio.

Metadati delle risorse

Connectivity Tests mostra i seguenti metadati per le configurazioni delle risorse Google Cloud che controlla.

Nome dei metadati Descrizione
EndpointInfo Endpoint utilizzati per il test. Connectivity Tests ottengono EndpointInfo dagli endpoint di origine e di destinazione e convalidano le informazioni utilizzando il modello per il piano dati.
FirewallInfo Metadati associati a una regola firewall.
ForwardingRuleInfo Metadati associati a una regola di forwarding VPC.
InstanceInfo Metadati associati a un'istanza VM di Compute Engine.
LoadBalancerInfo Metadati associati a un bilanciatore del carico Google Cloud.
NetworkInfo Metadati associati a una rete VPC.
RouteInfo Metadati associati a un percorso della rete VPC.
AppEngineVersionInfo Metadati associati a una versione di un servizio dell'ambiente standard di App Engine.
CloudRunRevisionInfo Metadati associati a una revisione Cloud Run.
CloudFunctionInfo Metadati associati a una funzione Cloud Run.
VpcConnectorInfo Metadati associati a un connettore di accesso VPC serverless.

Passaggi successivi