Configurar y gestionar reglas de Cloud NAT
En esta página se explica cómo configurar reglas de Cloud NAT. Antes de configurar reglas de Cloud NAT, consulta la información general sobre las reglas de Cloud NAT.
Crear reglas de NAT
Las reglas de NAT se escriben con la sintaxis del lenguaje de expresión común. Para obtener más información sobre el lenguaje de expresiones de reglas, consulta el artículo Lenguaje de expresiones de reglas.
Los siguientes pasos de configuración de ejemplo cumplen las siguientes condiciones:
- Las VMs deben usar la dirección IP de NAT con el nombre de recurso
IP_ADDRESS1
para enviar tráfico al destino198.51.100.10
. - Las máquinas virtuales deben usar la dirección IP de NAT con el nombre de recurso
IP_ADDRESS2
oIP_ADDRESS3
para enviar tráfico a198.51.100.20/30
.
Puede crear una regla NAT para cumplir cada una de estas condiciones.
Consola
Añadir una regla NAT a una pasarela NAT
Añade una regla NAT que envíe el tráfico de IP_ADDRESS1 a 198.51.100.10
.
- En la Google Cloud consola, ve a la página Cloud NAT.
- Selecciona tu pasarela de NAT.
- Selecciona Editar.
- En Reglas NAT, selecciona Añadir nueva regla.
- En el campo Match (Concordancia), introduce
198.51.100.10
. - En el menú Dirección IP, selecciona la dirección IP que has usado para IP_ADDRESS1.
- En el campo Número de regla, introduce
100
. - Selecciona Hecho.
Añade una regla NAT que envíe el tráfico de IP_ADDRESS2 o IP_ADDRESS3 a 198.51.100.20/30
.
- En Reglas NAT, selecciona Añadir nueva regla.
- En el campo Match (Concordancia), introduce
198.51.100.20/30
. - En el menú Dirección IP, selecciona la dirección IP que has usado para IP_ADDRESS2.
- Selecciona Añadir dirección IP y, a continuación, la dirección IP que has usado para IP_ADDRESS3.
- En el campo Número de regla, introduce
200
. - Selecciona Hecho.
- Selecciona Guardar para guardar ambas reglas.
gcloud
Puedes seguir los pasos que se indican en las siguientes secciones para crear un archivo de reglas, crear una pasarela NAT que use las reglas del archivo de reglas o añadir reglas a una pasarela NAT.
Añadir una regla NAT a una pasarela NAT
Puedes añadir una regla NAT con el comando de regla NAT.
Sustituye NAT_RULE_NUMBER
por el número de regla NAT que quieras y las demás variables por la información que coincida con tu configuración.
Primero, añade una regla NAT que envíe el tráfico de IP_ADDRESS1 a 198.51.100.10
.
gcloud compute routers nats rules create NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ --match='destination.ip == "198.51.100.10"' \ --source-nat-active-ips=[IP_ADDRESS1] \ [--region=REGION] [GLOBAL-FLAG ...]
A continuación, añade una regla NAT que envíe el tráfico de IP_ADDRESS2 o IP_ADDRESS3 a 198.51.100.20/30
.
gcloud compute routers nats rules create NAT_RULE_NUMBER \ --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 ...]
Crear un archivo de reglas
El siguiente fragmento de código es un archivo de reglas de ejemplo. Puedes modificar este archivo de reglas para adaptarlo a tu caso práctico u omitir este paso si ya tienes un archivo de reglas.
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
Crear una pasarela NAT mediante un archivo de reglas NAT
El siguiente comando crea una pasarela NAT y la configura con reglas de un archivo de reglas NAT. Si ya has configurado una pasarela de NAT, consulta Añadir una regla de NAT a una pasarela de NAT ya creada. Sustituye las variables por la información que coincida con tu configuración.
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 ...]
Actualizar reglas de NAT
Para actualizar las reglas NAT, siga los pasos que se indican en las siguientes secciones. Solo puedes usar archivos de reglas con la herramienta de línea de comandos gcloud
.
Consola
- En la Google Cloud consola, ve a la página Cloud NAT.
- Selecciona tu pasarela de NAT.
- Selecciona Editar.
- En Reglas personalizadas, haz clic en la regla que quieras actualizar.
- En los campos desplegados, puedes modificar la información que quieras cambiar.
- Cuando hayas terminado de hacer los cambios, selecciona Hecho.
- Selecciona Guardar.
gcloud
Actualizar mediante un archivo de reglas de NAT
Para actualizar una pasarela NAT con tu archivo de reglas NAT, usa el comando gcloud compute routers nats update
.
Sustituye las variables por la información que coincida con tu configuración.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
El siguiente fragmento de código es un archivo de reglas de ejemplo. Ten en cuenta la acción sourceNatDrainIps
, que impide que se establezcan nuevas conexiones con el destino mediante IP_ADDRESS1
, pero mantiene las conexiones existentes.
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
Actualizar con un comando de regla de NAT
Para actualizar una sola regla NAT, usa el siguiente comando. Sustituye NAT_RULE_NUMBER
por el número de regla NAT que quieras y las demás variables por la información que coincida con tu configuración. Ten en cuenta la opción source-nat-drain-ips
, que impide que se establezcan nuevas conexiones con el destino mediante IP_ADDRESS3
y IP_ADDRESS4
, pero mantiene las conexiones activas.
gcloud compute routers nats rules update NAT_RULE_NUMBER \ --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 ...]
Eliminar reglas de NAT
Consola
- En la Google Cloud consola, ve a la página Cloud NAT.
- Selecciona tu pasarela de NAT.
- Selecciona Editar.
- En Reglas personalizadas, coloca el cursor sobre la regla que quieras eliminar. Haz clic en .
- Haz clic en Guardar.
gcloud
Para quitar una regla NAT de una pasarela, puedes eliminarla directamente de la pasarela o del archivo de reglas y actualizar la pasarela.
Eliminar mediante un archivo de reglas de NAT
Puedes quitar una regla NAT directamente del archivo de reglas y, a continuación, actualizar tu pasarela NAT. El comando para actualizar tu pasarela NAT se repite aquí para mayor comodidad.
Sustituye las variables por la información que coincida con tu configuración.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
Eliminar con un comando de regla de NAT
También puedes usar un comando de regla NAT delete
para quitar una regla NAT de tu pasarela. Sustituye NAT_RULE_NUMBER
por el número de regla NAT que quieras y las demás variables por la información que coincida con tu configuración.
gcloud compute routers nats rules delete NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
Describe una regla de NAT
Consola
Puede ver información sobre sus reglas de NAT en la página Cloud NAT.
- En la Google Cloud consola, ve a la página Cloud NAT.
- Selecciona tu pasarela de NAT.
- Consulta las reglas de NAT.
Para obtener información adicional sobre una regla NAT concreta, puedes hacer lo siguiente:
- Selecciona Editar.
- En el encabezado Reglas personalizadas, selecciona una regla NAT.
- Consulta la información adicional.
- Selecciona Cancelar para asegurarte de que no se guardan los cambios.
gcloud
Para describir una regla NAT, usa el siguiente comando. Sustituye NAT_RULE_NUMBER
por el número de tu regla NAT y las demás variables por la información que coincida con tu configuración.
gcloud compute routers nats rules describe NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
Mostrar todas las reglas de NAT de una pasarela de NAT
Consola
Puedes ver tus reglas de NAT en la página Cloud NAT.
- En la Google Cloud consola, ve a la página Cloud NAT.
- Selecciona tu pasarela de NAT.
- Consulta las reglas de NAT.
gcloud
Para enumerar todas las reglas NAT de una pasarela NAT, usa el siguiente comando. También se muestran todas las direcciones IP de NAT presentes en las reglas de NAT, incluida la regla predeterminada. Sustituye las variables por la información que coincida con tu configuración.
gcloud compute routers nats rules list \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]