Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Configurazione dell'accesso privato ai servizi

L'accesso privato ai servizi è una connessione privata tra la tua rete VPC e una rete di proprietà di Google o di terze parti. Google o le terze parti, che offrono servizi, sono chiamate anche produttori di servizi. La connessione privata consente le istanze VM nella tua rete VPC e i servizi a cui accedi per comunicare in modo esclusivo utilizzando indirizzi IP interni. Le istanze VM non hanno bisogno di accesso a Internet o di indirizzi IP esterni per raggiungere i servizi disponibili tramite l'accesso privato ai servizi.

Per scoprire di più sull'accesso privato ai servizi e su altre opzioni di accesso privato, consulta l'articolo Opzioni di accesso privato per i servizi.

A livello generale, per utilizzare l'accesso privato ai servizi, devi allocare un intervallo di indirizzi IP (blocco CIDR) nella rete VPC e poi creare una connessione privata a un producer di servizi.

Prima di iniziare

Per stabilire una connessione privata, completa i seguenti prerequisiti:

  • Verifica che il servizio che stai utilizzando supporti l'accesso privato ai servizi.
  • Devi avere una rete VPC esistente che utilizzerai per connetterti alla rete del producer di servizi. Le istanze VM devono utilizzare questa rete VPC per connettersi ai servizi tramite una connessione privata.
  • Attiva l'API Service Networking nel tuo progetto. L'API è necessaria per creare una connessione privata.
  • Crea un progetto Cloud o scegline uno esistente. Per scoprire come creare un progetto Cloud, consulta Creazione e gestione dei progetti.
  • Installa l'interfaccia a riga di comando gcloud se vuoi eseguire gli esempi di riga di comando gcloud in questa guida.

Autorizzazioni

I proprietari del progetto e i membri IAM con il ruolo di amministratore di rete Compute (roles/compute.networkAdmin) possono creare intervalli di indirizzi IP allocati e gestire le connessioni private.

Per ulteriori informazioni sui ruoli, leggi la documentazione sui ruoli IAM VPC.

Scenario VPC condiviso

Se utilizzi VPC condiviso, crea l'intervallo IP allocato e la connessione privata nel progetto host. Di solito, un amministratore di rete nel progetto host deve eseguire queste attività. Una volta configurato il progetto host, le istanze VM nei progetti di servizio possono utilizzare la connessione privata.

Quote e limiti

Poiché una connessione privata viene implementata come connessione di peering VPC, le stesse quote e limiti che si applicano al peering di rete VPC si applicano anche all'accesso dei servizi privati.

Alloca intervalli di indirizzi IP

Prima di creare una connessione privata, devi allocare un intervallo di indirizzi IPv4 che verrà utilizzato dalla rete VPC del producer di servizi. Ciò garantisce che non vi sia alcuna collisione di indirizzi IP tra la tua rete VPC e la rete del producer di servizi. Creare un intervallo allocato per ogni producer di servizi.

Quando assegni un intervallo nella rete VPC, tale intervallo non è idoneo per le subnet (intervalli primari e secondari) e le destinazioni di route statiche personalizzate.

L'utilizzo di intervalli di indirizzi IPv6 con accesso ai servizi privati non è supportato.

Dimensione intervallo di indirizzi IP

Intervalli di accesso ai servizi privati (fai clic per ingrandire)

Quando un producer di servizi crea una subnet sul lato della connessione, viene selezionato un intervallo aperto dall'allocazione per l'intervallo di indirizzi IP della subnet.

Ogni producer di servizi richiede dimensioni minime per l'intervallo di indirizzi IP. Per Google, la dimensione minima è un singolo blocco /24 (256 indirizzi), ma la dimensione consigliata è un blocco /16 (65.536 indirizzi).

La dimensione scelta dipende da diversi fattori, ad esempio:

  • Il numero di servizi e regioni che utilizzi.
  • I requisiti per i servizi che utilizzi.
    • La dimensione minima dell'intervallo di indirizzi IP per i servizi.
    • Indica se il provider di servizi richiede intervalli IP separati per ciascuna istanza del servizio che crei o se può utilizzare lo stesso intervallo IP per più istanze del servizio.

Se non hai un blocco /16 contiguo, puoi iniziare con un'allocazione più piccola e aggiungerne di nuovi, se hai bisogno di più indirizzi IP in un secondo momento.

