Identificare e risolvere i problemi ICMP

Questo tutorial mostra come utilizzare in modo iterativo Connectivity Tests per identificare e risolvere un problema di connettività di rete.

In questo caso, le regole firewall Virtual Private Cloud (VPC) impediscono all'indirizzo IP esterno di un'istanza di macchina virtuale (VM) di utilizzare il protocollo ICMP per eseguire un ping all'indirizzo IP esterno di un'altra VM.

Poiché i problemi di comunicazione tra VM sono spesso problemi di connettività di rete, Connectivity Tests possono fornirti informazioni su possibili problemi di configurazione in modo da poterli risolvere. Puoi quindi eseguire nuovamente Connectivity Tests per verificare la correzione.

Panoramica

In questo caso, hai configurato due istanze VM nella stessa subnet della rete VPC. Entrambe le VM hanno indirizzi IP esterni. Quando testi la connettività tra i due inviando un pacchetto ping da vm1 all'indirizzo IP esterno di vm2, il ping non funziona.

Risoluzione dei problemi relativi a un ping negato tra due VM.
Risoluzione dei problemi relativi a un ping negato tra due VM

Prima di iniziare

Prima di iniziare il tutorial, segui tutti i passaggi indicati nella sezione Before you begin di Creare ed eseguire test di connettività.

Può essere utile anche esaminare come funzionano le regole firewall VPC.

Configura le risorse di rete

In questa sezione configuri le risorse Google Cloud nel percorso di test.

Configura una rete VPC

Puoi utilizzare una rete e una subnet esistenti che contengono le VM oppure creare una nuova rete e una nuova subnet.

Configura due istanze VM

  1. Le istanze VM in questo tutorial si trovano nella stessa rete e nella stessa subnet VPC. Puoi utilizzare le VM esistenti o crearne di nuove.
  2. Assegna vm1 e vm2 un indirizzo IP esterno quando li crei. Prendi nota degli indirizzi perché li utilizzerai in seguito.

Crea una regola firewall default-deny-outgoing-ping

Dopo aver creato le VM, crea una regola firewall VPC in uscita denominatadefault-deny-outgoing-ping. Questa regola nega il protocollo ICMP da vm1 a vm2. Assicurati che in questa rete non siano presenti regole firewall che sostituiscano questa regola. Inoltre, assicurati che nessuna regola del criterio del firewall gerarchico sostituisca questa regola. Per maggiori dettagli, consulta la panoramica dei criteri firewall gerarchici.

Utilizza i valori riportati nella tabella seguente per configurare questa regola firewall VPC.

Campo della regola firewall VPC Valore
Nome default-deny-outgoing-ping
Rete Utilizza la rete VPC in cui si trovano le VM.
Priorità 1000
Direzione del traffico Egress
Azione in caso di corrispondenza Nega
Target Seleziona Tutte le istanze nella rete.
Intervalli IP di destinazione Utilizza l'indirizzo IP esterno di vm2.
Protocolli e porte specificati Seleziona la casella di controllo Altri protocolli, quindi inserisci icmp.

Crea una regola firewall default-deny-ingress-to-vm2

Crea una regola firewall in entrata denominata default-deny-ingress-to-vm2 per negare il protocollo ICMP all'indirizzo IP esterno di vm2. Assicurati che in questa rete non siano presenti regole firewall che sostituiscano questa regola. Inoltre, assicurati che nessuna regola del criterio del firewall gerarchico sostituisca questa regola. Per maggiori dettagli, consulta la panoramica dei criteri firewall gerarchici.

Utilizza i valori riportati nella tabella seguente per creare la regola.

Campo della regola firewall VPC Valore
Nome default-deny-ingress-to-vm2
Rete Utilizza la rete VPC in cui si trovano le VM.
Priorità 65534
Direzione del traffico In entrata
Azione in caso di corrispondenza Nega
Target Seleziona Tutte le istanze nella rete.
Intervalli IP di origine Utilizza l'indirizzo IP esterno di vm1.
Protocolli e porte specificati Seleziona la casella di controllo Altri protocolli, quindi inserisci icmp.

Esegui la prima traccia

Utilizza la console Google Cloud per eseguire una traccia per determinare se un pacchetto ICMP (ping) può passare da vm1 all'indirizzo IP esterno vm2. Dopo aver eseguito questa traccia, Connectivity Tests ti informa che il pacchetto della traccia è stato eliminato a causa della regola del firewall VPCdefault-deny-outgoing-ping.

Utilizza la seguente tabella per i valori di input della traccia.

Nome campo Valore
Protocollo icmp
Indirizzo IP di origine

