

# Solucionar problemas de gateways NAT
<a name="nat-gateway-troubleshooting"></a>

Os tópicos a seguir ajudam a solucionar problemas comuns que você pode encontrar ao criar ou usar um gateway NAT.

**Topics**
+ [Falha na criação do gateway NAT](#nat-gateway-troubleshooting-failed)
+ [Cota de gateway NAT](#nat-gateway-troubleshooting-quota)
+ [Cota de endereços IP elásticos](#nat-gateway-troubleshooting-limits)
+ [A zona de disponibilidade é incompatível](#nat-gateway-troubleshooting-unsupported-az)
+ [O gateway NAT não está mais visível](#nat-gateway-troubleshooting-gateway-removed)
+ [O gateway NAT não responde a um comando ping](#nat-gateway-troubleshooting-ping)
+ [As instâncias não conseguem acessar a Internet](#nat-gateway-troubleshooting-no-internet-connection)
+ [A conexão TCP para um destino apresenta falha](#nat-gateway-troubleshooting-tcp-issues)
+ [O resultado do traceroute não exibe endereço IP privado do gateway NAT](#nat-gateway-troubleshooting-traceroute)
+ [A conexão com a Internet cai após 350 segundos](#nat-gateway-troubleshooting-timeout)
+ [Não é possível estabelecer uma conexão IPsec](#nat-gateway-troubleshooting-ipsec)
+ [Não é possível iniciar mais conexões](#nat-gateway-troubleshooting-simultaneous-connections)

## Falha na criação do gateway NAT
<a name="nat-gateway-troubleshooting-failed"></a>

**Problema**  
Você cria um gateway NAT e ele entra no status `Failed`.

**nota**  
Um gateway NAT com falha é excluído automaticamente, geralmente em cerca de uma hora.

**Causa**  
Ocorreu um erro quando o gateway NAT foi criado. A mensagem de estado retornada fornece o motivo do erro.

**Solução**  
Para visualizar a mensagem de erro, abra o console da Amazon VPC e selecione **NAT Gateways** (Gateways NAT). Selecione o botão de opção do gateway NAT e, em seguida, encontre a **State message** (Mensagem de estado) na guia **Details** (Detalhes).

A tabela a seguir lista as possíveis causas da falha, tal como indicado no console da Amazon VPC. Depois de usar quaisquer etapas de correção indicadas, você pode tentar criar o gateway NAT novamente.


| Erro exibido | Causa | Solução | 
| --- | --- | --- | 
| Subnet has insufficient free addresses to create this NAT gateway | A sub-rede que você especificou não tem nenhum endereço IP privado disponível. O gateway NAT requer uma interface de rede com endereço IP privado alocado no intervalo da sub-rede.  | Verifique quantos endereços IP estão disponíveis na sub-rede acessando a página Subnets (Sub-redes) no console da Amazon VPC. Você pode visualizar os Available IPs (IPs disponíveis) no painel de detalhes da sub-rede. Para criar endereços IP livres em sua sub-rede, você pode excluir interfaces de rede não usadas ou encerrar instâncias das quais não necessita.  | 
| Network vpc-xxxxxxxx has no Internet gateway attached | É necessário criar um gateway NAT em uma VPC com um gateway da internet. | Crie e vincule um gateway da Internet à VPC. Para obter mais informações, consulte [Adicionar acesso à Internet a uma sub-rede](working-with-igw.md). | 
| Elastic IP address eipalloc-xxxxxxxx is already associated | O endereço IP elástico que você especificou já está associado a outro recurso e não pode ser associado ao gateway NAT. | Verifique qual recurso está associado ao endereço IP elástico. Acesse a página Elastic IPs (IPs elásticos) no console da Amazon VPC e visualize os valores especificados para o ID da instância ou para o ID da interface de rede. Se você não precisar do endereço IP elástico para aquele recurso, poderá dissociá-lo. Outra opção é alocar um novo endereço IP elástico à sua conta. Para obter mais informações, consulte [Começar a usar endereços IP elásticos](WorkWithEIPs.md). | 

## Cota de gateway NAT
<a name="nat-gateway-troubleshooting-quota"></a>

Ao tentar criar um gateway NAT, você obtém o erro a seguir.

```
Performing this operation would exceed the limit of 5 NAT gateways
```

**Causa**  
Você atingiu a cota do número de gateways NAT para essa zona de disponibilidade.

**Solução**

Se você atingiu essa cota de gateway NAT para sua conta, você pode fazer um dos seguintes procedimentos:
+ Solicite um aumento nos [ gateways NAT por cota de zona de disponibilidade](https://console.aws.amazon.com/servicequotas/home/services/vpc/quotas/L-FE5A380F) usando o console Service Quotas.
+ Verifique o status de seu gateway NAT. O status `Pending`, `Available` ou `Deleting` é contado em relação à sua cota. Se você tiver excluído um gateway NAT recentemente, espere alguns minutos para o status passar de `Deleting` para `Deleted`. Depois, tente criar outro gateway NAT.
+ Se não precisar de seu gateway NAT em uma zona de disponibilidade específica, tente criar um gateway NAT em uma zona de disponibilidade em que você não tenha atingido sua cota. 

Para obter mais informações, consulte [Cotas da Amazon VPC](amazon-vpc-limits.md).

## Cota de endereços IP elásticos
<a name="nat-gateway-troubleshooting-limits"></a>

**Problema**  
Quando você tenta alocar um endereço IP elástico para o gateway NAT público, você recebe o seguinte erro:

```
The maximum number of addresses has been reached.
```

**Causa**  
Você atingiu a cota do número de endereços IP elásticos para sua conta para essa Região.

**Solução**  
Se tiver atingido a cota de endereços IP elásticos, você poderá desassociar um endereço IP elástico de outro recurso. Como alternativa, você pode solicitar um aumento na[ cota Elastic IPs](https://console.aws.amazon.com/servicequotas/home/services/ec2/quotas/L-0263D0A3) usando o console Service Quotas.

## A zona de disponibilidade é incompatível
<a name="nat-gateway-troubleshooting-unsupported-az"></a>

**Problema**  
Ao tentar criar um gateway NAT, você obtém o seguinte erro: `NotAvailableInZone`.

**Causa**  
Você pode estar tentando criar o gateway NAT em uma zona de disponibilidade restrita, ou seja, uma zona em que nossa capacidade de expandir é restrita. 

**Solução**  
Não é possível oferecer suporte a gateways NAT nessas zonas de disponibilidade. Você pode criar um gateway NAT em uma Zona de disponibilidade diferente e usá-lo para sub-redes privadas na zona restringida. Além disso, você pode mover seus recursos para uma zona de disponibilidade irrestrita para que esses recursos e seu gateway NAT fiquem na mesma zona de disponibilidade.

## O gateway NAT não está mais visível
<a name="nat-gateway-troubleshooting-gateway-removed"></a>

**Problema**  
Você criou um gateway NAT, mas ele não está mais visível no console da Amazon VPC.

**Causa**  
Pode ter ocorrido um erro durante a criação do gateway NAT e a criação falhou. Um gateway NAT com um status `Failed` fica visível no console da Amazon VPC por mais ou menos uma hora). Após uma hora, ele é excluído automaticamente.

**Solução**  
Examine as informações em [Falha na criação do gateway NAT](#nat-gateway-troubleshooting-failed) e tente criar um novo gateway NAT.

## O gateway NAT não responde a um comando ping
<a name="nat-gateway-troubleshooting-ping"></a>

**Problema**  
Ao tentar executar ping em um endereço IP elástico ou em um endereço IP privado do gateway NAT na internet (por exemplo, no computador doméstico) ou em uma instância na VPC, você não receberá uma resposta. 

**Causa**  
O gateway NAT só transfere tráfego de uma instância em uma sub-rede privada para a internet.

**Solução**  
Para testar se um gateway NAT está funcionando, consulte [Testar o gateway NAT público](nat-gateway-scenarios.md#public-nat-gateway-testing).

## As instâncias não conseguem acessar a Internet
<a name="nat-gateway-troubleshooting-no-internet-connection"></a>

**Problema**  
Você criou um gateway NAT público e seguiu as etapas para testá-lo, mas o comando `ping` apresenta falha ou suas instâncias da sub-rede privada não conseguem acessar a Internet.

**Causas**  
A causa desse problema pode ser uma das seguintes: 
+ O gateway NAT não está pronto para enviar tráfego.
+ Sua tabela de rotas não está configurada de corretamente.
+ Seus grupos de segurança ou network ACLs estão bloqueando o tráfego de entrada ou de saída.
+ Você está usando um protocolo incompatível.

**Solução**  
Verifique as seguintes informações:
+ Verifique se o gateway NAT encontra-se no estado `Available`. No console da Amazon VPC, acesse a página **Gateways NAT** e visualize as informações de status no painel de detalhes. Se o gateway NAT estiver no estado de falha, pode ter havido um erro no momento de criá-lo. Para obter mais informações, consulte [Falha na criação do gateway NAT](#nat-gateway-troubleshooting-failed).
+ Verifique se você configurou corretamente as tabelas de rotas:
  + O gateway NAT deve estar em uma sub-rede pública com uma tabela de rotas que roteia o tráfego da internet para um gateway da internet.
  + A instância deve estar em uma sub-rede privada com uma tabela de rotas que roteia o tráfego da internet para o gateway NAT.
  + Verifique se não existe nenhuma outra entrada na tabela de rotas que roteia todo ou parte do tráfego da internet para outro dispositivo, e não para o gateway NAT.
+ Verifique se as regras do security group para a instância privada permitem tráfego de saída pela internet. Para o comando `ping` funcionar, as regras devem também permitir tráfego ICMP de saída.

   O gateway NAT propriamente dite permite tráfego de saída e tráfego recebido em resposta a uma solicitação de saída (por isso, ele é com estado).
+ Verifique se as Network ACLs associadas à sub-rede privada e às sub-redes públicas não têm regras que bloqueiam o tráfego de entrada e saída de internet. Para o comando `ping` funcionar, as regras devem também permitir tráfego ICMP de entrada e saída.

  Você pode permitir logs de fluxo para ajudá-lo a diagnosticar conexões encerradas por causa de regras de Network ACL ou security group. Para obter mais informações, consulte [Como registrar tráfego IP em log com logs de fluxo da VPC](flow-logs.md).
+ Se estiver usando o comando `ping`, verifique se está executando um ping para um host habilitado para ICMP. Se o ICMP não estiver habilitado, você não receberá pacotes de resposta. Para testar, execute o mesmo comando `ping` no terminal de linha de comando de seu computador. 
+ Verifique se sua instância pode executar ping em outros recursos; por exemplo, outras instâncias na sub-rede privada (supondo que as regras de security group permitam isso).
+ Verifique se sua conexão está usando somente o protocolo TCP, UDP ou ICMP.

## A conexão TCP para um destino apresenta falha
<a name="nat-gateway-troubleshooting-tcp-issues"></a>

**Problema**  
Algumas conexões TCP de instâncias em uma sub-rede privada para um destino específico por um gateway NAT são bem-sucedidas, mas outras estão apresentando falha ou atingindo o tempo limite.

**Causas**  
A causa desse problema pode ser uma das seguintes:
+ O endpoint de destino está respondendo com pacotes TCP fragmentados. Os gateways NAT não suportam fragmentação de IP para TCP ou ICMP. Para obter mais informações, consulte [Comparar gateways NAT e instâncias NAT](vpc-nat-comparison.md).
+ A opção `tcp_tw_recycle` está habilitada no servidor remoto, que é conhecido por causar problemas quando há várias conexões por trás de um dispositivo NAT.

**Soluções**  
Verifique se o endpoint ao qual você está tentando conectar está respondendo com pacotes TCP fragmentados fazendo o seguinte:

1. Use uma instância em uma sub-rede pública com um endereço IP pública para acionar uma resposta grande o suficiente para causar uma fragmentação de um endpoint específico.

1. Use o utilitário Use the `tcpdump` para verificar se o endpoint está enviando pacotes fragmentados.
**Importante**  
É necessário usar uma instância em uma sub-rede pública para executar essas verificações. Não é possível usar a instância na qual a conexão original estava falhando ou uma instância em uma sub-rede privada subjacente a um gateway NAT ou a uma instância NAT.

   As ferramentas de diagnóstico que enviam ou recebem grandes pacotes ICMP relatarão perda de pacote. Por exemplo, o comando `ping -s 10000 example.com` não funciona com um gateway NAT.

1. Se o endpoint estiver enviando pacotes TCP fragmentados, você poderá usar uma instância NAT, em vez de um gateway NAT.

Se tiver acesso ao servidor remoto, você poderá verificar se a opção `tcp_tw_recycle` está habilitada fazendo o seguinte:

1. No servidor, execute o comando a seguir.

   ```
   cat /proc/sys/net/ipv4/tcp_tw_recycle
   ```

   Se a saída for `1`, a opção `tcp_tw_recycle` estará habilitada.

1. Se a opção `tcp_tw_recycle` estiver habilitada, recomendamos desabilitá-la. Se precisar reutilizar conexões, `tcp_tw_reuse` é uma opção mais segura.

Se não tiver acesso ao servidor remoto, você poderá testar desabilitando temporariamente a opção `tcp_timestamps` em uma instância na sub-rede privada. Depois, conecte ao servidor remoto novamente. Se a conexão for bem-sucedida, a causa da falha anterior provavelmente ocorreu porque `tcp_tw_recycle` está habilitado no servidor remoto. Se for possível, entre em contato com o proprietário do servidor remoto para verificar se essa opção está habilitada e solicite que ela seja desabilitada.

## O resultado do traceroute não exibe endereço IP privado do gateway NAT
<a name="nat-gateway-troubleshooting-traceroute"></a>

**Problema**  
A instância pode acessar a internet, mas quando você executa o comando `traceroute`, o resultado não exibe o endereço IP privado do gateway NAT. 

**Causa**  
A instância está acessando a internet usando um gateway diferente, como um gateway da Internet.

**Solução**  
Na tabela de rotas da sub-rede na qual sua instância está localizada, verifique as informações a seguir:
+ Verifique se existe uma rota que envia tráfego de internet para o gateway NAT. 
+ Verifique se não existe mais de uma rota específica enviando tráfego de internet para outros dispositivos, como um gateway privado virtual ou um gateway da internet. 

## A conexão com a Internet cai após 350 segundos
<a name="nat-gateway-troubleshooting-timeout"></a>

**Problema**  
A instância pode acessar a Internet, mas a conexão cai após 350 segundos.

**Causa**  
Se uma conexão que usa um gateway NAT ficar ociosa por 350 segundos ou mais, ela expirará.

Quando uma conexão atinge o tempo limite, uma gateway NAT retorna um pacote RST a qualquer recurso subjacente ao gateway NAT que tenta dar continuidade à conexão (ele não envia um pacote FIN). 

**Solução**  
Para evitar que a conexão caia, você pode iniciar mais tráfegos por meio da conexão. Como alternativa, é possível habilitar o keepalive TCP na instância com um valor menor que 350 segundos.

## Não é possível estabelecer uma conexão IPsec
<a name="nat-gateway-troubleshooting-ipsec"></a>

**Problema**  
Não é possível estabelecer uma conexão IPsec em um destino.

**Causa**  
Atualmente, os gateways NAT não são compatíveis com o protocolo IPsec.

**Solução**  
Você pode usar o NAT- Traversal (NAT-T) para encapsular o tráfego IPsec na UDP, que é um protocolo compatível com gateways NAT. Lembre-se de testar sua configuração de NAT-T e de IPsec para verificar se o tráfego IPsec não é interrompido.

## Não é possível iniciar mais conexões
<a name="nat-gateway-troubleshooting-simultaneous-connections"></a>

**Problema**  
Você tem conexões existentes para um destino por meio de um gateway NAT, mas não pode estabelecer mais conexões.

**Causa**  
Talvez você tenha atingido o limite de conexões simultâneas para um único gateway NAT. Para obter mais informações, consulte [Noções básicas de gateway NAT](nat-gateway-basics.md). Se as instâncias na sub-rede privada criarem um grande número de conexões, você poderá atingir esse limite. 

**Solução**  
Execute um destes procedimentos:
+ Criar um gateway NAT por Zona de disponibilidade e distribuir seus clientes nessas zonas.
+ Criar outros gateways NAT na sub-rede pública e distribuir seus clientes em várias sub-redes privadas, cada uma com uma rota para um gateway NAT diferente.
+ Limitar o número de conexões que seus clientes podem criar para o destino.
+ Use a métrica [`IdleTimeoutCount`](vpc-nat-gateway-cloudwatch.md) no CloudWatch para monitorar aumentos nas conexões ociosas. Fechar as conexões ociosas para liberar capacidade.
+ Crie um gateway NAT com vários endereços IP ou adicione endereços IP secundários a um gateway NAT existente. Cada novo endereço IPv4 comporta no máximo 55.000 conexões simultâneas. Para ter mais informações, consulte [Criar um gateway NAT](nat-gateway-working-with.md#nat-gateway-creating) ou [Editar associações de endereço IP secundário](nat-gateway-working-with.md#nat-gateway-edit-secondary).