Informazioni sulla subnet del producer di servizi

Quando stabilisci una connessione privata e crei una risorsa con un indirizzo IP privato, il servizio crea una subnet in cui eseguire il provisioning della risorsa. Il servizio seleziona un intervallo di indirizzi IP disponibile dall'intervallo allocato. Non puoi selezionare o modificare l'intervallo di indirizzi IP della subnet del producer di servizi. La subnet viene eliminata dal servizio solo quando elimini tutte le risorse al suo interno.

Quando esegui il provisioning di risorse aggiuntive, il servizio ne esegue il provisioning in subnet a livello di regione esistenti create in precedenza. Se una subnet è piena, il servizio ne crea una nuova in quella regione.

Considerazioni

Prima di allocare un intervallo di indirizzi IP, considera i seguenti vincoli:

  • Seleziona un intervallo che non si sovrapponga a intervalli assegnati esistenti, subnet o route statiche personalizzate. Nessun intervallo può sovrapporsi.
  • Se utilizzi una rete VPC in modalità automatica, non puoi creare un intervallo allocato che corrisponda o si sovrappone a 10.128.0.0/9. Questo intervallo si applica alle subnet create automaticamente.
  • Seleziona un blocco CIDR abbastanza grande da soddisfare le tue esigenze attuali e future. Se in seguito ti accorgi che le dimensioni non sono sufficienti, espandi l'intervallo se possibile. Anche se puoi assegnare più allocazioni a un singolo producer di servizi, Google applica una quota al numero di intervalli di indirizzi IP che puoi allocare, ma non alle dimensioni (netmask) di ogni intervallo.
  • Se aggiungi un altro intervallo allocato a una connessione privata, questo espande l'intervallo di indirizzi IP disponibili per il producer di servizi quando crea nuove risorse di servizio per qualsiasi servizio fornito. Non puoi prenotare un intervallo specifico allocato all'interno di una connessione privata per l'utilizzo da parte di un determinato servizio.
  • Non riutilizzare lo stesso intervallo assegnato per più produttori di servizi. Sebbene sia possibile, ciò può causare una sovrapposizione di indirizzi IP. Ogni producer di servizi ha visibilità solo sulla propria rete e non può sapere quali indirizzi IP utilizzano altri producer di servizi.
  • Puoi assegnare un solo blocco CIDR a un intervallo allocato durante la creazione dell'allocazione. Se devi espandere l'intervallo di indirizzi IP, non puoi aggiungere altri blocchi a un'allocazione. In alternativa, puoi creare un'altra allocazione o ricreare quella esistente utilizzando un blocco più grande che includa gli intervalli nuovi ed esistenti.
  • Se crei l'allocazione autonomamente invece di Google (ad esempio tramite Cloud SQL), puoi utilizzare la stessa convenzione di denominazione per segnalare ad altri utenti o servizi Google che esiste già un'allocazione per Google. Quando un servizio Google alloca un intervallo per tuo conto, utilizza il seguente formato per assegnare un nome all'allocazione: google-managed-services-[your network name]. Se esiste questa allocazione, i servizi Google usano quella esistente invece di crearne un'altra.

Crea un'allocazione degli indirizzi IP

I seguenti passaggi descrivono come creare un intervallo di indirizzi IP allocato.

Console

  1. Vai alla pagina Reti VPC nella console Google Cloud.
    Vai alla pagina Reti VPC
  2. Seleziona la rete VPC che si connetterà a un producer di servizi.
  3. Seleziona la scheda Connessione di servizio privata.
  4. Nella scheda Connessione di servizio privata, seleziona la scheda Intervalli IP allocati per i servizi.
  5. Fai clic su Intervallo IP allocato.
  6. Inserisci un Nome e una Descrizione per l'intervallo assegnato.
  7. Specifica un intervallo IP per l'allocazione:

    • Per specificare un intervallo di indirizzi IP, seleziona Personalizzato, quindi inserisci un blocco CIDR, ad esempio 192.168.0.0/16.
    • Per specificare una lunghezza del prefisso e consentire a Google di selezionare un intervallo disponibile, seleziona Automatico, quindi inserisci una lunghezza del prefisso, ad esempio 16.
  8. Fai clic su Alloca per creare l'intervallo assegnato.

