Configure e faça a gestão das regras do Cloud NAT

Esta página descreve como configurar regras de NAT da nuvem para NAT público. Antes de configurar regras de NAT da nuvem, consulte a vista geral das regras de NAT da nuvem.

Crie regras de NAT

Para criar regras de NAT, o Cloud NAT usa o Idioma de expressão comum (IEC), conforme descrito em Linguagem de expressão de regras. Para ver exemplos de expressões que pode usar nas regras de NAT, consulte Exemplos de expressões.

Se quiser criar regras de NAT, certifique-se de que o mapeamento independente do ponto final está desativado para o seu gateway NAT.

Crie regras baseadas na origem

Os passos nesta secção descrevem como criar regras de NAT baseadas na origem para as seguintes condições:

  1. Os pacotes do intervalo de IPs de origem 10.10.1.0/24 têm de usar IP_ADDRESS_1.
  2. Os pacotes do intervalo de IPs de origem 10.10.2.0/24 têm de usar IP_ADDRESS_2.
  3. Todos os outros pacotes têm de usar IP_ADDRESS_3.

Para as condições 1 e 2, cria duas regras de NAT. A condição 3 é cumprida pela regra NAT predefinida para a correspondência de endereços de origem. IP_ADDRESS_1, IP_ADDRESS_2 e IP_ADDRESS_3 são os endereços IP externos que quer usar para NAT.

Consola

Adicione regras de NAT a um gateway de NAT existente

  1. Adicione uma regra NAT que corresponda ao tráfego de 10.10.1.0/24 e traduza o IP de origem para IP_ADDRESS_1.

    1. Na Trusted Cloud consola, aceda à página Cloud NAT.

      Aceda ao Cloud NAT

    2. Clique no gateway de NAT.

    3. Clique em Edit.

    4. Para endereços IP do Cloud NAT, selecione Manual.

    5. Na secção Regras de NAT da nuvem, clique em Adicionar uma regra.

    6. No campo Prioridade da regra, introduza um número de 0 (prioridade mais elevada) a 65000 (prioridade mais baixa). Por exemplo, 100.

    7. Para Corresponder a intervalos de IP, selecione Origem.

    8. No campo Intervalos IP de origem, introduza 10.10.1.0/24.

    9. Na secção Endereços IP, selecione o endereço IP que quer usar para o IP_ADDRESS_1.

    10. Clique em Concluído.

  2. Adicione uma regra NAT que corresponda ao tráfego de 10.10.2.0/24 e o traduza para IP_ADDRESS_2.

    1. Na secção Regras de NAT da nuvem, clique em Adicionar uma regra.
    2. No campo Prioridade da regra, introduza um número de 0 (prioridade mais elevada) a 65000 (prioridade mais baixa). Por exemplo, 200.
    3. Para Corresponder a intervalos de IP, selecione Origem.
    4. No campo Intervalos IP de origem, introduza 10.10.2.0/24.
    5. Na secção Endereços IP, selecione o endereço IP que quer usar para o IP_ADDRESS_2.
    6. Clique em Concluído.
    7. Clique em Guardar para guardar ambas as regras.

gcloud

Pode usar os passos nas secções seguintes para criar um ficheiro de regras, criar um gateway NAT da Cloud que use as regras no ficheiro de regras ou adicionar regras a um gateway NAT existente.

Adicione regras de NAT a um gateway de NAT existente

Pode adicionar uma nova regra de NAT através do comando gcloud beta compute routers nats rules create.

  1. Adicione uma regra NAT que use IP_ADDRESS_1 para tráfego de 10.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
    

    Substitua o seguinte:

    • NAT_RULE_PRIORITY: um número de regra que identifica exclusivamente a regra NAT, de 0 (prioridade mais elevada) a 65000 (prioridade mais baixa), por exemplo, 100
    • NAT_ROUTER: o nome do Cloud Router que usa para a gateway NAT
    • REGION: a região do gateway NAT
    • NAT_CONFIG: o nome da configuração de NAT
    • IP_ADDRESS_1: o endereço IP externo atribuído manualmente que quer usar para pacotes que correspondam à regra
  2. Adicione uma regra NAT que use IP_ADDRESS_2 para tráfego de 10.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
    

    Substitua o seguinte:

    • NAT_RULE_PRIORITY: um número de regra que identifica exclusivamente a regra NAT, de 0 (prioridade mais elevada) a 65000 (prioridade mais baixa), por exemplo, 200
    • NAT_ROUTER: o nome do Cloud Router que usa para a gateway NAT
    • REGION: a região do gateway de NAT
    • NAT_CONFIG: o nome da configuração de NAT
    • IP_ADDRESS_2: o endereço IP externo atribuído manualmente que quer usar para pacotes que correspondam à regra

