Accesso alle API da VM con indirizzi IP esterni
Un'istanza di macchina virtuale (VM) con un indirizzo IP esterno assegnato alla sua intera interfaccia di rete può connettersi alle API e ai servizi Google se i requisiti di rete descritti su questa pagina sono soddisfatti. Sebbene la connessione venga stabilita dall'indirizzo IP esterno della VM, il traffico rimane all'interno di Google Cloud e non viene inviato tramite la rete internet pubblica.
Requisiti di rete
Per accedere alle API e ai servizi Google da una VM con un indirizzo IP esterno, devi soddisfare i seguenti requisiti:
- Devi abilitare le API di Google che utilizzi nella console Google Cloud, nella piattaforma API pagina dei servizi.
Se vuoi connetterti alle API e ai servizi Google utilizzando IPv6, devi soddisfare entrambi i seguenti requisiti:
La VM deve essere configurata con un indirizzo IPv6
/96
esterno predefinito.Il software in esecuzione sulla VM deve inviare pacchetti le cui origini corrispondono a una di questi indirizzi IPv6.
- A seconda della configurazione scelta, potrebbe essere necessario aggiornare le voci DNS, le route e le regole firewall. Per ulteriori informazioni, vedi Riepilogo delle opzioni di configurazione.
Riepilogo delle opzioni di configurazione
La seguente tabella riassume i diversi modi in cui puoi configurare Accesso privato Google. Per informazioni più dettagliate sulla configurazione, consulta Configurazione di rete.
Opzione dominio | Configurazione DNS | Configurazione del routing | Configurazione del firewall |
---|---|---|---|
Domini predefiniti | Non è richiesta alcuna configurazione DNS speciale. | Assicurati che la tua rete VPC possa instradare il traffico agli intervalli di indirizzi IP che e vengono utilizzati dalle API e dai servizi Google.
|
Assicurati che le regole del firewall consentano l'uscita agli intervalli di indirizzi IP utilizzati dalle API e dai servizi Google. La regola firewall in uscita predefinita consente questo traffico, se non esiste una regola di priorità superiore che lo blocca. |
private.googleapis.com
|
Configura i record DNS in una zona DNS privata da inviare richieste ai seguenti indirizzi IP: Per il traffico IPv4:
Per il traffico IPv6:
|
Assicurati che la tua rete VPC route ai seguenti intervalli IP: Per il traffico IPv4:
Per il traffico IPv6:
|
Assicurati che le regole del firewall consentano l'uscita per i seguenti intervalli IP: Per il traffico IPv4:
Per il traffico IPv6:
|
restricted.googleapis.com
|
Configura i record DNS per inviare richieste ai seguenti indirizzi IP: Per il traffico IPv4:
Per il traffico IPv6:
|
Assicurati che la tua rete VPC route ai seguenti intervalli IP: Per il traffico IPv4:
Per il traffico IPv6:
|
Assicurati che le regole del firewall consentano l'uscita per i seguenti intervalli IP: Per il traffico IPv4:
Per il traffico IPv6:
|
Configurazione di rete
Questa sezione descrive i requisiti di rete di base che devi soddisfare per per una VM nella tua rete VPC per accedere alle API e ai servizi Google.
Opzioni dominio
Scegli il dominio che vuoi utilizzare per accedere alle API e ai servizi Google.
L'IP virtuale private.googleapis.com
e restricted.googleapis.com
(VIP) supportano solo i protocolli basati su HTTP su TCP (HTTP, HTTPS e HTTP/2). Tutti gli altri
tra cui MQTT e ICMP, non sono supportati.
Intervalli di indirizzi IP e di dominio | Servizi supportati | Esempio di utilizzo |
---|---|---|
Domini predefiniti. Tutti i nomi di dominio per le API e i servizi Google ad eccezione di
Vari intervalli di indirizzi IP: puoi determinare un insieme di intervalli IP contenenti gli indirizzi possibili utilizzati dai domini predefiniti con riferimento Indirizzi IP per predefiniti domini. |
Consente l'accesso API alla maggior parte delle API e dei servizi Google, indipendentemente dal fatto che siano supportati dai Controlli di servizio VPC. Include l'accesso API a Google Maps, Google Ads e Google Cloud. Sono incluse le applicazioni web di Google Workspace come Gmail e Documenti Google, e altre applicazioni web. |
I domini predefiniti vengono utilizzati quando non configuri i record DNS per
|
|
Abilita l'accesso API alla maggior parte delle API e dei servizi Google indipendentemente da se sono supportate dai Controlli di servizio VPC. Include l'accesso API a Google Maps, Google Ads, Google Cloud e la maggior parte delle altre API di Google, tra cui l'elenco che segue. Non supporta Google Workspace per il web applicazioni come Gmail e Documenti Google. Non supporta alcun sito web interattivo. Nomi di dominio corrispondenti:
|
Usa Scegli
|
|
Consente l'accesso API alle API e ai servizi di Google supportati dai Controlli di servizio VPC. Blocca l'accesso alle API e ai servizi di Google che non supportano Controlli di servizio VPC. Non supporta le API Google Workspace o le applicazioni web di Google Workspace, come come Gmail e Documenti Google. |
Utilizza Scegli Il dominio |
restricted.googleapis.com
, in quanto offre una mitigazione del rischio aggiuntiva per l'esfiltrazione di dati. L'utilizzo di restricted.googleapis.com
nega l'accesso alle API e ai servizi Google non supportati dai Controlli di servizio VPC. Consulta:
Impostazione di impostazioni private
connettività nella documentazione Controlli di servizio VPC per ulteriori dettagli.
Supporto IPv6 per private.googleapis.com
e restricted.googleapis.com
I seguenti intervalli di indirizzi IPv6 possono essere utilizzati per indirizzare il traffico da IPv6 alle API e ai servizi Google:
private.googleapis.com
:2600:2d00:0002:2000::/64
restricted.googleapis.com
:2600:2d00:0002:1000::/64
Valuta la possibilità di configurare gli indirizzi IPv6 se vuoi utilizzare il dominio private.googleapis.com
o restricted.googleapis.com
e
hanno client che utilizzano indirizzi IPv6. I client IPv6 per cui sono configurati indirizzi IPv4 possono
raggiungere le API e i servizi Google utilizzando gli indirizzi IPv4. Non tutti i servizi accettano traffico da
client IPv6.
Configurazione DNS
Per la connettività con i servizi e le API di Google, puoi scegliere di inviare i pacchetti agli indirizzi IP associati al VIP private.googleapis.com
o restricted.googleapis.com
. Per utilizzare un VIP, devi configurare il DNS in modo che le VM
nei servizi di copertura della rete VPC, utilizzando gli indirizzi VIP
anziché gli indirizzi IP pubblici.
Le sezioni seguenti descrivono come utilizzare le zone DNS per inviare pacchetti agli indirizzi IP associati al VIP scelto. Segui le istruzioni per tutti gli scenari che ti riguardano:
- Se utilizzi servizi che hanno
*.googleapis.com
nomi di dominio, vedi Configura il DNS pergoogleapis.com
. Se utilizzi servizi con altri nomi di dominio, consulta Configurare il DNS per altri domini.
Ad esempio, se utilizzi Google Kubernetes Engine (GKE), devi configurare anche
*.gcr.io
e*.pkg.dev
; oppure, se utilizzi Cloud Run, devi configurare*.run.app
.Se utilizzi i bucket Cloud Storage e invii richieste a un nome di dominio personalizzato Cloud Storage, consulta Configurare il DNS per i nomi di dominio personalizzati Cloud Storage.
Quando configuri i record DNS per i VIP, utilizza solo gli indirizzi IP
descritti nei passaggi successivi. Non combinare indirizzi da
private.googleapis.com
e restricted.googleapis.com
VIP. Questo può
possono causare errori intermittenti perché i servizi offerti sono diversi
in base alla destinazione
di un pacchetto.
Configura il DNS per googleapis.com
Crea una zona DNS e i record per googleapis.com
:
- Crea una zona DNS privata per
googleapis.com
. Prendi in considerazione la creazione di un zona privata di Cloud DNS che non ha uno scopo specifico. Nella zona
googleapis.com
, crea i seguenti record DNS privati per unoprivate.googleapis.com
orestricted.googleapis.com
, a seconda del dominio che hai scelto di utilizzare.Per
private.googleapis.com
:Crea un record
A
perprivate.googleapis.com
che rimandi ai seguenti indirizzi IP:199.36.153.8
,199.36.153.9
,199.36.153.10
,199.36.153.11
.Per connetterti alle API utilizzando indirizzi IPv6, configura anche un
AAAA
record perprivate.googleapis.com
che rimandi a2600:2d00:0002:2000::
.
Per
restricted.googleapis.com
:Crea un record
A
perrestricted.googleapis.com
che rimandi a seguenti indirizzi IP:199.36.153.4
,199.36.153.5
,199.36.153.6
,199.36.153.7
.Per connetterti alle API utilizzando indirizzi IPv6, crea anche un record
AAAA
perrestricted.googleapis.com
che rimandi a2600:2d00:0002:1000::
.
Per creare record DNS privati in Cloud DNS, consulta aggiungere un record.
Nella zona
googleapis.com
, crea un recordCNAME
per*.googleapis.com
che rimanda al dominio che hai configurato:private.googleapis.com
oppurerestricted.googleapis.com
.
Configura il DNS per altri domini
Alcune API e alcuni servizi Google vengono forniti utilizzando nomi di dominio aggiuntivi,
tra cui *.gcr.io
, *.gstatic.com
, *.pkg.dev
, pki.goog
e *.run.app
.
Consulta la tabella degli intervalli di domini e indirizzi IP in Opzioni di dominio per determinare se è possibile accedere ai servizi del dominio aggiuntivo utilizzando private.googleapis.com
o restricted.googleapis.com
. Poi, per ogni dominio aggiuntivo:
Crea una zona DNS per
DOMAIN
(ad esempiogcr.io
). Se utilizzi Cloud DNS, assicurati che questa zona si trovi nello stesso progetto della zona privatagoogleapis.com
.In questa zona DNS, crea i seguenti record DNS privati per uno
private.googleapis.com
orestricted.googleapis.com
, a seconda di quale che hai scelto di utilizzare.Per
private.googleapis.com
:Crea un record
A
perDOMAIN
che rimandi ai seguenti indirizzi IP:199.36.153.8
,199.36.153.9
,199.36.153.10
,199.36.153.11
.Per connetterti alle API utilizzando indirizzi IPv6, crea anche un'
AAAA
record perDOMAIN
che punta a2600:2d00:0002:2000::
.
Per
restricted.googleapis.com
:Crea un record
A
perDOMAIN
che rimandi ai seguenti indirizzi IP:199.36.153.4
,199.36.153.5
,199.36.153.6
,199.36.153.7
.Per connetterti alle API utilizzando indirizzi IPv6, crea anche un'
AAAA
record perrestricted.googleapis.com
che punta a2600:2d00:0002:1000::
.
Nella zona
DOMAIN
, crea un recordCNAME
per*.DOMAIN
che punta aDOMAIN
. Ad esempio, crea un recordCNAME
per*.gcr.io
che rimandi agcr.io
.
Configurare il DNS per i nomi di dominio personalizzati di Cloud Storage
Se utilizzi bucket Cloud Storage e invii richieste a un
Nome di dominio personalizzato di Cloud Storage,
configurazione dei record DNS per il nome di dominio Cloud Storage personalizzato verso cui puntare
gli indirizzi IP per private.googleapis.com
o restricted.googleapis.com
sono
non è sufficiente per
consentire l'accesso ai bucket Cloud Storage.
Se vuoi inviare richieste a un nome di dominio personalizzato Cloud Storage, devi anche impostare esplicitamente l'intestazione Host della richiesta HTTP e l'SNI TLS su storage.googleapis.com
. Gli indirizzi IP per private.googleapis.com
e restricted.googleapis.com
non supportano gli hostname Cloud Storage personalizzati nelle intestazioni Host delle richieste HTTP e negli SNI TLS.
Opzioni di routing
La rete VPC deve avere route appropriate i cui hop successivi sono il gateway internet predefinito. Google Cloud non supporta il routing il traffico verso le API e i servizi Google attraverso altre istanze VM o . Nonostante il nome gateway internet predefinito, i pacchetti inviati dalle VM nella rete VPC alle API e ai servizi Google rimangono all'interno della rete di Google.
Se selezioni i domini predefiniti, le tue istanze VM si connettono alle API di Google e servizi usando un sottoinsieme dell'indirizzo IP esterno indirizzi IP. Questi indirizzi IP sono instradabili pubblicamente, rimane il percorso di una VM in una rete VPC a questi indirizzi all'interno della rete Google.
Google non pubblica su internet route verso nessuno degli indirizzi IP utilizzati dal
private.googleapis.com
orestricted.googleapis.com
domini. Di conseguenza, questi domini sono accessibili solo dalle VM in una rete VPC oppure on-premise connessi a una rete VPC.
Se la tua rete VPC contiene un route il cui hop successivo è l'impostazione predefinita gateway internet, puoi usare la route per accedere alle API e ai servizi Google, senza dover creare route personalizzate. Per maggiori dettagli, vedi Routing con un route predefinito.
Se hai sostituito un percorso predefinito (destinazione 0.0.0.0/0
o ::0/0
) con
una route personalizzata il cui hop successivo non è il gateway internet predefinito, puoi
soddisfare i requisiti di routing per le API e i servizi Google utilizzando
il routing.
Se la tua rete VPC non dispone di una route predefinita IPv6, non avrai connettività IPv6 alle API e ai servizi Google. Aggiungi una route predefinita IPv6 per consentire Connettività IPv6.
Routing con un percorso predefinito
Ogni rete VPC contiene una route predefinita IPv4 (0.0.0.0/0
)
quando viene creato. Se abiliti gli indirizzi IPv6 esterni su una subnet,
a quel VPC viene aggiunta la route predefinita IPv6 generata dal sistema (::/0
)
in ogni rete.
Le route predefinite forniscono un percorso agli indirizzi IP per le seguenti destinazioni:
I domini predefiniti.
private.googleapis.com
:199.36.153.8/30
e2600:2d00:0002:2000::/64
.restricted.googleapis.com
:199.36.153.4/30
e2600:2d00:0002:1000::/64
.
Per controllare la configurazione di una route predefinita in una determinata rete, segui queste indicazioni.
Console
Nella console Google Cloud, vai alla pagina Route.
Filtra l'elenco di route per visualizzare solo quelle della rete da esaminare.
Cerca una route la cui destinazione è
0.0.0.0/0
per il traffico IPv4 o::/0
per il traffico IPv6 e il cui hop successivo è gateway internet predefinito.
gcloud
Utilizza il seguente comando gcloud
, sostituendo NETWORK_NAME
con il nome della rete da ispezionare:
gcloud compute routes list \ --filter="default-internet-gateway NETWORK_NAME"
Se devi creare una route IPv4 predefinita sostitutiva, consulta Aggiunta di una route statica percorso.
Se devi creare una route IPv6 predefinita sostitutiva, consulta Aggiunta di una route IPv6 route predefinita.
Routing personalizzato
In alternativa a una route predefinita, puoi usare route statiche personalizzate, con una destinazione più specifica e ognuna che utilizza il gateway internet predefinito nell'hop successivo. Il numero di route necessarie e i relativi indirizzi IP di destinazione dipendono dal dominio che scegli.
- Domini predefiniti: devi disporre di route per gli intervalli di indirizzi IP per le API e i servizi Google.
private.googleapis.com
:199.36.153.8/30
e2600:2d00:0002:2000::/64
restricted.googleapis.com
:199.36.153.4/30
e2600:2d00:0002:1000::/64
Inoltre, ti consigliamo di aggiungere percorsi per 34.126.0.0/18
e 2001:4860:8040::/42
. Per ulteriori informazioni, consulta Riepilogo delle opzioni di configurazione.
Per controllare la configurazione delle route personalizzate per le API e i servizi Google in una determinata rete, segui queste istruzioni.
Console
Nella console Google Cloud, vai alla pagina Route.
Utilizza il campo di testo Filtra tabella per filtrare l'elenco di route utilizzando i seguenti criteri, sostituendo
NETWORK_NAME
con il nome della tua rete VPC.- Rete:
NETWORK_NAME
- Tipo di hop successivo:
default internet gateway
- Rete:
Esamina la colonna Intervallo IP di destinazione per ogni route. Se scegli i domini predefiniti, verifica la presenza di diverse route statiche personalizzate, una ogni intervallo di indirizzi IP utilizzato dal dominio predefinito. Se hai scelto
private.googleapis.com
orestricted.googleapis.com
, cerca l'intervallo IP del dominio.
gcloud
Utilizza il seguente comando gcloud
, sostituendo NETWORK_NAME
con il nome della rete da ispezionare:
gcloud compute routes list \ --filter="default-internet-gateway NETWORK_NAME"
Le route sono elencate in formato tabella, a meno che non personalizzi il comando con
--format
flag. Cerca la destinazione di ogni percorso nella colonna DEST_RANGE
. Se hai scelto i domini predefiniti, verifica la presenza di diverse
una per ogni intervallo di indirizzi IP usato per impostazione predefinita
dominio. Se hai scelto private.googleapis.com
o
restricted.googleapis.com
, cerca l'intervallo IP di quel dominio.
Se è necessario creare route, consulta Aggiunta di una route statica percorso.
Configurazione del firewall
La configurazione del firewall della rete VPC deve consentire l'accesso
dalle VM agli indirizzi IP usati dalle API e dai servizi Google. La regola implicita
allow egress
soddisfa questo requisito.
In alcune configurazioni firewall, devi creare regole di autorizzazione in uscita specifiche.
Ad esempio, supponiamo che tu abbia creato una regola di rifiuto in uscita che blocchi il traffico verso tutte le destinazioni (0.0.0.0
per IPv4 o ::/0
per IPv6). In questo caso, devi creare una regola firewall di uscita consentita la cui priorità è superiore alla regola di divieto di uscita per ogni intervallo di indirizzi IP utilizzato dal dominio scelto per le API e i servizi Google.
- Domini predefiniti: tutti gli intervalli di indirizzi IP per le API e i servizi Google.
private.googleapis.com
:199.36.153.8/30
e2600:2d00:0002:2000::/64
restricted.googleapis.com
:199.36.153.4/30
e2600:2d00:0002:1000::/64
Inoltre, ti consigliamo di includere 34.126.0.0/18
e
2001:4860:8040::/42
nella regola del firewall che consente l'uscita. Per maggiori informazioni
informazioni, consulta Riepilogo delle opzioni di configurazione.
Per creare regole firewall, consulta la sezione Creazione di un firewall. . Puoi limitare le VM a cui vengono applicate le regole firewall quando definisci il target di ogni regola di autorizzazione in uscita.
Indirizzi IP per i domini predefiniti
Questa sezione descrive come creare un elenco di intervalli IP dei domini predefiniti utilizzati dalle API e dai servizi Google, ad esempio *.googleapis.com
e *.gcr.io
. Questi
vengono allocati in modo dinamico e
spesso, quindi non è possibile definire intervalli IP specifici per i singoli servizi
o API. Per mantenere un elenco accurato, configura l'automazione per eseguire lo script ogni
giorno. Per alternative alla gestione di un elenco di intervalli di indirizzi IP, valuta la possibilità di utilizzare
private.googleapis.com VIP
o Private Service Connect.
Google pubblica l'elenco completo degli intervalli IP che mette a disposizione degli utenti su internet in goog.json.
Google pubblica inoltre un elenco degli intervalli di indirizzi IP esterni globali e a livello di area geografica disponibili per le risorse Google Cloud dei clienti in cloud.json.
Gli indirizzi IP utilizzati dai domini predefiniti per le API e i servizi Google sono adatti
all'interno dell'elenco di intervalli calcolato rimuovendo tutti gli intervalli in cloud.json
da quelli di goog.json
. Questi elenchi vengono aggiornati di frequente.
Puoi utilizzare il seguente script Python per creare un elenco di intervalli di indirizzi IP che includono quelli utilizzati dai domini predefiniti per le API e i servizi Google.
Per informazioni sull'esecuzione di questo script, consulta Come vengono eseguiti.