Ottimizza configurazione NAT

Dopo aver impostato la configurazione del gateway Cloud NAT ( Public NAT o Private NAT), puoi modificare la configurazione in base ai tuoi requisiti. Questa pagina elenca le attività che puoi eseguire per ottimizzare la configurazione di Cloud NAT.

La modifica delle configurazioni può essere di natura invasiva e può causare problemi connessioni NAT (Network Address Translation) da interrompere. Per ulteriori informazioni sull'impatto dell'ottimizzazione di Cloud NAT vedi Impatto dell'ottimizzazione delle configurazioni NAT sulle connessioni NAT esistenti.

Visualizza l'utilizzo delle porte

Prima di modificare l'utilizzo minimo delle porte per VM, esamina di utilizzo delle porte per VM. Puoi ottenere queste informazioni utilizzando il Metrica compute.googleapis.com/nat/port_usage.

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

    Vai a Monitoring

    1. Nel riquadro di navigazione, seleziona Esplora metriche .

    2. Espandi il menu Seleziona una metrica e utilizza i sottomenu per scegliere la metrica Metrica compute.googleapis.com/nat/port_usage:

      • In Risorsa, seleziona Istanza VM.
      • Per Categoria di metrica, seleziona Nat.
      • Per Metrica, seleziona Utilizzo porta.
    3. Fai clic su Applica.

    4. Per selezionare il gateway Cloud NAT, utilizza il campo Filtri.

    5. Nella sezione Raggruppa per, seleziona instance_id per le etichette.

    6. Nell'elenco Funzione di raggruppamento, seleziona Max.

    7. Espandi Altre opzioni e imposta il campo Allineatore su Massimo.

    8. Per visualizzare l'utilizzo degli ultimi 30 giorni, specifica 30d.

    Per ulteriori informazioni sull'uso di Metrics Explorer, consulta Seleziona le metriche quando utilizzi Esplora metriche.

Scegli un numero minimo di porte per VM

Scegliere un numero minimo appropriato di porte è importante massimizza l'utilizzo degli indirizzi IP NAT.

Prima di aumentare il numero di porte per VM, prendi in considerazione altre strategie per ridurre l'utilizzo delle porte.

Se devi aumentare il numero di porte per VM, inizia prendendo in considerazione di utilizzo delle porte per VM nel gateway. Per informazioni su come trovare questi dati, consulta Visualizzare l'utilizzo delle porte.

Rivedi l'utilizzo massimo delle porte per gli ultimi 30 giorni o per altri che ritieni rappresentativo per il gateway Cloud NAT.

Esegui una di queste operazioni:

  • Se utilizzi l'allocazione statica delle porte, configura il numero di porte per VM in modo che il valore minimo corrisponda all'utilizzo di picco attuale delle porte.

  • Se utilizzi l'allocazione dinamica delle porte, configura il numero di porte per VM in modo che il valore minimo sia inferiore all'utilizzo di picco delle porte mentre il valore massimo è superiore all'utilizzo di picco delle porte.

Modifica il numero minimo di porte predefinite allocate per VM

Per informazioni su come configurare il numero minimo di porte per VM, consulta Scegli un numero minimo di porte per VM.

Per informazioni sulle conseguenze della modifica dell'allocazione minima delle porte, consulta le sezioni seguenti:

Se per il gateway Cloud NAT è configurata l'allocazione dinamica delle porte, consulta Modifica il numero minimo o massimo di porte quando l'allocazione dinamica delle porte è configurato.

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway Cloud NAT.

  3. Fai clic su Modifica.

  4. Fai clic su Configurazioni avanzate.

  5. Modifica il campo Numero minimo di porte per istanza VM.

  6. Fai clic su Salva.

gcloud

Questo comando lascia invariati gli altri campi della configurazione di Cloud NAT.

gcloud compute routers nats update NAT_CONFIG \
    --router=ROUTER_NAME \
    --region=REGION \
    --min-ports-per-vm=128

Sostituisci quanto segue:

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

Modificare il metodo di allocazione delle porte