gcloud

Crea un intervallo allocato nella tua rete VPC.

  • Per specificare un intervallo di indirizzi e una lunghezza prefisso (subnet mask), utilizza i flag addresses e prefix-length. Ad esempio, per allocare il blocco CIDR 192.168.0.0/16, specifica 192.168.0.0 per l'indirizzo e 16 per la lunghezza del prefisso.

    gcloud compute addresses create RESERVED_RANGE_NAME \
        --global \
        --purpose=VPC_PEERING \
        --addresses=192.168.0.0 \
        --prefix-length=16 \
        --description="DESCRIPTION" \
        --network=VPC_NETWORK
    
  • Per specificare solo una lunghezza del prefisso (subnet mask), utilizza solo il flag prefix-length. Quando ometti l'intervallo di indirizzi, Google Cloud seleziona automaticamente un intervallo di indirizzi non utilizzato nella rete VPC. L'esempio seguente seleziona un intervallo di indirizzi IP non utilizzato con una lunghezza del prefisso di 16 bit.

    gcloud compute addresses create RESERVED_RANGE_NAME \
        --global \
        --purpose=VPC_PEERING \
        --prefix-length=16 \
        --description="DESCRIPTION" \
        --network=VPC_NETWORK
    

Sostituisci i seguenti segnaposto con valori pertinenti:

  • RESERVED_RANGE_NAME: un nome per l'intervallo allocato, ad esempio my-allocated-range.

  • DESCRIPTION: una descrizione per l'intervallo, ad esempio allocated for my-service.

  • VPC_NETWORK il nome della rete VPC, ad esempio my-vpc-network.

L'esempio seguente crea una connessione privata a Google in modo che le istanze VM nella rete VPC my-network possano utilizzare l'accesso privato ai servizi per raggiungere i servizi Google che lo supportano.

gcloud compute addresses create google-managed-services-my-network \
    --global \
    --purpose=VPC_PEERING \
    --prefix-length=16 \
    --description="peering range for Google" \
    --network=my-network \
    --project=my-project

Terraform

Per creare un intervallo allocato nella tua rete VPC, utilizza la risorsa google_compute_global_address.

resource "google_compute_global_address" "private_ip_address" {
  name          = "private-ip-address"
  purpose       = "VPC_PEERING"
  address_type  = "INTERNAL"
  prefix_length = 16
  network       = google_compute_network.peering_network.id
}

Per scoprire come applicare o rimuovere una configurazione Terraform, vedi Comandi Terraform di base.

Se viene visualizzato un errore relativo all'autorizzazione compute.globalAddresses.list per il progetto, consulta Autorizzazioni dell'account di servizio.

Elenca gli intervalli di indirizzi IP allocati

Puoi elencare gli intervalli con il flag --filter per vedere quali intervalli puoi utilizzare per l'accesso ai servizi privati. Filtra in base a intervalli con lo scopo VPC_PEERING, come mostrato nell'esempio seguente:

gcloud compute addresses list --global --filter="purpose=VPC_PEERING"

Eliminare un intervallo di indirizzi IP allocato

Prima di eliminare un intervallo di indirizzi IP allocato, verifica che non venga utilizzato da nessuna connessione privata. Puoi eliminare o modificare una connessione privata esistente per annullare l'associazione dell'intervallo assegnato. In caso contrario, le connessioni esistenti rimangono attive, ma non esiste nulla che impedisca al tuo VPC di utilizzare indirizzi IP che si sovrappongono alla rete del producer di servizi. Inoltre, il servizio non può creare nuove subnet perché non esiste un intervallo di indirizzi IP allocato da poter selezionare.

Console

  1. Vai alla pagina Reti VPC nella console Google Cloud.
    Vai alla pagina Reti VPC
  2. Seleziona la rete VPC che contiene le allocazioni da eliminare.
  3. Seleziona la scheda Connessione di servizio privata.
  4. Nella scheda Connessione di servizio privata, seleziona la scheda Intervalli IP allocati per i servizi.
  5. Seleziona l'allocazione da eliminare.
  6. Fai clic su Rilascia per restituire l'intervallo di indirizzi IP allocato al pool di indirizzi IP interni disponibili della rete.

    Se l'intervallo di indirizzi IP allocato è ancora assegnato a una connessione esistente, devi inserire un'ulteriore conferma prima di poter rilasciare l'allocazione.

  7. Fai di nuovo clic su Release per confermare l'eliminazione.