Crie um gateway de NAT com um ficheiro de regras de NAT

O seguinte exemplo de código é um ficheiro de regras de exemplo. Pode modificar este ficheiro de regras para se adequar ao seu exemplo de utilização ou ignorar este passo se já tiver um ficheiro de regras.

Crie um ficheiro de regras
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

No exemplo anterior, IP_ADDRESS_1 e IP_ADDRESS_2 são os endereços IP externos atribuídos manualmente que quer usar para pacotes que correspondam às regras. Para cada endereço IP, substitua o seguinte:

  • PROJECT_ID: o projeto do endereço IP
  • REGION: a região onde o endereço IP está reservado
Crie um gateway de NAT com um ficheiro de regras de NAT

O comando seguinte cria um gateway NAT e configura-o com regras de um ficheiro de regras NAT. Se já tiver um gateway NAT configurado, consulte o artigo Adicione regras NAT a um gateway NAT existente.

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

Substitua o seguinte:

  • NAT_CONFIG: um nome para a configuração de NAT
  • NAT_ROUTER: o nome do Cloud Router que quer usar para a gateway NAT
  • REGION: a região onde quer criar o gateway do Cloud NAT
  • IP_ADDRESS_3 e IP_ADDRESS_4: os endereços IP externos que quer usar para a regra NAT predefinida
  • PATH_TO_NAT_RULE_FILE: o caminho para o ficheiro de regras NAT

Crie regras baseadas no destino

Os passos de configuração do exemplo seguinte cumprem as seguintes condições:

  • Os pacotes com o endereço de destino 198.51.100.10 têm de usar o endereço IP NAT IP_ADDRESS_1.
  • Os pacotes com o endereço de destino 198.51.100.20/30 têm de usar o endereço IP NAT IP_ADDRESS_2 ou IP_ADDRESS_3.

Pode criar uma regra de NAT para cumprir cada uma destas condições.

Consola

Adicione regras de NAT a um gateway de NAT existente

  1. Adicione uma regra NAT que use IP_ADDRESS_1 para enviar tráfego para 198.51.100.10.

    1. Na Trusted Cloud consola, aceda à página Cloud NAT.

      Aceda ao Cloud NAT

    2. Clique em Edit.

    3. Para endereços IP do Cloud NAT, selecione Manual.

    4. Na secção Regras de NAT da nuvem, clique em Adicionar uma regra.

    5. No campo Prioridade da regra, introduza um número de 0 (prioridade mais elevada) a 65000 (prioridade mais baixa). Por exemplo, 100.

    6. Para Corresponder a intervalos de IP, selecione Destino.

    7. No campo Intervalos de IP de destino, introduza 198.51.100.10.

    8. Na secção Endereços IP, selecione o endereço IP que quer usar para o IP_ADDRESS_1.

    9. Clique em Concluído.

  2. Adicione uma regra NAT que use IP_ADDRESS_2 ou IP_ADDRESS_3 para enviar tráfego para 198.51.100.20/30.

    1. Na secção Regras de NAT da nuvem, clique em Adicionar uma regra.
    2. No campo Prioridade da regra, introduza um número de 0 (prioridade mais elevada) a 65000 (prioridade mais baixa). Por exemplo, 200.
    3. Para Corresponder a intervalos de IP, selecione Destino.
    4. No campo Intervalos de IP de destino, introduza 198.51.100.20/30.
    5. Na secção Endereços IP, selecione o endereço IP que quer usar para o IP_ADDRESS_2.
    6. Clique em Adicionar endereço IP e selecione o endereço IP que quer usar para IP_ADDRESS_3.
    7. Clique em Concluído.
    8. Clique em Guardar para guardar ambas as regras.

gcloud

Pode usar os passos nas secções seguintes para criar um ficheiro de regras, criar um gateway NAT que use as regras no ficheiro de regras ou adicionar regras a um gateway NAT existente.

Adicione regras de NAT a um gateway de NAT existente

Pode adicionar uma nova regra NAT através do comando de regra NAT. Substitua NAT_RULE_PRIORITY pela prioridade da regra NAT que quer atribuir à regra, de 0 (mais alta) a 65000 (mais baixa), e substitua as outras variáveis por informações que correspondam à sua configuração.

Primeiro, adicione uma regra NAT que envie tráfego de IP_ADDRESS1 para 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 ...]

Em seguida, adicione uma regra NAT que envie tráfego de IP_ADDRESS2 ou IP_ADDRESS3 para 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 ...]