Allocazione statica delle porte e dinamica l'allocazione delle porte è diversa di configurazione.

Prima di aggiornare il tipo di allocazione delle porte su un gateway Cloud NAT esistente, assicurati per assicurarti che la configurazione del gateway Cloud NAT sia compatibile con quel tipo di allocazione delle porte. Se la configurazione non è compatibile, la modifica non va a buon fine.

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway Cloud NAT.

  3. Fai clic su Modifica.

  4. Fai clic su Configurazioni avanzate.

  5. Seleziona o deseleziona Abilita allocazione dinamica delle porte.

  6. Se necessario, modifica i valori per Numero minimo di porte per istanza VM e Numero massimo di porte per istanza VM.

  7. Fai clic su Salva.

gcloud

Questo comando lascia invariati gli altri campi della configurazione di Cloud NAT.

gcloud compute routers nats update NAT_CONFIG \
    --router=ROUTER_NAME \
    --region=REGION \
    --enable-dynamic-port-allocation | --no-enable-dynamic-port-allocation \
    [ --min-ports-per-vm=MIN_PORTS ] \
    [ --max-ports-per-vm=MAX_PORTS ]

Sostituisci quanto segue:

  • NAT_CONFIG: il nome della tua configurazione Cloud NAT.
  • ROUTER_NAME: il nome del tuo router Cloud.
  • REGION: la regione di Cloud NAT da aggiornare. Se non specificato, ti potrebbe essere chiesto di selezionare una regione (solo modalità interattiva).
  • MIN_PORTS: il numero minimo di porte da allocare ogni VM. Se l'allocazione dinamica delle porte è abilitata, MIN_PORTS deve essere una potenza di 2 e può essere compresa tra 32 e 32768.
  • MAX_PORTS: il numero massimo di porte da allocare ogni VM. MAX_PORTS deve essere una potenza di 2 e può essere tra 64 e 65536. MAX_PORTS deve essere maggiore di MIN_PORTS. Il valore predefinito è 65536.

Modificare il numero minimo o massimo di porte quando è configurata l'allocazione dinamica delle porte

Dopo aver configurato l'allocazione dinamica delle porte, puoi modificare il numero minimo o il numero massimo di porte assegnate per VM.

Per informazioni su come configurare il numero minimo di porte per VM, consulta Scegli un numero minimo di porte per VM.

Per informazioni sulle conseguenze della modifica dell'allocazione minima delle porte, consulta le sezioni seguenti:

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway Cloud NAT.

  3. Fai clic su Modifica.

  4. Fai clic su Configurazioni avanzate.

  5. Imposta Numero minimo di porte per istanza VM e Numero massimo di porte per VM. istanza.

  6. Fai clic su Salva.

gcloud

Questo comando lascia invariati gli altri campi della configurazione di Cloud NAT.

gcloud compute routers nats update NAT_CONFIG \
    --router=ROUTER_NAME \
    --region=REGION \
    --min-ports-per-vm=MIN_PORTS \
    --max-ports-per-vm=MAX_PORTS

Sostituisci quanto segue:

  • NAT_CONFIG: il nome della tua configurazione Cloud NAT.
  • ROUTER_NAME: il nome del tuo router Cloud.
  • REGION: la regione di Cloud NAT da aggiornare. Se non specificato, ti potrebbe essere chiesto di selezionare una regione (solo modalità interattiva).
  • MIN_PORTS: il numero minimo di porte da allocare ogni VM. Se l'allocazione dinamica delle porte è abilitata, MIN_PORTS deve essere una potenza di 2 e può essere compresa tra 32 e 32768.
  • MAX_PORTS: il numero massimo di porte da allocare ogni VM. MAX_PORTS deve essere una potenza di 2 e può essere tra 64 e 65536. MAX_PORTS deve essere maggiore di MIN_PORTS.

Modifica timeout NAT

Le seguenti sezioni descrivono i timeout NAT e le modalità di modifica:

Timeout NAT

