Configura e gestisci la Network Address Translation con Private NAT
Questa pagina descrive come configurare la Network Address Translation (NAT) private-to-private in Cloud NAT.
Prima di iniziare
Completa le seguenti attività prima di configurare NAT privato.
Esamina le specifiche di NAT privato
Consulta le seguenti specifiche e requisiti:
- Per le specifiche generali, vedi NAT privato.
- Per il traffico tra gli spoke di un hub Network Connectivity Center, inclusi gli spoke VPC e gli spoke ibridi, consulta la sezione Private NAT per gli spoke di Network Connectivity Center.
- Per il traffico tra le reti Virtual Private Cloud (VPC) e le reti non-Google Cloud tramite Cloud Interconnect o Cloud VPN, consulta Hybrid NAT.
Ottieni autorizzazioni IAM
Il ruolo Amministratore di rete Compute
(roles/compute.networkAdmin
) ti concede le autorizzazioni per creare un gateway NAT su
router Cloud, riservare e assegnare indirizzi IP NAT e specificare
le subnet il cui traffico deve utilizzare la Network Address Translation tramite
il gateway NAT.
Configura Google Cloud
Prima di iniziare, configura i seguenti elementi in Google Cloud.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Puoi impostare un ID progetto con il seguente comando:
gcloud config set project PROJECT_ID
Puoi anche visualizzare un ID progetto già impostato:
gcloud config list --format='text(core.project)'
Nella console Google Cloud , vai alla pagina Reti VPC.
Per visualizzare la pagina dei dettagli della rete VPC, fai clic sul nome di una rete VPC.
Fai clic sulla scheda Subnet.
Fai clic su Aggiungi subnet. Nella finestra di dialogo Aggiungi una subnet, procedi nel seguente modo:
- Specifica un nome per la subnet.
- Seleziona una regione.
- Per Scopo, seleziona NAT privato.
Inserisci un intervallo di indirizzi IP, ovvero l'intervallo IPv4 principale per la subnet.
Se selezioni un intervallo che non è un indirizzo RFC 1918, verifica che l'intervallo non sia in conflitto con una configurazione esistente. Per saperne di più sugli intervalli di subnet IPv4 validi, vedi Intervalli di subnet IPv4.
Fai clic su Aggiungi.
NAT_SUBNET
: il nome dell'intervallo di subnet NAT privata da creare.NETWORK
: la rete a cui appartiene la subnet.REGION
: la regione della subnet da creare. Se non specificata, potrebbe esserti chiesto di selezionare una regione (solo in modalità interattiva).IP_RANGE
: lo spazio IP allocato a questa subnet in formato CIDR. Assicurati che IP_RANGE tenga conto dell'utilizzo del doppio delle porte richieste per VM.Private NAT per gli spoke di Network Connectivity Center. Abilita NAT per il traffico tra:
- Una rete VPC di origine e una rete VPC di destinazione nello stesso hub Network Connectivity Center. Entrambe le reti devono essere configurate come spoke VPC.
- Una rete VPC di origine configurata come uno spoke VPC in un hub Network Connectivity Center e una rete di destinazione on-premise o di un altro cloud provider connessa all'hub tramite uno spoke ibrido.
Se vuoi utilizzare le connessioni propagate di Private Service Connect nello stesso spoke VPC di Private NAT, consulta Interazioni delle connessioni propagate di Private Service Connect prima di configurare Private NAT.
Hybrid NAT. Consente NAT per il traffico tra una rete VPC di origine e una rete on-premise o di un altro provider cloud di destinazione. Le reti devono essere connesse tramite Cloud Interconnect o Cloud VPN.
Nella Google Cloud console, vai alla pagina Cloud NAT.
Fai clic su Inizia o Crea gateway Cloud NAT.
Inserisci un nome del gateway.
Per Tipo NAT, seleziona Privato.
Seleziona una rete VPC per il gateway NAT.
Seleziona la regione per il gateway NAT.
Seleziona o crea un router Cloud nella regione.
Assicurati che Istanze VM sia selezionato come tipo di endpoint di origine.
Nell'elenco Origine, seleziona Personalizzato.
Seleziona una subnet su cui vuoi eseguire NAT.
Se vuoi specificare altri intervalli, fai clic su Aggiungi subnet e intervallo IP.
Fai clic su Aggiungi una regola.
Nel campo Numero regola, inserisci un valore compreso tra
0
e65000
.Per Corrispondenza, seleziona una delle seguenti opzioni:
- Per attivare NAT ibrido, seleziona Route di connettività ibrida.
- Per abilitare Private NAT per gli spoke di Network Connectivity Center, seleziona Hub Network Connectivity Center.
- Per attivare entrambe le opzioni, seleziona Route di connettività ibrida e Hub Network Connectivity Center.
Seleziona o crea un intervallo di subnet NAT privato.
Fai clic su Fine.
(Facoltativo) Modifica una delle seguenti impostazioni nella sezione Configurazioni avanzate:
- Indica se configurare il logging. Per impostazione predefinita, è selezionata l'opzione Nessun log.
- Se modificare la modalità di allocazione delle porte di Cloud NAT. Per
impostazione predefinita, l'opzione Abilita allocazione dinamica delle porte è selezionata. Per
configurare l'allocazione statica delle porte, deseleziona
Abilita allocazione dinamica delle porte e
specifica Numero minimo di porte per istanza VM. Il valore predefinito è
64
. - Indica se aggiornare i timeout NAT per le connessioni di protocollo. Per informazioni su questi timeout e sui relativi valori predefiniti, consulta Timeout NAT.
Fai clic su Crea.
Crea un router Cloud nella rete VPC per cui vuoi configurare NAT.
Utilizza il comando
gcloud compute routers create
.gcloud compute routers create ROUTER_NAME \ --network=NETWORK --region=REGION
Sostituisci quanto segue:
ROUTER_NAME
: un nome per il router Cloud.NETWORK
: la rete VPC in cui creare il router Cloud.REGION
: la regione in cui creare il router cloud.
Crea un gateway NAT privato e specifica una o più subnet della rete VPC di origine per cui vuoi configurare NAT.
Utilizza il comando
gcloud compute routers nats create
con il flag--type
impostato suPRIVATE
.gcloud compute routers nats create NAT_CONFIG \ --router=ROUTER_NAME --type=PRIVATE --region=REGION \ --nat-custom-subnet-ip-ranges=SUBNETWORK:ALL|[SUBNETWORK_1:ALL,SUBNETWORK_2:ALL,...] | \ [--nat-all-subnet-ip-ranges]
Sostituisci quanto segue:
NAT_CONFIG
: un nome per la configurazione Private NAT che stai creando.ROUTER_NAME
: il nome del router Cloud da utilizzare con questo gateway. Questo è il router Cloud che hai creato nel passaggio precedente e non deve essere utilizzato da altre risorse.SUBNETWORK
: il nome della subnet o l'elenco delle subnet per cui vuoi utilizzare NAT.Puoi anche specificare un elenco di subnet in un formato separato da virgole, ad esempio
SUBNETWORK_1
,SUBNETWORK_2
. Private NAT esegue sempre la NAT su tutti gli intervalli IP di subnet per la subnet o l'elenco di subnet specificati.
Per impostazione predefinita, NAT privato utilizza l'allocazione dinamica delle porte. Se vuoi creare un gateway NAT privato con allocazione statica delle porte, esegui il comando precedente con il flag
--no-enable-dynamic-port-allocation
:gcloud compute routers nats create NAT_CONFIG \ --router=ROUTER_NAME --type=PRIVATE --region=REGION \ --nat-custom-subnet-ip-ranges=SUBNETWORK:ALL|[SUBNETWORK_1:ALL,SUBNETWORK_2:ALL,...] | \ [--nat-all-subnet-ip-ranges] --no-enable-dynamic-port-allocation \ [--min-ports-per-vm=VALUE]
Sostituisci
VALUE
con il numero minimo di porte da assegnare per VM. Se non specificato, Google Cloud assegna il valore predefinito64
.Crea una regola NAT per far corrispondere il traffico in base al tipo di NAT che stai configurando.
Utilizza il comando
gcloud compute routers nats rules create
con il flag--match
impostato su una delle seguenti opzioni:nexthop.is_hybrid
: traduce il traffico in uscita dalla rete VPC di origine a una rete on-premise o di un altro cloud provider connessa a Google Cloud tramite Cloud Interconnect o Cloud VPN.nexthop.hub
: traduce il traffico in uscita dal VPC spoke di origine a uno qualsiasi dei VPC spoke o ibridi collegati allo stesso hub Network Connectivity Center del VPC spoke di origine.nexthop.is_hybrid || nexthop.hub
: configura entrambi i tipi di NAT privato.
Per creare una regola NAT per Hybrid NAT, esegui questo comando:
gcloud compute routers nats rules create NAT_RULE_NUMBER \ --router=ROUTER_NAME --region=REGION \ --nat=NAT_CONFIG \ --match='nexthop.is_hybrid' \ --source-nat-active-ranges=NAT_SUBNET
Per creare una regola NAT per Private NAT per gli spoke di Network Connectivity Center, esegui questo comando:
gcloud compute routers nats rules create NAT_RULE_NUMBER \ --router=ROUTER_NAME --region=REGION \ --nat=NAT_CONFIG \ --match='nexthop.hub == "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/hubs/HUB"' \ --source-nat-active-ranges=NAT_SUBNET
Per creare una regola NAT sia per Hybrid NAT sia per Private NAT per gli spoke di Network Connectivity Center, esegui il comando seguente:
gcloud compute routers nats rules create NAT_RULE_NUMBER \ --router=ROUTER_NAME --region=REGION \ --nat=NAT_CONFIG \ --match='nexthop.is_hybrid || nexthop.hub == "//networkconnectivity.googleapis.com/projects/PROJECT_ID/locations/global/hubs/HUB"' \ --source-nat-active-ranges=NAT_SUBNET
Sostituisci quanto segue:
NAT_RULE_NUMBER
: il numero di regola che identifica in modo univoco la regola NAT, da0
a65000
.ROUTER_NAME
: il nome del router Cloud che hai creato in precedenza.REGION
: la regione del router cloud.NAT_CONFIG
: il nome della configurazione Private NAT che hai creato in precedenza.PROJECT_ID
: il progetto Google Cloud dell'hub Network Connectivity Center.HUB
: il nome dell'hub Network Connectivity Center.NAT_SUBNET
: il nome della subnet NAT privata che hai creato in precedenza. Puoi anche specificare un elenco di subnet in un formato separato da virgole.
Nella Google Cloud console, vai alla pagina Cloud NAT.
Per visualizzare i dettagli, le informazioni di mapping o i dettagli di configurazione del gateway NAT, fai clic sul nome del gateway NAT.
Per visualizzare lo stato NAT, consulta la colonna Stato del gateway NAT.
Visualizza la configurazione del gateway NAT privato.
gcloud compute routers nats describe NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION
Sostituisci quanto segue:
NAT_CONFIG
: il nome della configurazione NATROUTER_NAME
: il nome del tuo router CloudREGION
: la regione del NAT da descrivere. Se non specificata, potrebbe esserti chiesto di selezionare una regione (solo in modalità interattiva)
Visualizza il mapping degli intervalli IP:porta allocati a ogni interfaccia della VM.
gcloud compute routers get-nat-mapping-info ROUTER_NAME \ --region=REGION
Visualizza lo stato del gateway Private NAT.
gcloud compute routers get-status ROUTER_NAME \ --region=REGION
Nella Google Cloud console, vai alla pagina Cloud NAT.
Fai clic sul gateway NAT.
Fai clic su
Modifica.Per Mappatura Cloud NAT, nell'elenco Origine, seleziona Personalizzato.
Seleziona una nuova subnet dall'elenco delle subnet disponibili.
Se vuoi specificare altri intervalli, fai clic su Aggiungi subnet e intervallo IP e poi seleziona un'altra subnet.
Fai clic su Salva.
NAT_CONFIG
: il nome della configurazione NAT privato da aggiornare.ROUTER_NAME
: il nome del router da utilizzare con questo gateway.SUBNETWORK
: il nome della subnet da utilizzare.Nella Google Cloud console, vai alla pagina Cloud NAT.
Fai clic sul gateway NAT.
Fai clic su
Modifica.Elimina la subnet che vuoi rimuovere dal mapping NAT.
Fai clic su Salva.
Nella Google Cloud console, vai alla pagina Cloud NAT.
Fai clic sul gateway NAT.
Fai clic su
Modifica.Espandi la regola esistente.
Fai clic su Aggiungi intervalli di subnet.
Seleziona o crea un nuovo intervallo di subnet NAT, quindi fai clic su Fine.
Fai clic su Salva.
NAT_RULE_NUMBER
: il numero che identifica in modo univoco la regola da aggiornare.NAT_CONFIG
: il nome della configurazione Private NAT per la regola da aggiornare.ROUTER_NAME
: il nome del router da utilizzare con questo gateway.NAT_SUBNET
: i nomi delle subnet Private NAT da aggiungere alla configurazione NAT esistente.Nella Google Cloud console, vai alla pagina Cloud NAT.
Seleziona la casella di controllo accanto alla configurazione del gateway che vuoi eliminare.
Nel
menu, fai clic su Elimina.NAT_CONFIG
: il nome della configurazione NATROUTER_NAME
: il nome del tuo router CloudREGION
: la regione del NAT da eliminare. Se non specificata, potrebbe esserti chiesto di selezionare una regione (solo in modalità interattiva).- Configura logging e monitoraggio per Cloud NAT.
- Risolvi i problemi comuni con le configurazioni NAT.
Le istruzioni di Google Cloud CLI in questa pagina presuppongono che tu abbia impostato l'ID progetto prima di eseguire i comandi.
Crea una subnet NAT con lo scopo PRIVATE_NAT
Prima di configurare NAT privato, crea una subnet NAT con lo scopo PRIVATE_NAT
. La subnet NAT deve trovarsi nella stessa regione in cui prevedi
di creare il gateway NAT privato.
Il gateway NAT privato utilizza gli intervalli di indirizzi IP di questa subnet
per eseguire NAT. Assicurati che questa subnet non si sovrapponga a una subnet esistente
in nessuna delle reti connesse. Non puoi creare risorse in questa subnet.
Questa subnet viene utilizzata solo per NAT privato.
Console
gcloud
Utilizza il comando gcloud compute networks subnet create
per creare la subnet.
gcloud compute networks subnets create NAT_SUBNET \ --network=NETWORK \ --region=REGION \ --range=IP_RANGE \ --purpose=PRIVATE_NAT
Sostituisci quanto segue:
Configura NAT privato
Configura Private NAT creando un gateway Private NAT nella rete VPC di origine. Ogni gateway è associato a una singola rete VPC, regione e router Cloud.
Quando configuri NAT privato, puoi attivare una o entrambe le seguenti opzioni:
Crea un gateway Private NAT
Crea un gateway Private NAT nella rete VPC di origine per cui vuoi configurare NAT.
Console
gcloud
Visualizza la configurazione di NAT privato
Console
gcloud
Puoi visualizzare i dettagli della configurazione NAT eseguendo i seguenti comandi:
Aggiorna la configurazione di NAT privato
Dopo aver configurato il gateway NAT privato, puoi aggiornare la configurazione del gateway in base ai tuoi requisiti. Le seguenti sezioni elencano le attività che puoi eseguire per aggiornare il gateway NAT privato.
Modificare le subnet associate a NAT privato
Console
gcloud
gcloud compute routers nats update NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION \ --nat-custom-subnet-ip-ranges=SUBNETWORK:ALL|[SUBNETWORK_1:ALL,SUBNETWORK_2:ALL,..]
Sostituisci quanto segue:
Elimina le subnet associate a NAT privato
Puoi rimuovere subnet specifiche dal gateway NAT che non sono più in uso.
Console
Aggiungi subnet NAT alla configurazione NAT privato
Per eseguire NAT sul traffico, una configurazione NAT privata utilizza indirizzi IP NAT da una subnet con lo scopo di PRIVATE_NAT
.
Se la configurazione NAT privato richiede un numero di indirizzi IP NAT superiore a quello disponibile, puoi aggiungere altre subnet con scopo PRIVATE_NAT
alla configurazione.
Console
gcloud
gcloud compute routers nats rules update NAT_RULE_NUMBER \ --nat=NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION \ --source-nat-active-ranges=NAT_SUBNET_1, NAT_SUBNET_2 ...
Sostituisci quanto segue:
Elimina configurazione NAT
L'eliminazione di una configurazione del gateway rimuove la configurazione NAT da un router Cloud. L'eliminazione di una configurazione del gateway non elimina il router stesso.
Console
gcloud
gcloud compute routers nats delete NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION
Sostituisci quanto segue: