Reti VPC
Una rete Virtual Private Cloud (VPC) è una versione virtuale di una rete fisica implementata all'interno della rete di produzione di Google utilizzando Andromeda.
Una rete VPC esegue le seguenti operazioni:
- Fornisce connettività per le tue istanze di macchine virtuali (VM) Compute Engine.
- Offre bilanciatori del carico di rete passthrough interni e sistemi proxy nativi per bilanciatori del carico delle applicazioni interni.
- Si connette alle reti on-premise utilizzando i tunnel Cloud VPN e i collegamenti VLAN per Cloud Interconnect.
- Distribuisce il traffico dai bilanciatori del carico esterni di Google Cloud ai backend.
I progetti possono contenere più reti VPC. A meno che non crei un criterio dell'organizzazione che lo vieti, i nuovi progetti iniziano con una rete predefinita (una rete VPC in modalità automatica) con una sottorete in ogni regione.
Reti e subnet
I termini subnet e subnetwork sono sinonimi. Vengono utilizzati in modo intercambiabile nella console Google Cloud, nei comandi gcloud
e nella documentazione dell'API.
Una subnet non è la stessa cosa di una rete (VPC). Le reti e le subnet sono diversi tipi di risorse in Google Cloud.
Per ulteriori informazioni, consulta Subnet.
Istanze di macchine virtuali
Un'istanza di macchina virtuale (VM) Compute Engine è una macchina virtuale ospitata sull'infrastruttura di Google. I termini istanza Compute Engine, istanza VM e VM sono sinonimi. Vengono utilizzati in modo intercambiabile nella console Google Cloud, nel riferimento di Google Cloud CLI e nella documentazione dell'API.
Le istanze VM includono cluster Google Kubernetes Engine (GKE), istanze dell'ambiente flessibile di App Engine e altri prodotti Google Cloud basati su VM Compute Engine.
Per ulteriori informazioni, consulta la sezione Istanze di macchine virtuali nella documentazione di Compute Engine.
Specifiche
Le reti VPC hanno le seguenti proprietà:
Le reti VPC, route associate e regole del firewall incluse, sono risorse globali. Non sono associate a nessuna regione o zona particolare.
Le subnet sono risorse regionali.
Ogni subnet definisce un intervallo di indirizzi IPv4. Le subnet nelle reti VPC in modalità personalizzata possono avere anche un intervallo di indirizzi IPv6.
Il traffico da e verso le istanze può essere controllato con le regole del firewall di rete. Le regole vengono implementate sulle VM stesse, pertanto il traffico può essere controllato e registrato solo quando esce o arriva a una VM.
Le risorse all'interno di una rete VPC possono comunicare tra loro utilizzando indirizzi IPv4 interni, indirizzi IPv6 interni o indirizzi IPv6 esterni, in base alle regole firewall di rete vigenti. Per saperne di più, consulta la sezione Comunicazione all'interno della rete.
Le istanze con indirizzi IPv4 o IPv6 interni possono comunicare con le API e i servizi Google. Per ulteriori informazioni, consulta Opzioni di accesso privato per i servizi.
L'amministrazione della rete può essere protetta utilizzando i ruoli Identity and Access Management (IAM).
Un'organizzazione può utilizzare la VPC condivisa per mantenere una rete VPC in un progetto host comune. Le entità IAM autorizzate di altri progetti della stessa organizzazione possono creare risorse che utilizzano le subnet della rete VPC condiviso.
Le reti VPC possono essere collegate ad altre reti VPC in progetti o organizzazioni diversi utilizzando il peering di rete VPC.
Le reti VPC possono essere connesse in modo sicuro in ambienti ibridi utilizzando Cloud VPN o Cloud Interconnect.
Le reti VPC supportano il traffico GRE, incluso il traffico su Cloud VPN e Cloud Interconnect. Le reti VPC non supportano GRE per Cloud NAT o per le regole di inoltro per il load balancing e il forwarding del protocollo. Il supporto di GRE consente di terminare il traffico GRE su una VM da internet (indirizzo IP esterno) e da Cloud VPN o Cloud Interconnect (indirizzo IP interno). Il traffico decapsulato può quindi essere inoltrato a una destinazione raggiungibile. GRE ti consente di utilizzare servizi come Secure Access Service Edge (SASE) e SD-WAN.
Le reti VPC supportano gli indirizzi IPv4 e IPv6 unicast. Le reti VPC non supportano gli indirizzi di broadcast o multicast all'interno della rete.
Per ulteriori informazioni sugli intervalli di subnet IPv6, consulta Subnet.
Esempio di rete VPC
L'esempio seguente mostra una rete VPC in modalità personalizzata con tre subnet in due regioni:
- Subnet1 è definita come
10.240.0.0/24
nella regione us-west1.- Due istanze VM nella zona us-west1-a si trovano in questa subnet. I loro indirizzi IP provengono entrambi dall'intervallo di indirizzi disponibili in subnet1.
- Subnet2 è definita come
192.168.1.0/24
nella regione us-east1.- Due istanze VM nella zona us-east1-b si trovano in questa subnet. I loro indirizzi IP provengono entrambi dall'intervallo di indirizzi disponibili in subnet2.
- Subnet3 è definita come
10.2.0.0/16
, anche nella regione us-east1.- Un'istanza VM nella zona us-east1-b e una seconda istanza nella zona us-east1-c si trovano nella subnet3, ciascuna riceve un indirizzo IP dal proprio intervallo disponibile. Poiché le subnet sono risorse regionali, le istanze possono avere le interfacce di rete associate a qualsiasi sottorete della stessa regione che contiene le loro zone.
Vincoli dei criteri dell'organizzazione
Ogni nuovo progetto viene avviato con una rete VPC predefinita. Puoi disattivare la creazione delle reti predefinite creando un criterio dell'organizzazione con il vincolo
compute.skipDefaultNetworkCreation
. I progetti che ereditano questo criterio non avranno una rete predefinita.Puoi controllare le seguenti configurazioni IPv6 utilizzando i policy dell'organizzazione:
Disattiva l'utilizzo di IPv6 all'esterno di VPC: se impostato su True, il vincolo
constraints/compute.disableVpcExternalIpv6
impedisce di configurare subnet a doppio stack con intervalli IPv6 esterni.Disattiva l'utilizzo di IPv6 all'interno di VPC: se impostato su true, il vincolo
constraints/compute.disableVpcInternalIpv6
impedisce di configurare subnet a doppio stack con intervalli IPv6 interni.Disattiva tutti gli utilizzi di IPv6: se impostato su true, il vincolo
constraints/compute.disableAllIpv6
disattiva la creazione o l'aggiornamento di qualsiasi risorsa coinvolta nell'utilizzo di IPv6.
Per ulteriori informazioni sui vincoli, vedi Vincoli delle policy dell'organizzazione.
Modalità di creazione subnet
Google Cloud offre due tipi di reti VPC, determinati dalla modalità di creazione delle subnet:
Quando viene creata una rete VPC in modalità automatica, al suo interno viene creata automaticamente una subnet per ogni regione. Queste subnet create automaticamente usano un insieme di intervalli IPv4 predefiniti che rientrano nel blocco CIDR
10.128.0.0/9
. Man mano che nuove regioni Google Cloud diventano disponibili, le nuove subnet al loro interno vengono aggiunte automaticamente alle reti VPC in modalità automatica usando un intervallo IP di quel blocco. Oltre alle subnet create automaticamente, puoi aggiungere altre subnet manualmente alle reti VPC in modalità automatica nelle regioni che scegli utilizzando intervalli IP esterni a10.128.0.0/9
.Quando viene creata una rete VPC in modalità personalizzata, non vengono create automaticamente subnet. Questo tipo di rete ti offre il controllo completo sulle subnet e sugli intervalli IP corrispondenti. Puoi decidere tu quali subnet creare nelle regioni di tua scelta, usando gli intervalli IP da te specificati.
Puoi passare da una rete VPC in modalità automatica a una in modalità personalizzata. Si tratta di una conversione unidirezionale; le reti VPC in modalità personalizzata non possono essere convertite in reti VPC in modalità automatica. Per aiutarti a decidere quale tipo di rete soddisfa le tue esigenze, consulta le considerazioni relative alle reti VPC in modalità automatica.
Rete predefinita
A meno che tu non scelga di disattivarla, ogni nuovo progetto viene avviato con una rete predefinita. La rete predefinita è una rete VPC in modalità automatica con regole firewall IPv4 precaricate. La rete predefinita non ha regole firewall IPv6 predefinite.
Considerazioni per le reti VPC in modalità automatica
Le reti VPC in modalità automatica sono facili da configurare e utilizzare e sono ben adatte per i casi d'uso con i seguenti attributi:
È utile avere subnet create automaticamente in ogni regione.
Gli intervalli IP predefiniti delle sottoreti non si sovrappongono agli intervalli IP che utilizzeresti per scopi diversi (ad esempio, le connessioni Cloud VPN alle risorse on-premise).
Tuttavia, le reti VPC in modalità personalizzata sono più flessibili e maggiormente adatte alla produzione. I seguenti attributi mettono in evidenza i casi d'uso in cui le reti VPC in modalità personalizzata sono consigliate o obbligatorie:
Non è necessario che venga creata automaticamente una subnet in ogni regione.
La creazione automatica di nuove subnet man mano che diventano disponibili nuove regioni potrebbe sovrapporsi agli indirizzi IP usati da subnet create manualmente o da route statiche oppure potrebbe interferire con la pianificazione della rete complessiva.
Devi avere il controllo completo sulle subnet create nella rete VPC, inclusi gli intervalli di indirizzi IP e le regioni che usi.
Prevedi di connettere la tua rete VPC a un'altra rete:
Poiché le subnet di ogni rete VPC in modalità automatica utilizzano lo stesso intervallo predefinito di indirizzi IP, non puoi connettere tra loro le reti VPC in modalità automatica utilizzando il peering di rete VPC o Cloud VPN.
Poiché l'intervallo CIDR
10.128.0.0/9
della modalità automatica fa parte dello spazio di indirizzi RFC 1918 di uso comune, le reti esterne a Google Cloud potrebbero utilizzare un intervallo CIDR sovrapposto.
Vuoi creare subnet con intervalli IPv6. Le reti VPC in modalità automatica non supportano le subnet dual-stack.
Intervalli di subnet IPv4
Ogni subnet ha un intervallo di indirizzi IPv4 principale. Gli indirizzi interni principali per le seguenti risorse provengono dall'intervallo principale della sottorete: istanze VM, bilanciatori del carico interni e inoltro di protocolli interni. Facoltativamente, puoi aggiungere a una subnet intervalli di indirizzi IP secondari, che vengono utilizzati solo dagli intervalli IP alias. Tuttavia, puoi configurare intervalli IP alias per le istanze dall'intervallo principale o secondario di una subnet.
Ogni intervallo IPv4 principale o secondario per tutte le subnet in una rete VPC deve essere un blocco CIDR valido univoco. Consulta i limiti per rete per il numero di intervalli IP secondari che puoi definire.
Le subnet IPv4 non devono necessariamente formare un blocco CIDR contiguo predefinito, ma puoi farlo se vuoi. Ad esempio, le reti VPC in modalità automatica creano subnet che rientrano in un intervallo IP in modalità automatica predefinito.
Quando crei una subnet in una rete VPC in modalità personalizzata, scegli l'intervallo IPv4 da utilizzare. Per ulteriori informazioni, consulta intervalli validi, intervalli di subnet vietati e limiti per gli intervalli di subnet IPv4.
Esistono quattro indirizzi IP inutilizzabili in ogni intervallo di subnet IPv4 principale. Per maggiori informazioni, consulta Indirizzi inutilizzabili negli intervalli di subnet IPv4.
Le reti VPC in modalità automatica vengono create con una subnet per regione al momento della creazione e ricevono automaticamente nuove subnet nelle nuove regioni. Le subnet hanno solo intervalli IPv4 e tutti gli intervalli di subnet rientrano nel blocco CIDR 10.128.0.0/9
. Le parti inutilizzate di 10.128.0.0/9
sono riservate per un futuro
utilizzo di Google Cloud. Per informazioni sull'intervallo IPv4 utilizzato in ciascuna regione, consulta Intervalli di subnet IPv4 in modalità automatica.
Intervalli di subnet IPv6
Quando crei una subnet a doppio stack in una rete VPC in modalità personalizzata, puoi scegliere se la subnet è configurata con un intervallo di subnet IPv6 interno o con un intervallo di subnet IPv6 esterno.
Gli intervalli di subnet IPv6 interni utilizzano indirizzi locali univoci (ULA).
- Le ULA vengono utilizzate per la comunicazione da VM a VM all'interno delle reti VPC. Gli ULA per IPv6 sono analoghi agli indirizzi RFC 1918 per IPv4. Gli ULA non sono raggiungibili da internet e non sono indirizzabili pubblicamente.
Gli intervalli di subnet IPv6 esterni utilizzano indirizzi unicast globali (GUA).
- Le GUA possono essere utilizzate per la comunicazione da VM a VM all'interno delle reti VPC e sono anche instradabili su internet.
Per ulteriori informazioni sugli intervalli di subnet IPv6, consulta Subnet.
Reti che supportano le subnet dual-stack
Puoi creare subnet a doppio stack in una rete VPC in modalità personalizzata.
Le subnet a doppio stack non sono supportate nelle reti VPC in modalità automatica, inclusa la rete predefinita. Le subnet dual stack non sono supportate sulle reti legacy.
Se hai una rete VPC in modalità automatica a cui vuoi aggiungere subnet a doppio stack, puoi procedere nel seguente modo:
Converti la rete in modalità automatica in modalità personalizzata.
Crea nuove subnet a doppio stack o converti le subnet esistenti in subnet a doppio stack.
Route e regole firewall
Route
Le route definiscono i percorsi per i pacchetti che escono dalle istanze (traffico in uscita). Per informazioni dettagliate sui tipi di route di Google Cloud, consulta Route.
Modalità di routing dinamico
A ogni rete VPC è associata una modalità di routing dinamico che controlla il comportamento di tutti i suoi router Cloud. I router Cloud gestiscono le sessioni BGP per i prodotti di connettività di Google Cloud.
Per una descrizione delle opzioni della modalità di routing dinamico, consulta Effetti della modalità di routing dinamico nella documentazione del router Cloud.
Indirizzare gli annunci e gli indirizzi IP interni
I seguenti indirizzi IP vengono pubblicizzati all'interno di una rete VPC:
Indirizzi IPv4 interni regionali
Utilizzato per gli intervalli di indirizzi IPv4 della subnet principali e secondari
Indirizzi IPv6 interni ed esterni a livello di regione
Utilizzato per intervalli di indirizzi di subnet IPv6 interni ed esterni
Indirizzi IPv4 interni globali
Utilizzato per gli endpoint Private Service Connect per le API di Google
Se colleghi reti VPC utilizzando il peering di rete VPC, gli intervalli di subnet che utilizzano indirizzi IPv4 privati vengono sempre scambiati. Puoi controllare se gli intervalli di subnet che utilizzano indirizzi IPv4 pubblici utilizzati privatamente vengono scambiati. Gli indirizzi IPv4 interni globali non vengono mai scambiati utilizzando il peering. Per ulteriori dettagli, consulta la documentazione sul peering di rete VPC.
Quando colleghi una rete VPC a un'altra rete, ad esempio una rete on-premise, utilizzando un prodotto di connettività Google Cloud come Cloud VPN, Cloud Interconnect o un'appliance router:
- Puoi pubblicizzare gli indirizzi IP interni della rete VPC a un'altra rete (ad esempio una rete on-premise).
- Sebbene la connettività tra una rete VPC e un'altra rete (ad esempio una rete on-premise) possa utilizzare il routing privato fornito da un prodotto di connettività Google Cloud, gli indirizzi IP dell'altra rete potrebbero essere anche indirizzabili pubblicamente. Tieni presente questo aspetto se una rete on-premise utilizza indirizzi IP routabili pubblicamente.
- Le istanze VM in una rete VPC contenente intervalli di subnet con indirizzi IP pubblici utilizzati privatamente non sono in grado di connettersi alle risorse esterne che utilizzano gli stessi indirizzi IP pubblici.
- Presta particolare attenzione quando pubblicizzi indirizzi IP pubblici utilizzati privatamente su un'altra rete (ad esempio una rete on-premise), in particolare quando l'altra rete può pubblicizzarli su internet.
Regole firewall
Sia i criteri firewall gerarchici sia le regole firewall VPC si applicano ai pacchetti inviati da e verso le istanze VM (e le risorse che dipendono dalle VM, come i nodi Google Kubernetes Engine). Entrambi i tipi di firewall controllano il traffico anche se avviene tra VM nella stessa rete VPC.
Per monitorare la regola firewall che ha consentito o negato una determinata connessione, consulta Logging delle regole firewall.
Comunicazioni e accesso
Comunicazione all'interno della rete
I route di subnet generati dal sistema definiscono i percorsi per l'invio di traffico tra le istanze all'interno della rete utilizzando indirizzi IP interni. Affinché un'istanza possa comunicare con un'altra, devono essere configurate anche regole firewall appropriate perché ogni rete ha una regola firewall implicita per negare il traffico in entrata.
Ad eccezione della rete predefinita, devi creare esplicitamente regole firewall in entrata con priorità più elevata per consentire alle istanze di comunicare tra loro. La rete predefinita include diverse regole firewall oltre a quelle implicite, inclusa la regola default-allow-internal
, che consente la comunicazione tra istanze all'interno della rete. La rete predefinita è inoltre dotata di regole di ingresso che consentono protocolli come RDP e SSH.
Le regole fornite con la rete predefinita sono disponibili anche come opzioni da applicare alle nuove reti VPC in modalità automatica create utilizzando la console Google Cloud.
Requisiti di accesso a internet
Affinché un'istanza abbia accesso a internet in uscita, devono essere soddisfatti i seguenti criteri:
La rete deve avere una route o una route personalizzata del gateway internet predefinito valida, il cui intervallo IP di destinazione sia il più generale (
0.0.0.0/0
). Questa route definisce il percorso per raggiungere internet. Per ulteriori informazioni, consulta Percorsi.Le regole del firewall devono consentire il traffico in uscita dall'istanza. A meno che non sia sostituita da una regola di priorità più alta, la regola di autorizzazione implicita per il traffico in uscita consente il traffico in uscita da tutte le istanze.
Deve essere vera una delle seguenti condizioni:
L'istanza deve avere un indirizzo IP esterno. Un indirizzo IP esterno può essere assegnato a un'istanza al momento della sua creazione o dopo la sua creazione.
L'istanza deve essere in grado di utilizzare Cloud NAT o un proxy basato su istanze che sia la destinazione di una route
0.0.0.0/0
statica.
Comunicazioni e accesso per App Engine
Le regole firewall VPC si applicano alle risorse in esecuzione nella rete VPC, ad esempio le VM Compute Engine. Per le istanze App Engine, le regole firewall funzionano come segue:
Ambiente standard di App Engine: solo le regole firewall di App Engine si applicano al traffico in entrata. Poiché le istanze dell'ambiente standard App Engine non vengono eseguite all'interno della tua rete VPC, le regole firewall VPC non si applicano.
Ambiente flessibile di App Engine: le regole firewall di App Engine e VPC si applicano al traffico in entrata. Il traffico in entrata è consentito solo se consentito da entrambi i tipi di regole firewall. Per il traffico in uscita, si applicano le regole firewall VPC.
Per ulteriori informazioni su come controllare l'accesso alle istanze App Engine, consulta Sicurezza delle app.
Traceroute agli indirizzi IP esterni
Per motivi interni, Google Cloud aumenta il contatore TTL dei pacchetti
che attraversano gli hop successivi nella rete di Google. Strumenti come traceroute
e mtr
potrebbero fornire risultati incompleti perché il TTL non scade su alcuni degli
hop. Gli hop all'interno della rete di Google potrebbero essere nascosti quando invii
pacchetti dalle istanze Compute Engine a destinazioni su internet.
Il numero di hop nascosti varia in base a Network Service Tiers dell'istanza, alla regione e ad altri fattori. Se sono presenti solo pochi hop, è possibile che tutti
siano nascosti. I hop mancanti da un risultato traceroute
o mtr
non indicano che il traffico in uscita viene interrotto.
Non esiste una soluzione alternativa per questo comportamento. Devi tenerlo presente se configurerai il monitoraggio di terze parti che si connette a un indirizzo IP esterno associato a una VM.
Limiti di velocità in uscita
Le informazioni sul throughput della rete sono disponibili nella pagina Larghezza di banda della rete della documentazione di Compute Engine.
Dimensione del pacchetto
Puoi trovare informazioni sulle dimensioni dei pacchetti in Unità massima di trasmissione.
Unità massima di trasmissione
Per saperne di più sull'impostazione dell'unità massima di trasmissione (MTU) per una rete VPC e le relative VM collegate, consulta Unità massima di trasmissione.
Per informazioni su come modificare il valore MTU di una rete VPC o eseguire la migrazione delle VM tra reti VPC con impostazioni MTU diverse, consulta Modificare l'impostazione MTU di una rete VPC.
Protocolli supportati
Google Cloud supporta solo i seguenti protocolli e intestazioni di estensione:
- Pacchetti di dati IPv4 tra VM: tutti i protocolli IPv4.
- Pacchetti di dati IPv4 tra le VM e internet: i protocolli ICMP, IPIP, TCP, UDP, GRE, ESP, AH e SCTP.
- Pacchetti di dati IPv6 tra le VM e tra le VM e internet: i protocolli AH, ESP, GRE, ICMP, ICMPv6, IPIP, SCTP, TCP e UDP e le intestazioni di estensione Opzioni di destinazione e Frammenti. Tuttavia, non è supportato l'inserimento dell'intestazione Opzioni di destinazione dopo l'intestazione del frammento in un pacchetto di dati IPv6.
- Inoltro del protocollo:i protocolli AH, ESP, GRE, ICMP, ICMPv6, SCTP, TCP e UDP
Per consentire i pacchetti di dati dei protocolli supportati, devi configurare regole firewall o regole di inoltro dei protocolli in base ai tuoi requisiti.
Prestazioni della rete
Latenza
La latenza interregionale misurata per le reti Google Cloud è disponibile nella nostra dashboard in tempo reale. La dashboard mostra le metriche e la metodologia relative alle prestazioni di latenza interregionale e throughput medie di Google Cloud per riprodurre questi risultati utilizzando PerfKit Benchmarker.
In genere, Google Cloud misura latenze di round trip inferiori a 55 μs al 50° percentile e latenze di coda inferiori a 80 μs al 99° percentile tra istanze VM c2-standard-4 nella stessa zona.
In genere, Google Cloud misura latenze di andata e ritorno inferiori a 45 μs al 50° percentile e latenze di coda inferiori a 60 μs al 99° percentile tra le istanze VM c2-standard-4 nella stessa rete a bassa latenza (criterio di posizionamento "compatto"). Un criterio di posizionamento compatto riduce la latenza di rete garantendo che le VM si trovino fisicamente nella stessa rete a bassa latenza.
Metodologia: la latenza all'interno della zona viene monitorata tramite un prober blackbox che esegue costantemente il benchmark TCP_RR di netperf tra una coppia di VM di tipo C2 in ogni zona in cui sono disponibili istanze C2. Raccoglie i risultati P50 e P99 per la configurazione con e senza il criterio di posizionamento compatto. Il benchmark TCP_RR misura il rendimento delle richieste/risposte misurando la frequenza di transazioni. Se le tue applicazioni richiedono la latenza migliore possibile, ti consigliamo di utilizzare le istanze c2.
Perdita pacchetti
Google Cloud monitora la perdita di pacchetti tra regioni misurando regolarmente la perdita di andata e ritorno tra tutte le regioni. Il nostro obiettivo è che la media globale di queste misurazioni sia inferiore allo 0,01% .
Metodologia: un prober blackbox VM-to-VM monitora la perdita di pacchetti per ogni coppia di zone utilizzando i ping e aggrega i risultati in una metrica di perdita globale. Questa metrica viene monitorata in un periodo di un giorno.
Passaggi successivi
Provalo
Se non conosci Google Cloud, crea un account per valutare le prestazioni di VPC in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
Prova VPC gratuitamente