Cloud NAT utilizza i seguenti timeout per le connessioni di protocollo. Questi i timeout si applicano sia a Public NAT sia a Private NAT, se non diversamente indicato. Puoi modificare i valori di timeout predefiniti per diminuire o aumentare la frequenza con cui vengono riutilizzate le porte. Ogni valore di timeout corrisponde a un equilibrio tra un uso efficiente delle risorse Cloud NAT e possibili interruzioni delle connessioni attive, flussi di dati, o sessioni.

Timeout Descrizione Valore predefinito di Cloud NAT Configurabile

Timeout di inattività mappatura UDP

RFC 4787 REQ-5

Specifica il tempo in secondi dopo il quale i flussi UDP devono interrompere l'invio del traffico a in modo che i mapping di Cloud NAT vengano rimossi.

Il timeout per inattività mappatura UDP interessa due endpoint che interrompono l'invio di traffico l'uno con l'altro. Interessa anche gli endpoint che impiegano più tempo a rispondere. in caso di aumento della latenza di rete.

Puoi aumentare il valore di timeout specificato per diminuire la frequenza le porte possono essere riutilizzate. Il valore di timeout più grande indica che le porte sono vengono conservati per connessioni più lunghe e proteggono anche dalle pause nel traffico su uno specifico socket UDP.

30 secondi

Timeout inattività connessione stabilita TCP

RFC 5382 REQ-5

Specifica il tempo in secondi di inattività di una connessione prima dell'evento I mapping di Cloud NAT vengono rimossi.

Il timeout per inattività della connessione stabilita TCP influisce sugli endpoint che richiedono più tempo per rispondere o se la latenza di rete è aumentata.

Puoi aumentare il valore di timeout quando vuoi aprire le connessioni TCP e mantenere le connessioni aperte per molto tempo senza keepalive meccanismo di attenzione.

1200 secondi (20 minuti)

Timeout inattività connessione transitoria TCP

RFC 5382 REQ-5

Specifica il tempo in secondi in cui le connessioni TCP possono rimanere nella stato semiaperto prima di poter eliminare i mapping di Cloud NAT.

Il timeout per inattività connessione transitoria TCP influisce su un endpoint quando una connessione richiede un periodo di tempo più lungo di quello specificato o quando si verifica una maggiore latenza di rete. A differenza del timeout di inattività della connessione stabilita TCP, il timeout della connessione transitoria TCP influisce solo sulla metà apertura e altre connessioni.

30 secondi

Nota: indipendentemente dal valore impostato per questo timeout, Cloud NAT potrebbe richiedere fino a 30 secondi supplementari prima puoi scegliere un indirizzo IP di origine Cloud NAT e una tupla di porte di origine utilizzata per elaborare una nuova connessione.

Timeout TIME_WAIT TCP

RFC 5382 REQ-5

Specifica il tempo in secondi in cui viene mantenuta una connessione TCP completamente chiusa nei mapping di Cloud NAT dopo la scadenza della connessione.

Il timeout TIME_WAIT TCP protegge gli endpoint interni dalla ricezione pacchetti non validi che appartengono a una connessione TCP chiusa e che vengono ritrasmessi.

Puoi diminuire il valore di timeout per migliorare il riutilizzo di Cloud NAT a costo della ricezione di pacchetti ritrasmessi da un connessione non correlata e chiusa in precedenza.

120 secondi

Nota: indipendentemente dal valore impostato per questo timeout, Cloud NAT potrebbe richiedere fino a 30 secondi supplementari prima è possibile utilizzare un indirizzo IP di origine Cloud NAT e una tupla di porte di origine per elaborare una nuova connessione. Se utilizzi l'allocazione dinamica delle porte, imposta questo timeout su almeno 30 secondi per evitare la perdita di pacchetti.

Timeout di inattività della mappatura ICMP
(applicabile solo a Public NAT)

RFC 5508 REQ-2

Specifica l'intervallo di tempo in secondi dopo il quale Internet Control Message Protocol Le mappature Cloud NAT (ICMP) che non hanno flussi di traffico vengono chiuse.

Il timeout della mappatura ICMP influisce su un endpoint quando quest'ultimo accetta tempi di risposta più lunghi rispetto a quelli specificati o quando c'è un aumento latenza di rete.

