Configura e gestisci le regole Cloud NAT
Questa pagina descrive come configurare le regole Cloud NAT per Public NAT. Prima di configurare le regole Cloud NAT, consulta la Panoramica delle regole Cloud NAT.
Crea regole NAT
Per creare regole NAT, Cloud NAT utilizza Common Expression Language (CEL), come descritto in Linguaggio di espressione delle regole. Per esempi di espressioni che puoi utilizzare nelle regole NAT, vedi Esempi di espressioni.
Se vuoi creare regole NAT, assicurati che la mappatura indipendente dagli endpoint sia disattivata per il tuo gateway NAT.
Creare regole basate sull'origine
I passaggi descritti in questa sezione mostrano come creare regole NAT basate sull'origine per le seguenti condizioni:
- I pacchetti provenienti dall'intervallo IP di origine
10.10.1.0/24
devono utilizzareIP_ADDRESS_1
. - I pacchetti provenienti dall'intervallo IP di origine
10.10.2.0/24
devono utilizzareIP_ADDRESS_2
. - Tutti gli altri pacchetti devono utilizzare
IP_ADDRESS_3
.
Per le condizioni 1 e 2, crea due regole NAT. La condizione 3 viene
soddisfatta dalla regola NAT predefinita per la corrispondenza dell'indirizzo di origine.
IP_ADDRESS_1
, IP_ADDRESS_2
e
IP_ADDRESS_3
sono gli indirizzi IP esterni che
vuoi utilizzare
per NAT.
Console
Aggiungi regole NAT a un gateway NAT esistente
Aggiungi una regola NAT che corrisponda al traffico proveniente da
10.10.1.0/24
e converta l'IP di origine inIP_ADDRESS_1
.Nella Trusted Cloud console, vai alla pagina Cloud NAT.
Fai clic sul gateway NAT.
Fai clic su Modifica.
Per Indirizzi IP Cloud NAT, seleziona Manuale.
Nella sezione Regole Cloud NAT, fai clic su Aggiungi una regola.
Nel campo Priorità regola, inserisci un numero da
0
(priorità più alta) a65000
(priorità più bassa). Ad esempio:100
.In Corrispondenza intervalli IP, seleziona Origine.
Nel campo Intervalli IP di origine, inserisci
10.10.1.0/24
.Nella sezione Indirizzi IP, seleziona l'indirizzo IP che vuoi utilizzare per
IP_ADDRESS_1
.Fai clic su Fine.
Aggiungi una regola NAT che corrisponda al traffico proveniente da
10.10.2.0/24
e lo converta inIP_ADDRESS_2
.- Nella sezione Regole Cloud NAT, fai clic su Aggiungi una regola.
- Nel campo Priorità regola, inserisci un numero da
0
(priorità più alta) a65000
(priorità più bassa). Ad esempio:200
. - In Corrispondenza intervalli IP, seleziona Origine.
- Nel campo Intervalli IP di origine, inserisci
10.10.2.0/24
. - Nella sezione Indirizzi IP, seleziona l'indirizzo IP che vuoi
utilizzare per
IP_ADDRESS_2
. - Fai clic su Fine.
- Fai clic su Salva per salvare entrambe le regole.
gcloud
Puoi utilizzare i passaggi descritti nelle sezioni seguenti per creare un file di regole, creare un gateway Cloud NAT che utilizza le regole nel file di regole o aggiungere regole a un gateway NAT esistente.
Aggiungi regole NAT a un gateway NAT esistente
Puoi aggiungere una nuova regola NAT utilizzando il
comando gcloud beta compute routers nats rules create
.
Aggiungi una regola NAT che utilizzi
IP_ADDRESS_1
per il traffico proveniente da10.10.1.0/24
:gcloud beta compute routers nats rules create NAT_RULE_PRIORITY \ --router=NAT_ROUTER \ --region=REGION \ --nat=NAT_CONFIG \ --match="inIpRange(source.ip, '10.10.1.0/24')" \ --source-nat-active-ips=IP_ADDRESS_1
Sostituisci quanto segue:
NAT_RULE_PRIORITY
: un numero di regola che identifica in modo univoco la regola NAT, da0
(priorità più alta) a65000
(priorità più bassa), ad esempio100
NAT_ROUTER
: il nome del router Cloud che utilizzi per il gateway NATREGION
: la regione del gateway NATNAT_CONFIG
: il nome della configurazione NATIP_ADDRESS_1
: l'indirizzo IP esterno allocato manualmente che vuoi utilizzare per i pacchetti che corrispondono alla regola
Aggiungi una regola NAT che utilizzi
IP_ADDRESS_2
per il traffico proveniente da10.10.2.0/24
:gcloud beta compute routers nats rules create NAT_RULE_PRIORITY \ --router=NAT_ROUTER \ --region=REGION \ --nat=NAT_CONFIG \ --match="inIpRange(source.ip, '10.10.2.0/24')" \ --source-nat-active-ips=IP_ADDRESS_2
Sostituisci quanto segue:
NAT_RULE_PRIORITY
: un numero di regola che identifica in modo univoco la regola NAT, da0
(priorità più alta) a65000
(priorità più bassa), ad esempio200
NAT_ROUTER
: il nome del router Cloud che utilizzi per il gateway NATREGION
: la regione del gateway NATNAT_CONFIG
: il nome della configurazione NATIP_ADDRESS_2
: l'indirizzo IP esterno allocato manualmente che vuoi utilizzare per i pacchetti che corrispondono alla regola
Crea un gateway NAT utilizzando un file di regole NAT
Il seguente esempio di codice è un file di regole. Puoi modificare questo file di regole in base al tuo caso d'uso o saltare questo passaggio se hai già un file di regole.
Creare un file di regole
rules: - ruleNumber: 100 match: inIpRange(source.ip, '10.10.1.0/24') action: sourceNatActiveIps: - /projects/PROJECT_ID/regions/REGION/addresses/IP_ADDRESS_1 - ruleNumber: 200 match: inIpRange(source.ip, '10.10.2.0/24') action: sourceNatActiveIps: - /projects/PROJECT_ID/regions/REGION/addresses/IP_ADDRESS_2
Nell'esempio precedente, IP_ADDRESS_1
e
IP_ADDRESS_2
sono gli indirizzi IP esterni allocati manualmente
che vuoi utilizzare per i pacchetti che corrispondono alle regole. Per ogni
indirizzo IP, sostituisci quanto segue:
PROJECT_ID
: il progetto dell'indirizzo IPREGION
: la regione in cui è riservato l'indirizzo IP
Crea un gateway NAT utilizzando un file di regole NAT
Il comando seguente crea un gateway NAT e lo configura con le regole di un file di regole NAT. Se hai già configurato un gateway NAT, consulta Aggiungere regole NAT a un gateway NAT esistente.
gcloud beta compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --nat-external-ip-pool=IP_ADDRESS_3,[IP_ADDRESS_4] \ --rules=PATH_TO_NAT_RULE_FILE
Sostituisci quanto segue:
NAT_CONFIG
: un nome per la configurazione NATNAT_ROUTER
: il nome del router Cloud che vuoi utilizzare per il gateway NATREGION
: la regione in cui vuoi creare il gateway Cloud NATIP_ADDRESS_3
eIP_ADDRESS_4
: gli indirizzi IP esterni che vuoi utilizzare per la regola NAT predefinitaPATH_TO_NAT_RULE_FILE
: il percorso del file della regola NAT
Crea regole basate sulla destinazione
I seguenti passaggi di configurazione di esempio soddisfano le seguenti condizioni:
- I pacchetti con indirizzo di destinazione
198.51.100.10
devono utilizzare l'indirizzo IP NATIP_ADDRESS_1
. - I pacchetti con indirizzo di destinazione
198.51.100.20/30
devono utilizzare l'indirizzo IP NATIP_ADDRESS_2
oIP_ADDRESS_3
.
Puoi creare una regola NAT per soddisfare ciascuna di queste condizioni.
Console
Aggiungi regole NAT a un gateway NAT esistente
Aggiungi una regola NAT che utilizza
IP_ADDRESS_1
per inviare il traffico a198.51.100.10
.Nella Trusted Cloud console, vai alla pagina Cloud NAT.
Fai clic su Modifica.
Per Indirizzi IP Cloud NAT, seleziona Manuale.
Nella sezione Regole Cloud NAT, fai clic su Aggiungi una regola.
Nel campo Priorità regola, inserisci un numero da
0
(priorità più alta) a65000
(priorità più bassa). Ad esempio:100
.Per Corrispondenza intervalli IP, seleziona Destinazione.
Nel campo Intervalli IP di destinazione, inserisci
198.51.100.10
.Nella sezione Indirizzi IP, seleziona l'indirizzo IP che vuoi utilizzare per
IP_ADDRESS_1
.Fai clic su Fine.
Aggiungi una regola NAT che utilizza
IP_ADDRESS_2
oIP_ADDRESS_3
per inviare traffico a198.51.100.20/30
.- Nella sezione Regole Cloud NAT, fai clic su Aggiungi una regola.
- Nel campo Priorità regola, inserisci un numero da
0
(priorità più alta) a65000
(priorità più bassa). Ad esempio:200
. - Per Corrispondenza intervalli IP, seleziona Destinazione.
- Nel campo Intervalli IP di destinazione, inserisci
198.51.100.20/30
. - Nella sezione Indirizzi IP, seleziona l'indirizzo IP che vuoi
utilizzare per
IP_ADDRESS_2
. - Fai clic su Aggiungi indirizzo IP e seleziona l'indirizzo IP che vuoi
utilizzare per
IP_ADDRESS_3
. - Fai clic su Fine.
- Fai clic su Salva per salvare entrambe le regole.
gcloud
Puoi utilizzare i passaggi descritti nelle sezioni seguenti per creare un file di regole, creare un gateway NAT che utilizza le regole nel file di regole o aggiungere regole a un gateway NAT esistente.
Aggiungi regole NAT a un gateway NAT esistente
Puoi aggiungere una nuova regola NAT utilizzando il comando per le regole NAT.
Sostituisci NAT_RULE_PRIORITY
con la priorità della regola NAT
che vuoi assegnare alla regola, da 0
(massima) a
65000
(minima), e sostituisci le altre variabili con informazioni
corrispondenti alla tua configurazione.
Innanzitutto, aggiungi una regola NAT che invii il traffico da
IP_ADDRESS1
a 198.51.100.10
.
gcloud compute routers nats rules create NAT_RULE_PRIORITY \ --router=ROUTER_NAME \ --nat=NAT_NAME \ --match='destination.ip == "198.51.100.10"' \ --source-nat-active-ips=IP_ADDRESS1 \ [--region=REGION] [GLOBAL-FLAG ...]
Successivamente, aggiungi una regola NAT che invia il traffico da
IP_ADDRESS2
o
IP_ADDRESS3
a 198.51.100.20/30
.
gcloud compute routers nats rules create NAT_RULE_PRIORITY \ --router=ROUTER_NAME \ --nat=NAT_NAME \ --match='inIpRange(destination.ip, "198.51.100.20/30")' \ --source-nat-active-ips=IP_ADDRESS2,IP_ADDRESS3 \ [--region=REGION] [GLOBAL-FLAG ...]
Creare un file di regole
Il seguente esempio di codice è un file di regole. Puoi modificare questo file di regole in base al tuo caso d'uso oppure saltare questo passaggio se hai già un file di regole.
rules: - ruleNumber: 100 match: destination.ip == '198.51.100.10' action: sourceNatActiveIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS1 - ruleNumber: 200 match: inIpRange(destination.ip, '198.51.100.20/30') action: sourceNatActiveIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS2 - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS3
Crea un gateway NAT utilizzando un file di regole NAT
Il comando seguente crea un gateway NAT e lo configura con le regole di un file di regole NAT. Se hai già configurato un gateway NAT, consulta Aggiungere regole NAT a un gateway NAT esistente. Sostituisci le variabili con informazioni corrispondenti alla tua configurazione.
gcloud compute routers nats create NAT_NAME \ --router=ROUTER_NAME \ --nat-external-ip-pool=IP_ADDRESS4,[IP_ADDRESS5] \ --nat-all-subnet-ip-ranges \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
Aggiorna le regole NAT
Per aggiornare le regole NAT, segui i passaggi descritti nelle sezioni seguenti. Puoi utilizzare i file di regole solo con lo strumento a riga di comando gcloud
.
Console
- Nella Trusted Cloud console, vai alla pagina Cloud NAT.
- Fai clic sul gateway NAT.
- Fai clic su Modifica.
- In Regole personalizzate, fai clic sulla regola che vuoi aggiornare.
- Nei campi espansi, puoi modificare le informazioni che vuoi cambiare.
- Fai clic su Fine.
- Fai clic su Salva.
gcloud
Aggiornamento utilizzando un file di regole NAT
Per aggiornare un gateway NAT con il file delle regole NAT, utilizza il
comando gcloud compute routers nats update
.
Sostituisci le variabili con le informazioni corrispondenti alla tua configurazione.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
Il seguente esempio di codice è un file di regole. Tieni presente l'azione
sourceNatDrainIps
, che impedisce nuove connessioni alla
destinazione utilizzando IP_ADDRESS1
, ma mantiene le connessioni esistenti.
rules: - ruleNumber: 100 match: destination.ip == '198.51.100.10' action: sourceNatActiveIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS2 sourceNatDrainIps: - /projects/PROJECT ID/regions/REGION/addresses/IP_ADDRESS1
Aggiornamento utilizzando un comando di regola NAT
Per aggiornare una singola regola NAT, utilizza il seguente comando. Sostituisci
NAT_RULE_PRIORITY
con il numero di priorità
della regola NAT e sostituisci le altre variabili con informazioni
che corrispondono alla tua configurazione. Prendi nota dell'opzione source-nat-drain-ips
, che
impedisce nuove
connessioni alla destinazione utilizzando IP_ADDRESS3
e IP_ADDRESS4
, ma
mantiene le connessioni esistenti.
gcloud compute routers nats rules update NAT_RULE_PRIORITY \ --router=ROUTER_NAME \ --nat=NAT_NAME \ --match=Match conditions (expressed in CEL) \ --source-nat-active-ips=[IP_ADDRESS1],[IP_ADDRESS2] \ --source-nat-drain-ips=[IP_ADDRESS3],[IP_ADDRESS4] \ [--region=REGION] [GLOBAL-FLAG ...]
Elimina regole NAT
Console
- Nella Trusted Cloud console, vai alla pagina Cloud NAT.
- Fai clic sul gateway NAT.
- Fai clic su Modifica.
- Nella sezione Regole personalizzate, tieni il puntatore del mouse sulla regola che vuoi eliminare. Fai clic su .
- Fai clic su Salva.
gcloud
Per rimuovere una regola NAT da un gateway, puoi rimuoverla direttamente dal gateway oppure dal file di regole e aggiornare il gateway.
Eliminare utilizzando un file di regole NAT
Puoi rimuovere una regola NAT direttamente dal file di regole e poi aggiornare il gateway NAT. Il comando per aggiornare il gateway NAT viene ripetuto qui per comodità.
Sostituisci le variabili con le informazioni corrispondenti alla tua configurazione.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
Elimina utilizzando un comando di regola NAT
In alternativa, puoi utilizzare un comando delete
per rimuovere una regola NAT
dal gateway. Sostituisci NAT_RULE_PRIORITY
con il numero di priorità della regola NAT e sostituisci le altre variabili con
informazioni che corrispondono alla tua configurazione.
gcloud compute routers nats rules delete NAT_RULE_PRIORITY \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
Descrivi una regola NAT
Console
Puoi visualizzare le informazioni sulle regole NAT nella pagina Cloud NAT.
- Nella Trusted Cloud console, vai alla pagina Cloud NAT.
- Fai clic sul gateway NAT.
- Visualizza le regole NAT.
Per ulteriori informazioni su una singola regola NAT, puoi effettuare le seguenti operazioni:
- Fai clic su Modifica.
- Nella sezione Regole personalizzate, seleziona una regola NAT.
- Visualizza le informazioni aggiuntive.
- Fai clic su Annulla.
gcloud
Per descrivere una regola NAT, utilizza il seguente comando. Sostituisci
NAT_RULE_PRIORITY
con il numero di priorità della regola NAT
e sostituisci le altre variabili con informazioni che corrispondono alla tua
configurazione.
gcloud compute routers nats rules describe NAT_RULE_PRIORITY \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
Elenca tutte le regole NAT in un gateway NAT
Console
Puoi visualizzare le regole NAT nella pagina Cloud NAT.
- Nella Trusted Cloud console, vai alla pagina Cloud NAT.
- Fai clic sul gateway NAT.
- Visualizza le regole NAT.
gcloud
Per elencare tutte le regole NAT in un gateway NAT, utilizza il seguente comando. Vengono visualizzati anche tutti gli indirizzi IP NAT presenti nelle regole NAT, inclusa la regola predefinita. Sostituisci le variabili con le informazioni corrispondenti alla tua configurazione.
gcloud compute routers nats rules list \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]