gcloud

Elimina l'allocazione specificando il nome della tua allocazione.

gcloud compute addresses delete NAME \
    --global

Crea una connessione privata

Dopo aver creato un intervallo assegnato, puoi creare una connessione privata a un producer di servizi. La connessione privata stabilisce una connessione di peering di rete VPC tra la tua rete VPC e la rete del producer di servizi.

Le connessioni private sono una relazione one-to-one tra la tua rete VPC e un producer di servizi. Se un singolo producer di servizi offre più servizi, hai bisogno di una sola connessione privata per tutti i servizi del producer.

Se un singolo producer di servizi offre più servizi e vuoi controllare quali intervalli allocati vengono utilizzati per risorse di servizio diverse, puoi utilizzare più reti VPC, ciascuna con le proprie connessioni private. Questa configurazione consente di selezionare una particolare rete durante la creazione di una nuova risorsa di servizio gestita per garantire che gli intervalli assegnati associati vengano utilizzati per la nuova risorsa.

Se ti connetti a più producer di servizi, utilizza un'allocazione unica per ogni producer di servizi. In questo modo è possibile gestire le impostazioni della rete, come route e regole firewall, per ogni producer di servizi.

Console

  1. Vai alla pagina Reti VPC nella console Google Cloud.
    Vai alla pagina Reti VPC
  2. Seleziona la rete VPC che si connetterà a un producer di servizi.
  3. Seleziona la scheda Connessione di servizio privata.
  4. Nella scheda Connessione di servizio privata, seleziona la scheda Connessioni private ai servizi.
  5. Fai clic su Crea connessione per creare una connessione privata tra la tua rete e un producer di servizi.
  6. Per l'allocazione assegnata, seleziona uno o più intervalli allocati esistenti che non siano utilizzati da altri produttori di servizi.
  7. Fai clic su Connetti per creare la connessione.

gcloud

  1. Creare una connessione privata.

    gcloud services vpc-peerings connect \
        --service=servicenetworking.googleapis.com \
        --ranges=RESERVED_RANGE_NAME \
        --network=VPC_NETWORK \
        --project=PROJECT_ID
    

    Sostituisci i seguenti segnaposto con valori pertinenti:

    • RESERVED_RANGE_NAME: il nome di uno o più intervalli allocati.

    • VPC_NETWORK: il nome della tua rete VPC.

    • PROJECT_ID: l'ID del progetto che contiene la tua rete VPC.

    Il comando avvia un'operazione a lunga esecuzione, restituendo il nome di un'operazione.

  2. Controllare se l'operazione è riuscita.

    gcloud services vpc-peerings operations describe \
        --name=OPERATION_NAME
    

    Sostituisci OPERATION_NAME con il nome dell'operazione restituito dal passaggio precedente.

Puoi specificare più di un intervallo allocato quando crei una connessione privata. Ad esempio, se un intervallo è esaurito, puoi assegnare intervalli allocati aggiuntivi. Il servizio utilizzerà gli indirizzi IP di tutti gli intervalli forniti nell'ordine da te specificato.

Terraform

Per creare una connessione privata, utilizza la risorsa google_service_networking_connection.

resource "google_service_networking_connection" "default" {
  network                 = google_compute_network.peering_network.id
  service                 = "servicenetworking.googleapis.com"
  reserved_peering_ranges = [google_compute_global_address.private_ip_address.name]
}

Elenca connessioni private

Dopo aver creato una connessione privata, puoi elencarla per verificare che esista. L'elenco mostra anche l'elenco degli intervalli assegnati associati a ogni connessione. Ad esempio, se non ricordi quale intervallo assegnato è stato assegnato a una connessione, visualizza l'elenco per scoprirlo.

Console

  1. Vai alla pagina Reti VPC nella console Google Cloud.
    Vai alla pagina Reti VPC
  2. Seleziona la rete VPC che contiene le connessioni.
  3. Seleziona la scheda Connessione di servizio privata.
  4. Nella scheda Connessione di servizio privata, seleziona la scheda Connessioni private ai servizi per visualizzare tutte le connessioni private della rete.

gcloud

Elenca le connessioni private nella tua rete VPC.

