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 .
|
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 In questo caso, gli stati finali tra più tracce restituiscono stati finali diversi. Il risultato |
Undetermined |
Impossibile determinare la raggiungibilità. Lo stato finale di una traccia è La raggiungibilità dall'origine alla destinazione non può essere determinata per uno dei seguenti motivi:
|
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 |
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:
|
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. |