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 il NAT privato.

Esamina le specifiche di NAT privato

Consulta le seguenti specifiche e requisiti:

Ottenere le autorizzazioni IAM

Il ruolo Amministratore rete di calcolo (roles/compute.networkAdmin) ti concede le autorizzazioni per creare un gateway NAT su router Cloud, prenotare e assegnare indirizzi IP NAT e specificare le sottoreti il cui traffico deve utilizzare la Network Address Translation da parte del gateway NAT.

Configurare Google Cloud

Prima di iniziare, configura i seguenti elementi in Google Cloud.

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine API.

    Enable the API

  5. Install the Google Cloud CLI.
  6. To initialize the gcloud CLI, run the following command:

    gcloud init
  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  8. Make sure that billing is enabled for your Google Cloud project.

  9. Enable the Compute Engine API.

    Enable the API

  10. Install the Google Cloud CLI.
  11. To initialize the gcloud CLI, run the following command:

    gcloud init

Le istruzioni di Google Cloud CLI in questa pagina presuppongono che tu abbia impostato il tuo ID progetto prima di emettere i comandi.

  1. Puoi impostare un ID progetto con il seguente comando:

    gcloud config set project PROJECT_ID
    
  2. Puoi anche visualizzare un ID progetto già impostato:

    gcloud config list --format='text(core.project)'
    

Crea una sottorete NAT con lo scopo PRIVATE_NAT

Prima di configurare Private NAT, devi creare una subnet NAT di 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 il NAT. Assicurati che questa subnet non si sovrapponga a una subnet esistente in nessuna delle reti collegate. Non puoi creare risorse in questa subnet. Questa subnet viene utilizzata solo per NAT privato.

Console

  1. Nella console Google Cloud, vai alla pagina Reti VPC.

    Vai a Reti VPC

  2. Per visualizzare la pagina dei dettagli della rete VPC, fai clic sul nome di una rete VPC.

  3. Fai clic sulla scheda Subnet.

  4. Fai clic su Aggiungi subnet. Nella finestra di dialogo Aggiungi una subnet, procedi nel seguente modo:

    1. Specifica un nome per la subnet.
    2. Seleziona una regione.
    3. Per Scopi, seleziona Private NAT.
    4. 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 entri in conflitto con una configurazione esistente. Per maggiori informazioni sugli intervalli di subnet IPv4 validi, consulta Intervalli di subnet IPv4.

  5. Fai clic su Aggiungi.

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:

  • NAT_SUBNET: il nome dell'intervallo di subnet NAT privato da creare.
  • NETWORK: la rete a cui appartiene la subnet.
  • REGION: la regione della subnet da creare. Se non specificato, è possibile che ti venga chiesto di selezionare una regione (solo modalità interattiva).
  • IP_RANGE: lo spazio IP allocato a questa subnet in formato CIDR. Assicurati che IP_RANGE tenga conto dell'utilizzo di due volte le dimensioni delle porte richieste per VM.

Configurare 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 Private NAT, puoi attivare una o entrambe le seguenti opzioni:

  • Private NAT per gli spoke di Network Connectivity Center. Consente di attivare NAT per il traffico tra quanto segue:
    • Una rete VPC di origine e una rete VPC di destinazione nello stesso hub di Network Connectivity Center. Entrambe le reti devono essere configurate come spoke VPC.
    • Una rete VPC di origine configurata come spoke VPC in un hub di Network Connectivity Center e una rete di destinazione on-premise o di un altro cloud provider connessa all'hub tramite uno spoke ibrido.
  • Hybrid NAT. Consente la 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.

Crea un gateway NAT privato

Crea un gateway Private NAT nella rete VPC di origine per la quale vuoi configurare NAT.

Console

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

    Vai a Cloud NAT

  2. Fai clic su Inizia o Crea gateway Cloud NAT.

  3. Inserisci un nome per il gateway.

  4. In Tipo di NAT, seleziona Privato.

  5. Seleziona una rete VPC per il gateway NAT.

  6. Seleziona la regione per il gateway NAT.

  7. Seleziona o crea un router cloud nella regione.

  8. Assicurati che come tipo di endpoint di origine sia selezionato Istanze VM.

  9. Nell'elenco Origine, seleziona Personalizzato.

  10. Seleziona una subnet su cui vuoi eseguire il NAT.

  11. Se vuoi specificare intervalli aggiuntivi, fai clic su Aggiungi subnet e intervallo IP.

  12. Fai clic su Aggiungi una regola.

  13. Nel campo Numero regola, inserisci un valore compreso tra 1 e 65000.

  14. Per Corrispondenza, seleziona una delle seguenti opzioni:

    • Per attivare Hybrid NAT, seleziona Route di connettività ibrida.
    • Per abilitare Private NAT per gli spoke di Network Connectivity Center, seleziona Hub di Network Connectivity Center.
    • Per attivare entrambe le opzioni, seleziona Route di connettività ibrida e Hub Network Connectivity Center.
  15. Seleziona o crea un intervallo di sottoreti NAT private.

  16. Fai clic su Fine.

  17. (Facoltativo) Modifica una delle seguenti impostazioni nella sezione Configurazioni avanzate:

    • Se configurare il logging. Per impostazione predefinita, è selezionata l'opzione Nessun logging.
    • Se modificare il modo in cui Cloud NAT alloca le porte. Per impostazione predefinita, è selezionata l'opzione Attiva allocazione dinamica delle porte. Per configurare l'allocazione statica delle porte, deseleziona Abilita allocazione dinamica delle porte e specifica N. 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.
  18. Fai clic su Crea.

