Configurar e gerenciar regras do Cloud NAT
Esta página mostra como configurar o Cloud NAT. Antes de começar, leia a Visão geral das regras Cloud NAT.
Criar regras NAT
As regras NAT são escritas usando a sintaxe da Common Expression Language. Para mais informações sobre a linguagem de expressão de regra, consulte Linguagem de expressão de regra.
As etapas de exemplo de configuração a seguir atendem às seguintes condições:
- As VMs precisam usar o endereço IP NAT com o nome do recurso
IP_ADDRESS1
para enviar o tráfego para o destino198.51.100.10
. - As VMs precisam usar o endereço IP NAT com o nome do recurso
IP_ADDRESS2
ouIP_ADDRESS3
para enviar o tráfego para198.51.100.20/30
.
É possível criar uma regra NAT para atender a cada uma dessas condições.
Console
Adicionar uma regra NAT a um gateway NAT
Adicione uma regra NAT que envie o tráfego de IP_ADDRESS1 para 198.51.100.10
.
- No console do Google Cloud, acesse a página do Cloud NAT.
- Selecione seu gateway NAT.
- Selecione Editar.
- Em Regras NAT, selecione Adicionar nova regra.
- No campo Correspondência, insira
198.51.100.10
. - No menu Endereço IP, selecione o endereço IP que você usou para IP_ADDRESS1.
- No campo Número da regra, digite
100
. - Selecione Concluído.
Adicione uma regra NAT que envie o tráfego de IP_ADDRESS2 ou
IP_ADDRESS3 para 198.51.100.20/30
.
- Em Regras NAT, selecione Adicionar nova regra.
- No campo Correspondência, insira
198.51.100.20/30
. - No menu Endereço IP, selecione o endereço IP que você usou para IP_ADDRESS2.
- Selecione Adicionar endereço IP e, em seguida, selecione o endereço IP usado para IP_ADDRESS3.
- No campo Número da regra, digite
200
. - Selecione Concluído.
- Selecione Salvar para salvar as duas regras.
gcloud
Use as etapas nas seções a seguir para criar um arquivo de regras, criar um gateway NAT que use as regras no arquivo de regras ou adicionar regras a um gateway NAT.
Adicionar uma regra NAT a um gateway NAT
É possível adicionar uma nova regra NAT usando o comando de regras NAT.
Substitua NAT_RULE_NUMBER
pelo número da regra NAT desejada,
e as outras variáveis pelas informações que correspondem à sua configuração.
Primeiro, adicione uma regra NAT que envie o tráfego de IP_ADDRESS1 para 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 ...]
Em seguida, adicione uma regra NAT que envie o tráfego de IP_ADDRESS2 ou IP_ADDRESS3 para 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 ...]
Criar um arquivo de regras
O exemplo de código a seguir é um exemplo de arquivo de regra. É possível modificar o arquivo de regras de acordo com o caso de uso ou pular essa etapa caso você já tenha um arquivo de regra.
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
Criar um gateway NAT usando um arquivo de regras NAT
O comando a seguir cria um gateway NAT e faz a configuração dele com regras a partir de um arquivo de regras NAT. Se você já tiver um gateway NAT configurado, consulte Adicionar uma regra NAT a um gateway NAT. 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 ...]
Atualizar regras NAT
Para atualizar suas regras NAT, use as etapas nas próximas seções. Só é possível usar
arquivos de regras com a ferramenta de linha de comando gcloud
.
Console
- No console do Google Cloud, acesse a página do Cloud NAT.
- Selecione seu gateway NAT.
- Selecione Editar.
- Em Regras personalizadas, clique na regra que você quer atualizar.
- Nos campos expandidos, é possível modificar as informações que você quiser alterar.
- Quando terminar de fazer as mudanças, selecione Concluído.
- Selecione Salvar.
gcloud
Fazer uma atualização usando um arquivo de regras NAT
Para usar o arquivo de regras NAT para atualizar um gateway NAT, use o seguinte comando. Substitua as variáveis pelas informações que correspondem à sua configuração.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
O exemplo de código a seguir é um exemplo de arquivo de regra. Observe a
ação sourceNatDrainIps
, que impede novas conexões com o
destino usando IP_ADDRESS1
, mas mantém as conexões atuais.
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
Fazer uma atualização usando um comando de regras NAT
Para atualizar uma única regra NAT, use o comando a seguir. Substitua
NAT_RULE_NUMBER
pelo número da regra NAT desejada, e as outras variáveis pelas informações que correspondem à sua
configuração. Observe a opção source-nat-drain-ips
, que impede novas
conexões com o destino usando IP_ADDRESS3
e IP_ADDRESS4
, mas
mantém as conexões atuais.
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 ...]
Excluir regras NAT
Console
- No console do Google Cloud, acesse a página do Cloud NAT.
- Selecione seu gateway NAT.
- Selecione Editar.
- Em Regras personalizadas, mantenha o ponteiro do mouse sobre a regra que você quer excluir. Clique em .
- Clique em Save.
gcloud
Para remover uma regra NAT de um gateway, remova-a diretamente do gateway ou remova-a do arquivo da regra e atualize o gateway.
Excluir usando um arquivo de regras NAT
Você pode remover uma regra NAT diretamente no arquivo de regras para depois atualizar o gateway NAT. O comando para atualizar o gateway NAT é repetido aqui para sua conveniência. Substitua as variáveis pelas informações que correspondem à sua configuração.
gcloud compute routers nats update NAT_NAME \ --router=ROUTER_NAME \ --rules=PATH_TO_NAT_RULE_FILE \ [--region=REGION] [GLOBAL-FLAG ...]
Excluir usando um comando de regras NAT
Como alternativa, use um comando delete
de regra NAT para remover uma regra NAT
do gateway. Substitua NAT_RULE_NUMBER
pelo
número da regra NAT desejada, e as outras variáveis pelas
informações que correspondem à sua configuração.
gcloud compute routers nats rules delete NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
Descrever uma regra NAT
Console
Veja informações sobre suas regras NAT na página do Cloud NAT.
- No console do Google Cloud, acesse a página do Cloud NAT.
- Selecione seu gateway NAT.
- Veja as regras NAT.
Para mais informações sobre uma regra NAT individual, faça o seguinte:
- Selecione Editar.
- No título Regras personalizadas, selecione uma regra NAT.
- Veja as informações adicionais.
- Selecione Cancelar para não salvar alterações.
gcloud
Para descrever uma regra NAT, use o comando a seguir. Substitua
NAT_RULE_NUMBER
pelo número da regra NAT, e as
outras variáveis pelas informações correspondentes à configuração.
gcloud compute routers nats rules describe NAT_RULE_NUMBER \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]
Listar todas as regras NAT em um gateway NAT
Console
Veja suas regras NAT na página do Cloud NAT.
- No console do Google Cloud, acesse a página do Cloud NAT.
- Selecione seu gateway NAT.
- Veja as regras NAT.
gcloud
Para listar todas as regras NAT em um gateway NAT, use o comando a seguir. Isso também exibe todos os endereços IP NAT presentes nas regras NAT, incluindo a regra padrão. Substitua as variáveis pelas informações que correspondem à sua configuração.
gcloud compute routers nats rules list \ --router=ROUTER_NAME \ --nat=NAT_NAME \ [--region=REGION] [GLOBAL-FLAG ...]