Configura y administra reglas de Cloud NAT

En esta página, se muestra cómo configurar las reglas de Cloud NAT. Antes de configurar las reglas de Cloud NAT, consulta la descripción general de las reglas de Cloud NAT.

Crea reglas de NAT

Las reglas de NAT se escriben mediante la sintaxis de Common Expression Language. Para obtener más información sobre el lenguaje de expresión de regla, consulta Lenguaje de expresión de regla.

En los siguientes pasos de configuración de ejemplo, se cumplen las siguientes condiciones:

  • Las VM deben usar direcciones IP de NAT con el nombre de recurso IP_ADDRESS1 para enviar tráfico al destino 198.51.100.10.
  • Las VM deben usar dirección IP de NAT con el nombre de recurso IP_ADDRESS2 o IP_ADDRESS3 para enviar tráfico a 198.51.100.20/30.

Puedes crear una regla de NAT para cumplir con cada una de estas condiciones.

Consola

Agrega una regla NAT a una puerta de enlace NAT existente

Agrega una regla de NAT que envíe tráfico de IP_ADDRESS1 a 198.51.100.10.

  1. En la consola de Google Cloud, ve a la página de Cloud NAT.

    Ir a Cloud NAT

  2. Selecciona tu puerta de enlace NAT.
  3. Selecciona Editar.
  4. En Reglas de NAT, selecciona Agregar nueva norma.
  5. En el campo Coincidencia, ingresa 198.51.100.10.
  6. En el menú Dirección IP, selecciona la dirección IP que usaste para IP_ADDRESS1.
  7. En el campo Número de regla, ingresa 100.
  8. Seleccione Listo.

Agrega una regla de NAT que envíe tráfico de IP_ADDRESS2 o IP_ADDRESS3 a 198.51.100.20/30.

  1. En Reglas de NAT, selecciona Agregar nueva norma.
  2. En el campo Coincidencia, ingresa 198.51.100.20/30.
  3. En el menú Dirección IP, selecciona la dirección IP que usaste para IP_ADDRESS2.
  4. Selecciona Agregar dirección IP y, luego, la dirección IP que usaste para IP_ADDRESS3.
  5. En el campo Número de regla, ingresa 200.
  6. Seleccione Listo.
  7. Selecciona Guardar para guardar ambas reglas.

gcloud

Sigue los pasos de las siguientes secciones para crear un archivo de reglas, crear una puerta de enlace NAT que use las reglas en el archivo de reglas o agregar reglas a una puerta de enlace NAT existente.

Agrega una regla NAT a una puerta de enlace NAT existente

Puedes agregar una regla de NAT nueva con el comando de reglas de NAT. Reemplaza NAT_RULE_NUMBER por el número de regla de NAT deseado y las otras variables por la información que coincide con la configuración.

Primero, agrega una regla de NAT que envíe 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, agrega una regla de NAT que envíe 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 ...]

Crea un archivo de regla

La siguiente muestra de código es un archivo de regla de ejemplo. Puedes modificar este archivo de regla para que se adapte a tu caso de uso o puedes omitir este paso si ya tienes un archivo de regla.

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 una puerta de enlace NAT con un archivo de regla NAT

El siguiente comando crea una puerta de enlace NAT y la configura con reglas de un archivo de reglas NAT. Si ya tienes una puerta de enlace NAT configurada, consulta Agrega una regla NAT a una puerta de enlace NAT existente. Reemplaza las variables por 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 ...]

Actualiza las reglas de NAT

Para actualizar tus reglas de NAT, sigue los pasos de las siguientes secciones. Solo puedes usar archivos de reglas con la herramienta de línea de comandos de gcloud.

Consola

  1. En la consola de Google Cloud, ve a la página de Cloud NAT.

    Ir a Cloud NAT

  2. Selecciona tu puerta de enlace NAT.
  3. Selecciona Editar.
  4. En Reglas personalizadas, haz clic en la regla que quieres actualizar.
  5. En los campos expandidos, puedes modificar cualquier información que quieras cambiar.
  6. Cuando hayas terminado de hacer los cambios, selecciona Listo.
  7. Selecciona Save.

gcloud

Actualiza con un archivo de regla NAT

Usa este comando para usar tu archivo de reglas NAT a fin de actualizar una puerta de enlace NAT. Reemplaza las variables con 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 ...]

La siguiente muestra de código es un archivo de regla de ejemplo. Ten en cuenta la acción sourceNatDrainIps, que evita conexiones nuevas al destino mediante IP_ADDRESS1, pero conserva 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

Actualiza con un comando de regla de NAT

Para actualizar una sola regla NAT, usa el siguiente comando. Reemplaza NAT_RULE_NUMBER por el número de regla de NAT deseado y las otras variables por la información que coincida con la configuración. Ten en cuenta la opción source-nat-drain-ips, que evita conexiones nuevas al destino mediante IP_ADDRESS3 y IP_ADDRESS4, pero conserva las conexiones existentes.

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

Borra reglas de NAT

Consola

  1. En la consola de Google Cloud, ve a la página de Cloud NAT.

    Ir a Cloud NAT

  2. Selecciona tu puerta de enlace NAT.
  3. Selecciona Editar.
  4. En Reglas personalizadas, mantén el puntero sobre la regla que quieres borrar. Haz clic en .
  5. Haz clic en Guardar.

gcloud

Puedes quitar una regla NAT de una puerta de enlace directamente de la puerta de enlace o del archivo de reglas, y actualizarla.

Borra con un archivo de regla NAT

Puedes quitar una regla de NAT del archivo de regla directamente y, luego, actualizar la puerta de enlace NAT. El comando para actualizar tu puerta de enlace de NAT se repite aquí para mayor conveniencia. Reemplaza las variables con 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 ...]

Borra mediante un comando de regla de NAT

Como alternativa, puedes usar un comando de regla NAT de delete para quitar una regla NAT de tu puerta de enlace. Reemplaza NAT_RULE_NUMBER por el número de regla de NAT deseado y reemplaza las otras variables por la información que coincida con la 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

Puedes ver información sobre tus reglas de NAT en la página de Cloud NAT.

  1. En la consola de Google Cloud, ve a la página de Cloud NAT.

    Ir a Cloud NAT

  2. Selecciona tu puerta de enlace NAT.
  3. Visualiza las reglas de NAT.

Para obtener información adicional sobre una regla NAT individual, sigue estos pasos:

  1. Selecciona Editar.
  2. En el encabezado Reglas personalizadas, selecciona una regla de NAT.
  3. Consulta la información adicional.
  4. Selecciona Cancelar para asegurarte de no guardar ningún cambio.

gcloud

Para describir una regla de NAT, usa el siguiente comando. Reemplaza NAT_RULE_NUMBER por tu número de regla NAT y las otras variables por 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 ...]

Enumera todas las reglas de NAT en una puerta de enlace de NAT

Consola

Puedes ver tus reglas de NAT en la página de Cloud NAT.

  1. En la consola de Google Cloud, ve a la página de Cloud NAT.

    Ir a Cloud NAT

  2. Selecciona tu puerta de enlace NAT.
  3. Visualiza las reglas de NAT.

gcloud

Para enumerar todas las reglas de NAT en una puerta de enlace de NAT, usa el siguiente comando. Esto también muestra todas las direcciones IP de NAT presentes en las reglas de NAT, incluida la regla predeterminada. Reemplaza las variables con información que coincida con tu configuración.

gcloud compute routers nats rules list \
    --router=ROUTER_NAME \
    --nat=NAT_NAME \
    [--region=REGION] [GLOBAL-FLAG ...]