30 secondi

Modifica i timeout NAT

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway Cloud NAT.

  3. Fai clic su Modifica.

  4. Fai clic su Configurazioni avanzate.

  5. Modifica i valori di timeout che vuoi cambiare.

  6. Fai clic su Salva.

gcloud

Usa il comando gcloud compute routers nats update con i seguenti flag per modificare i valori di timeout:

  • Timeout inattività mappatura UDP: --udp-idle-timeout
  • Timeout di inattività della connessione stabilita TCP: --tcp-established-idle-timeout
  • Timeout inattività connessione transitoria TCP: --tcp-transitory-idle-timeout
  • TCP TIME_WAIT Timeout: --tcp-time-wait-timeout
  • Timeout inattività mappatura ICMP: --icmp-idle-timeout

Questo comando lascia invariati gli altri campi della configurazione NAT.

Ad esempio, il comando seguente modifica il valore Timeout inattività mappatura UDP.

gcloud compute routers nats update NAT_CONFIG \
    --router=ROUTER_NAME \
    --region=REGION \
    --udp-idle-timeout=VALUE

Sostituisci quanto segue:

  • NAT_CONFIG: il nome della tua configurazione Cloud NAT.
  • ROUTER_NAME: il nome del tuo router Cloud.
  • REGION: la regione di Cloud NAT da aggiornare. Se non specificato, ti potrebbe essere chiesto di selezionare una regione (solo modalità interattiva).
  • VALUE: il valore di timeout (in secondi)

Reimposta i timeout NAT sui valori predefiniti

Console

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

    Vai a Cloud NAT

  2. Fai clic sul gateway Cloud NAT.

  3. Fai clic su Modifica.

  4. Fai clic su Configurazioni avanzate.

  5. Rimuovi tutti i valori configurati dall'utente che vuoi reimpostare.

  6. Fai clic su Salva.

Vengono ripristinati i valori predefiniti dei valori rimossi.

gcloud

Questo comando lascia invariati gli altri campi della configurazione di Cloud NAT.

gcloud compute routers nats update NAT_CONFIG \
    --router=ROUTER_NAME \
    --region=REGION \
    --clear-udp-idle-timeout \
    --clear-icmp-idle-timeout \
    --clear-tcp-established-idle-timeout \
    --clear-tcp-time-wait-timeout \
    --clear-tcp-transitory-idle-timeout

Sostituisci quanto segue:

  • NAT_CONFIG: il nome del gateway Cloud NAT.
  • ROUTER_NAME: il nome del tuo router Cloud.
  • REGION: la regione di Cloud NAT da aggiornare. Se non specificato, ti potrebbe essere chiesto di selezionare una regione (solo modalità interattiva).

Impatto dell'ottimizzazione delle configurazioni NAT sulle connessioni NAT esistenti

La tabella seguente riassume l'impatto dell'ottimizzazione delle configurazioni Cloud NAT sulle connessioni esistenti:

Azione di ottimizzazione Caduta di connessione
Disabilita la mappatura indipendente degli endpoint No
Riduci il numero minimo di porte per VM abilitando al contempo l'allocazione dinamica delle porte:
numero massimo di porte per VM >= vecchi numero minimo di porte per VM e
numero massimo di porte per VM >= 1024
No
Aumenta il numero minimo di porte per VM se l'allocazione dinamica delle porte è già abilitata No
Riduci il numero minimo di porte per VM se l'allocazione dinamica delle porte è già abilitata No
Aumenta il numero minimo di porte per VM quando l'allocazione dinamica delle porte è già disabilitata No
Riduci il numero minimo di porte per VM se l'allocazione dinamica delle porte è già disabilitata
Aumenta il numero massimo di porte per VM No
Riduci il numero massimo di porte per VM se l'allocazione dinamica delle porte è già abilitata
Modifica i timeout di Cloud NAT quando l'allocazione dinamica delle porte è abilitata o disabilitata No
Disattiva l'allocazione dinamica delle porte

Passaggi successivi