Utilizza l'indirizzo IP esterno di vm1.

Seleziona la casella di controllo Questo è un indirizzo IP utilizzato in Google Cloud.

Indirizzo IP o progetto di servizio di origine Verifica il nome del progetto per vm1.
Indirizzo IP di destinazione

Utilizza l'indirizzo IP esterno di vm2.

Seleziona la casella di controllo Questo è un indirizzo IP utilizzato in Google Cloud.

Indirizzo IP o progetto di servizio di destinazione Verifica il nome del progetto per vm2.

Lo snapshot della console Google Cloud riportato di seguito mostra che il pacchetto di traccia è stato eliminato dalla regola firewall default-deny-outgoing-ping.

Screenshot dell'interfaccia utente della console della traccia contenente il ping in uscita negato.
Istantanea dell'interfaccia utente della console della traccia contenente il ping in uscita negato

Esegui una seconda traccia dopo aver disattivato la regola firewall default-deny-outgoing-ping

  1. Per consentire il test di ping a vm2, disattiva temporaneamente la regola firewall VPC default-deny-outgoing-ping.
  2. Dopo che la configurazione è stata aggiornata correttamente, esegui di nuovo la traccia.
  3. La traccia non riesce di nuovo. Il pacchetto è stato ignorato a causa di questa regola firewall che nega un pacchetto ICMP in ingresso all'indirizzo IP esterno di vm2.

Lo snapshot seguente della console Google Cloud mostra che un pacchetto di traccia in entrata può passare attraverso Cloud NAT, ma non può raggiungere vm2 a causa della regola firewall menzionata in precedenza.

Istantanea dell'interfaccia utente della console della traccia che non riesce a raggiungere la VM2.
Istantanea dell'interfaccia utente della console della traccia che non riesce a raggiungere vm2

Crea la regola firewall allow-ping-from-known-ranges

Per consentire l'ingresso all'indirizzo IP esterno di vm2, configura una nuova regola del firewall VPC chiamata allow-ping-from-known-ranges. Poiché consentire l'ingresso di tutti i pacchetti ICMP nella rete VPC rappresenta un rischio per la sicurezza, specifica solo un piccolo insieme di intervalli di origine che possono inviare pacchetti ICMP all'indirizzo IP esterno di vm2.

Ai fini di questo tutorial, questo intervallo di origine include solo l'indirizzo IP esterno di vm1, ma controlla eventuali regole o priorità del firewall esistenti per assicurarti che non sostituiscano questa nuova regola. Inoltre, assicurati che nessuna regola del criterio firewall gerarchico sostituisca questa regola. Per maggiori dettagli, consulta la panoramica dei criteri firewall gerarchici.

Utilizza i valori riportati nella tabella seguente per configurare la regola.

Campo della regola firewall VPC Valore
Nome allow-ping-from-known-ranges
Rete Utilizza il nome della rete che contiene entrambe le VM.
Priorità 1000
Direzione del traffico In entrata
Azione in caso di corrispondenza Consenti
Target Seleziona Tutte le istanze nella rete.
Filtro di origine Intervalli IP
Intervalli IP di origine Utilizza l'indirizzo IP esterno di vm1.
Protocolli e porte specificati Seleziona la casella di controllo Altri protocolli, quindi inserisci icmp.

Esegui una terza traccia

Dopo aver creato la regola firewall allow-ping-from-known-ranges, invia di nuovo un ping all'indirizzo IP esterno di vm2. Il ping funziona e il problema è stato risolto.

Un ping consentito tra due VM.
Un ping consentito tra due VM

Puoi verificare questo risultato eseguendo un'altra traccia sulla configurazione aggiornata contenente la nuova regola del firewall. Questa volta, Connectivity Tests ti informa che il pacchetto è stato recapitato a vm2 e che la regola firewall corrispondente, allow-ping-from-known-ranges, consente un pacchetto ICMP in entrata all'indirizzo IP esterno di vm2.

Istantanea dell'interfaccia utente della console di una traccia andata a buon fine alla VM2.
Istantanea dell'interfaccia utente della console di una traccia riuscita a vm2

Esegui la pulizia

Se necessario, puoi disattivare o eliminare una delle seguenti risorse Google Cloud che hai creato per questo tutorial. Assicurati che non si tratti di risorse di produzione. Se decidi di disattivare le risorse, consulta la pagina dei prezzi di Compute Engine e la pagina Tutti i prezzi di networking per assicurarti che non ti vengano addebitate.

  1. Disattiva o elimina le regole firewall.
  2. Disattiva o elimina le VM.
  3. Elimina le subnet VPC.
  4. Elimina la rete VPC.

Passaggi successivi