gcloud

  1. Crea un router Cloud nella rete VPC per la quale 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.
  2. Crea un gateway Private NAT e specifica una o più sottoreti della rete VPC di origine per la quale vuoi configurare il NAT.

    Utilizza il comando gcloud compute routers nats create con il flag --type impostato su PRIVATE.

    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 di NAT privato che stai creando.
    • ROUTER_NAME: il nome del router Cloud da utilizzare con questo gateway. Si tratta del router Cloud che hai creato nel passaggio precedente e che non deve essere in uso da altre risorse.
    • SUBNETWORK: il nome della subnet o dell'elenco di subnet per le quali 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 il NAT su tutti gli intervalli IP della subnet per la subnet o l'elenco di subnet specificati.

    Per impostazione predefinita, Private NAT utilizza l'allocazione dinamica delle porte. Se vuoi creare un gateway NAT privato con allocazione delle porte statiche, 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 predefinito 64.

  3. Crea una regola NAT per associare 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 collegata a Google Cloud tramite Cloud Interconnect o Cloud VPN.
    • nexthop.hub: traduce il traffico in uscita dallo spoke VPC di origine a uno degli spoke VPC o ibride collegati allo stesso hub di Network Connectivity Center dello spoke VPC di origine.
    • nexthop.is_hybrid || nexthop.hub: configura entrambi i tipi di NAT privato.

    Per creare una regola NAT per Hybrid NAT, esegui il seguente 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 il seguente 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 seguente comando:

    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 della regola che identifica in modo univoco la regola NAT, da 1 a 65000.
    • ROUTER_NAME: il nome del router Cloud creato in precedenza.
    • REGION: la regione del Router Cloud.
    • NAT_CONFIG: il nome della configurazione Private NAT creata 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 sottoreti in un formato separato da virgole.

Visualizza la configurazione di Private NAT

Console

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

    Vai a Cloud NAT

  2. Per visualizzare i dettagli del gateway NAT, le informazioni di mappatura o i dettagli di configurazione, fai clic sul nome del gateway NAT.

  3. Per visualizzare lo stato NAT, consulta la colonna Stato per il gateway NAT.

gcloud

Puoi visualizzare i dettagli della configurazione NAT eseguendo i seguenti comandi:

  • 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 NAT.
    • ROUTER_NAME: il nome del tuo router Cloud.
    • REGION: la regione della NAT da descrivere. Se non specificato, potrebbe esserti chiesto di selezionare una regione (solo modalità interattiva).
  • Visualizza la mappatura degli intervalli IP:port allocati all'interfaccia di ogni 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
    

Aggiorna la configurazione di Private NAT

Dopo aver configurato il gateway NAT privato, puoi aggiornarne la configurazione in base alle tue esigenze. Le sezioni seguenti elencano le attività che puoi eseguire per aggiornare il gateway NAT privato.

Modificare le subnet associate al NAT privato

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway NAT.

  3. Fai clic su Modifica.

  4. Per la mappatura Cloud NAT, seleziona Personalizzato nell'elenco Origine.

  5. Seleziona una nuova subnet dall'elenco delle subnet disponibili.

  6. Se vuoi specificare intervalli aggiuntivi, fai clic su Aggiungi subnet e intervallo IP e seleziona un'altra subnet.

  7. Fai clic su Salva.

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:

  • 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.

Eliminare le subnet associate al NAT privato

Puoi rimuovere dal gateway NAT subnet specifiche che non sono più in uso.

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway NAT.

  3. Fai clic su Modifica.

  4. Elimina la subnet che vuoi rimuovere dalla mappatura NAT.

  5. Fai clic su Salva.

Aggiungere subnet NAT alla configurazione NAT privato

Per eseguire la NAT sul traffico, una configurazione NAT privato utilizza gli indirizzi IP NAT di una subnet con lo scopo PRIVATE_NAT. Se la configurazione di Private NAT richiede più del numero di indirizzi IP NAT disponibili, puoi aggiungere altre subnet di scopo PRIVATE_NAT alla configurazione.

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway NAT.

  3. Fai clic su Modifica.

  4. Espandi la regola esistente.

  5. Fai clic su Aggiungi intervalli di subnet.

  6. Seleziona o crea un nuovo intervallo di sottoreti NAT, quindi fai clic su Fine.

  7. Fai clic su Salva.

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:

  • NAT_RULE_NUMBER: il numero che identifica in modo univoco la regola da aggiornare.
  • NAT_CONFIG: il nome della configurazione NAT privato 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.

Elimina la configurazione NAT

L'eliminazione di una configurazione del gateway rimuove la configurazione NAT da un router Cloud. Il router stesso non viene eliminato.

Console

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

    Vai a Cloud NAT

  2. Seleziona la casella di controllo accanto alla configurazione del gateway da eliminare.

  3. In Menu, fai clic su Elimina.

gcloud

gcloud compute routers nats delete NAT_CONFIG \
    --router=ROUTER_NAME \
    --region=REGION

Sostituisci quanto segue:

  • NAT_CONFIG: il nome della configurazione NAT.
  • ROUTER_NAME: il nome del tuo router Cloud.
  • REGION: la regione della NAT da eliminare. Se non specificato, potrebbe esserti chiesto di selezionare una regione (solo modalità interattiva).

Passaggi successivi