gcloud services vpc-peerings list \
    --network=VPC_NETWORK \
    --project=PROJECT_ID

Sostituisci VPC_NETWORK e PROJECT_ID con il nome della rete VPC e l'ID progetto.

Modificare una connessione privata

Per le connessioni private esistenti, puoi aggiungere o rimuovere intervalli di indirizzi IP allocati senza interrompere il traffico. Ad esempio, man mano che cresce, potresti aggiungere un intervallo allocato se stai per esaurire quello esistente.

Non puoi rimuovere gli intervalli IP allocati utilizzando la console Google Cloud. Se vuoi rimuovere un intervallo allocato, segui le istruzioni gcloud per modificare la connessione. Quando rimuovi un intervallo da una connessione privata, si applica quanto segue:

  • L'intervallo allocato non è più associato alla connessione privata, ma non viene eliminato.

  • Le risorse producer di servizi esistenti potrebbero continuare a utilizzare l'intervallo rimosso.

  • L'accesso privato ai servizi non utilizzerà gli intervalli rimossi per allocare nuove subnet.

Console

  1. Vai alla pagina Reti VPC nella console Google Cloud.
    Vai alla pagina Reti VPC
  2. Seleziona la rete VPC che contiene le connessioni.
  3. Seleziona la scheda Connessione di servizio privata.
  4. Nella scheda Connessione di servizio privata, seleziona la scheda Connessioni private ai servizi per visualizzare tutte le connessioni private della rete.
  5. Fai clic sul nome di una connessione nell'elenco.
  6. Nel menu a discesa Assegnazione assegnata, seleziona gli intervalli da allocare.
  7. Fai clic su OK.

gcloud

Aggiungi o rimuovi gli intervalli di indirizzi IP assegnati assegnati su una connessione privata esistente.

gcloud services vpc-peerings update \
    --service=servicenetworking.googleapis.com \
    --ranges=RESERVED_RANGE_NAME \
    --network=VPC_NETWORK \
    --project=PROJECT_ID \
    [--force]

Sostituisci i seguenti segnaposto con valori pertinenti:

  • RESERVED_RANGE_NAME: elenco di uno o più nomi di intervalli allocati da assegnare alla connessione privata.

    RESERVED_RANGE_NAME sostituisce l'elenco precedente di intervalli allocati. Se ometti un intervallo che in precedenza era associato a questa connessione privata, l'intervallo viene rimosso dalla connessione. Per rimuovere un intervallo, devi utilizzare l'opzione --force.

  • VPC_NETWORK: il nome della tua rete VPC.

  • PROJECT_ID: è il nome dell'ID progetto della tua rete.

Elimina una connessione privata

Prima di eliminare una connessione privata, devi eliminare tutte le istanze di servizio a cui accedi tramite la connessione. Ad esempio, se vuoi eliminare una connessione privata utilizzata per accedere a Cloud SQL, devi prima eliminare le istanze Cloud SQL che la utilizzano. Una volta eliminate le istanze di servizio, le risorse del producer di servizi vengono eliminate, ma questa eliminazione potrebbe non avvenire immediatamente. Alcuni producer di servizi ritardano l'eliminazione fino al termine di un periodo di attesa. Non puoi eliminare la connessione privata durante il periodo di attesa. Devi attendere che le risorse del producer di servizi siano state eliminate prima di poter eliminare la connessione.

Ad esempio, se elimini un'istanza di Cloud SQL, ricevi una risposta positiva, ma il servizio attende quattro giorni prima di eliminare le risorse del producer di servizi. Il periodo di attesa significa che se cambi idea sull'eliminazione del servizio, puoi richiedere il reintegro delle risorse. Se tenti di eliminare la connessione durante il periodo di attesa, l'eliminazione non riesce con un messaggio che informa che le risorse sono ancora utilizzate dal producer di servizi.

Console

  1. Vai alla pagina Reti VPC nella console Google Cloud.
    Vai alla pagina Reti VPC
  2. Seleziona la rete VPC che contiene le connessioni da eliminare.
  3. Seleziona la scheda Connessione di servizio privata.
  4. Nella scheda Connessione di servizio privata, seleziona la scheda Connessione privata ai servizi.
  5. Seleziona la connessione privata da eliminare.
  6. Fai clic su Elimina per eliminare.
  7. Fai di nuovo clic su Elimina per confermare l'eliminazione.

gcloud

Elimina la connessione di peering di rete VPC della connessione privata.

gcloud services vpc-peerings delete \
        --service=servicenetworking.googleapis.com \
        --network=VPC_NETWORK \
        --project=PROJECT_ID

Sostituisci i seguenti segnaposto con valori pertinenti:

  • VPC_NETWORK il nome della rete VPC.

  • PROJECT_ID l'ID del tuo progetto.

Condividere le zone DNS private con i producer di servizi

Le zone private di Cloud DNS sono private per la tua rete VPC. Se vuoi consentire a una rete di producer di servizi di risolvere i nomi dalla tua zona privata, puoi configurare il peering DNS tra le due reti.

Quando configuri il peering DNS, fornisci una rete VPC e un suffisso DNS. Se il producer di servizi deve risolvere un indirizzo con quel suffisso DNS, inoltra queste query alla rete VPC per risolvere il problema.

Questi servizi supportati supportano il peering DNS, ad eccezione di Cloud SQL.

Se vuoi abilitare il peering DNS, devi abilitare l'API Cloud DNS nel tuo progetto

DNS peer con un producer di servizi

gcloud

Configurare il peering DNS tra la rete VPC e la rete del provider di servizi.

gcloud services peered-dns-domains create PEERING_NAME \
    --network=VPC_NETWORK \
    --dns-suffix=DNS_SUFFIX

Sostituisci i seguenti segnaposto con valori pertinenti:

  • PEERING_NAME: un nome per questa configurazione del peering DNS.

  • VPC_NETWORK: il nome della tua rete VPC connessa al producer di servizi utilizzando l'accesso privato ai servizi.

  • DNS_SUFFIX: il suffisso DNS che vuoi peering con il producer di servizi. Devi fornire un nome di dominio DNS completo, incluso il punto. Ad esempio, example.com. è un suffisso DNS valido.

Terraform

Per configurare il peering DNS tra la tua rete VPC e la rete del provider di servizi, utilizza la risorsa google_service_networking_peered_dns_domain.


## Uncomment this block after adding a valid DNS suffix

# resource "google_service_networking_peered_dns_domain" "default" {
#   name       = "example-com"
#   network    = google_compute_network.peering_network.name
#   dns_suffix = "example.com."
#   service    = "servicenetworking.googleapis.com"
# }

Elenca configurazioni di peering DNS

gcloud

Elenca i domini DNS in peering in una rete VPC.

gcloud services peered-dns-domains list \
    --network=VPC_NETWORK

Sostituisci i seguenti segnaposto con valori pertinenti:

  • VPC_NETWORK: il nome della tua rete VPC.

Elimina una configurazione di peering DNS

gcloud

Elimina un dominio DNS in peering.

gcloud services peered-dns-domains delete PEERING_NAME \
    --network=VPC_NETWORK

Sostituisci i seguenti segnaposto con valori pertinenti:

  • PEERING_NAME: il nome della configurazione del peering DNS.

  • VPC_NETWORK: il nome della rete VPC.

Risolvere i problemi

Quanto della mia allocazione viene utilizzata?

Quando crei una connessione privata con un producer di servizi, allochi un intervallo di indirizzi IP da utilizzare. Se utilizzi più servizi di un producer di servizi, ogni servizio riserva un blocco di indirizzi IP da quell'intervallo assegnato. Puoi controllare quali servizi utilizzano quali indirizzi IP in modo da, ad esempio, vedere quali servizi utilizzano grandi blocchi di indirizzi IP ed evitare l'esaurimento degli indirizzi IP.

Per visualizzare quale servizio utilizza un determinato intervallo di indirizzi IP:

  1. Elenca le tue connessioni private.
  2. Trova il nome della connessione in peering che ti connette al producer di servizi pertinente.
  3. Elenca le route per la tua rete VPC.
  4. Trova le route con un hop successivo che corrispondono al nome della connessione in peering. L'intervallo di destinazione delle route indica gli indirizzi IP utilizzati da ogni servizio.

Esaurimento dell'intervallo di indirizzi IP

Se esaurisci lo spazio di indirizzi IP allocato per una determinata connessione privata, Google Cloud restituirà questo errore: Failed to create subnetwork. Couldn't find free blocks in allocated IP ranges.