Crie um ficheiro de regras

O seguinte exemplo de código é um ficheiro de regras de exemplo. Pode modificar este ficheiro de regras para se adequar ao seu exemplo de utilização ou ignorar este passo se já tiver um ficheiro de regras.

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

Crie um gateway de NAT com um ficheiro de regras de NAT

O comando seguinte cria um gateway NAT e configura-o com regras de um ficheiro de regras NAT. Se já tiver um gateway NAT configurado, consulte o artigo Adicione regras NAT a um gateway NAT existente. Substitua as variáveis por informações correspondentes à sua configuração.

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

Atualize as regras de NAT

Para atualizar as regras de NAT, siga os passos nas secções seguintes. Só pode usar ficheiros de regras com a ferramenta de linha de comandos gcloud.

Consola

  1. Na Trusted Cloud consola, aceda à página Cloud NAT.

    Aceda ao Cloud NAT

  2. Clique no gateway de NAT.
  3. Clique em Edit.
  4. Em Regras personalizadas, clique na regra que quer atualizar.
  5. Nos campos expandidos, pode modificar as informações que quer alterar.
  6. Clique em Concluído.
  7. Clique em Guardar.

gcloud

Atualize através de um ficheiro de regras NAT

Para atualizar um gateway de NAT com o seu ficheiro de regras de NAT, use o comando gcloud compute routers nats update.

Substitua as variáveis por informações que correspondam à sua configuração.

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

O seguinte exemplo de código é um ficheiro de regras de exemplo. Tenha em atenção a ação sourceNatDrainIps, que impede novas ligações ao destino através de IP_ADDRESS1, mas mantém as ligações 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

Atualize através de um comando de regra de NAT

Para atualizar uma única regra NAT, use o seguinte comando. Substitua NAT_RULE_PRIORITY pelo número de prioridade da regra de NAT e substitua as outras variáveis por informações que correspondam à sua configuração. Tenha em atenção a opção source-nat-drain-ips, que impede novas ligações ao destino através de IP_ADDRESS3 e IP_ADDRESS4, mas mantém as ligações existentes.

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

Elimine regras de NAT

Consola

  1. Na Trusted Cloud consola, aceda à página Cloud NAT.

    Aceda ao Cloud NAT

  2. Clique no gateway de NAT.
  3. Clique em Edit.
  4. Em Regras personalizadas, mantenha o ponteiro sobre a regra que quer eliminar. Clique em .
  5. Clique em Guardar.

gcloud

Para remover uma regra NAT de um gateway, pode removê-la diretamente do gateway ou removê-la do ficheiro de regras e atualizar o gateway.

Elimine com um ficheiro de regras de NAT

Pode remover uma regra de NAT diretamente do ficheiro de regras e, em seguida, atualizar o gateway de NAT. O comando para atualizar o gateway de NAT é repetido aqui para sua conveniência.

Substitua as variáveis por informações que correspondam à sua configuração.

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

Elimine usando um comando de regra de NAT

Em alternativa, pode usar um comando delete de regra NAT para remover uma regra NAT do gateway. Substitua NAT_RULE_PRIORITY pelo número de prioridade da regra de NAT e substitua as outras variáveis por informações que correspondam à sua configuração.

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

Descreva uma regra de NAT

Consola

Pode ver informações sobre as suas regras de NAT na página do Cloud NAT.

  1. Na Trusted Cloud consola, aceda à página Cloud NAT.

    Aceda ao Cloud NAT

  2. Clique no gateway de NAT.
  3. Veja as regras de NAT.

Para informações adicionais sobre uma regra de NAT individual, pode fazer o seguinte:

  1. Clique em Edit.
  2. No cabeçalho Regras personalizadas, selecione uma regra NAT.
  3. Veja as informações adicionais.
  4. Clique em Cancelar.

gcloud

Para descrever uma regra de NAT, use o seguinte comando. Substitua NAT_RULE_PRIORITY pelo número de prioridade da regra de NAT e substitua as outras variáveis por informações que correspondam à sua configuração.

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

Apresente todas as regras de NAT numa gateway de NAT

Consola

Pode ver as suas regras de NAT na página NAT na nuvem.

  1. Na Trusted Cloud consola, aceda à página Cloud NAT.

    Aceda ao Cloud NAT

  2. Clique no gateway de NAT.
  3. Veja as regras de NAT.

gcloud

Para apresentar uma lista de todas as regras de NAT num gateway NAT, use o seguinte comando. Esta página também apresenta todos os endereços IP NAT presentes nas regras NAT, incluindo a regra predefinida. Substitua as variáveis por informações que correspondam à sua configuração.

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