Puoi espandere l'allocazione esistente o aggiungerne di nuove. L'allocazione espansa deve essere un intervallo di indirizzi IP contiguo che include l'intervallo esistente. Consigliamo di espandere un'allocazione perché non esistono limiti relativi alle dimensioni di un'allocazione, ma esiste un limite al numero di allocazioni che puoi creare.

Per espandere un'allocazione esistente:

  1. Elenca le tue connessioni private e registra il nome dell'intervallo assegnato che devi espandere.
  2. Elimina l'intervallo allocato esistente.
  3. Crea un nuovo intervallo assegnato utilizzando lo stesso nome dell'intervallo eliminato. Specifica un intervallo di indirizzi IP che includa quello eliminato. In questo modo, le risorse in peering esistenti che utilizzano il vecchio intervallo allocato possono continuare a utilizzare gli stessi indirizzi IP senza collidere con le risorse nella rete VPC. Ad esempio, se l'intervallo allocato precedente era 192.168.0.0/20, crea un nuovo intervallo allocato come 192.168.0.0/16.

Per aggiungere intervalli allocati a una connessione privata esistente:

  1. Crea un nuovo intervallo assegnato. Questo intervallo non deve essere contiguo con gli intervalli allocati esistenti.
  2. Aggiungi l'intervallo allocato alla connessione privata esistente.

Gli host on-premise non possono comunicare con la rete del producer di servizi

La rete del producer di servizi potrebbe non avere le route corrette per indirizzare il traffico alla tua rete on-premise. Per impostazione predefinita, la rete del producer di servizi impara solo le route delle subnet dalla rete VPC. Di conseguenza, tutte le richieste che non provengono da un intervallo IP di subnet vengono ignorate dal producer di servizi.

Nella rete VPC, aggiorna la connessione in peering per esportare le route personalizzate nella rete del producer di servizi. L'esportazione delle route invia tutte le route statiche e dinamiche idonee che si trovano nella tua rete VPC, ad esempio le route alla tua rete on-premise, alla rete del producer di servizi. La rete del producer di servizi li importa automaticamente e quindi può inviare nuovamente il traffico alla tua rete on-premise tramite la rete VPC.

Autorizzazioni account di servizio

Se viene visualizzato un errore relativo all'autorizzazione compute.globalAddresses.list per un progetto durante la creazione di un'allocazione degli indirizzi IP oppure se riscontri errori quali Error 400: Precondition check failed durante la creazione, l'elenco o la modifica di connessioni private, potrebbe essersi verificato un problema con i ruoli di Identity and Access Management (IAM) per l'account di servizio dell'API Service Networking. Questo account di servizio viene creato automaticamente dopo che hai abilitato l'API Service Networking. Il provisioning dell'account e il relativo rendering nella pagina IAM possono richiedere tempo.

Console

Per assicurarti che l'account di servizio abbia il ruolo IAM corretto:

  1. Nella console Google Cloud, vai alla pagina IAM.

    Vai a IAM

  2. Seleziona la casella di controllo Includi concessioni di ruoli fornite da Google.

  3. Nella colonna Nome, individua l'agente di servizio Service Networking e fai clic su Modifica entità nella riga corrispondente.

  4. Nel campo Ruolo, assicurati che sia presente il ruolo Agente di servizio Networking di servizio (roles/servicenetworking.serviceAgent).

  5. Se il ruolo Agente di servizio Service Networking non è presente, fai clic su Aggiungi ruolo o Aggiungi un altro ruolo.

  6. Fai clic su Seleziona un ruolo.

  7. Nella casella di testo Filtro, inserisci Service Networking Service Agent.

  8. Seleziona Service Networking Service Agent (Agente di servizio di Networking) dall'elenco, quindi fai clic su Salva.

gcloud

Per creare un account di servizio dell'API Service Networking, utilizza il comando add-iam-policy-binding.

gcloud projects add-iam-policy-binding HOST_PROJECT_NAME \
    --member=serviceAccount:service-HOST_PROJECT_NUMBER@service-networking.iam.gserviceaccount.com \
    --role=roles/servicenetworking.serviceAgent

Sostituisci quanto segue:

  • HOST_PROJECT_NAME: il nome del progetto host
  • HOST_PROJECT_NUMBER: il numero del progetto host