Recurso do Gateway da NAT do Azure

Este artigo descreve os principais componentes do recurso de gateway NAT que permitem que ele forneça conectividade de saída altamente segura, escalável e resiliente. Alguns desses componentes podem ser configurados em sua assinatura por meio do portal do Azure, CLI do Azure, Azure PowerShell, modelos do Gerenciador de Recursos ou alternativas apropriadas.

Arquitetura do Gateway da NAT

O Gateway da NAT usa a rede definida pelo software para operar como um serviço totalmente gerenciado e distribuído. Como o Gateway da NAT tem vários domínios de falha, ele tem a capacidade de suportar várias falhas sem nenhum efeito no serviço.

O Gateway da NAT fornece SNAT (conversão de endereços de rede de origem) para instâncias privadas nas sub-redes da sua rede virtual do Azure. Quando configurados em uma sub-rede, os IPs privados nas sub-redes são convertidos pela SNAT em endereços IP públicos estáticos de um gateway da NAT para se conectarem à saída pela Internet. O Gateway da NAT também fornece o DNAT (conversão de endereço de rede de destino) para pacotes de resposta somente para uma conexão originada da saída.

Diagrama de um recurso de Gateway da NAT com máquinas virtuais e um Conjunto de Dimensionamento de Máquinas Virtuais.

Figura: Gateway da NAT do Azure para saída para a Internet

Quando um gateway da NAT é anexado a uma sub-rede dentro de uma rede virtual, ele presume o tipo de próximo salto padrão da sub-rede para todo o tráfego de saída direcionado para a Internet. Nenhuma configuração de roteamento extra é necessária. O Gateway da NAT não fornece conexões de entrada não solicitadas da Internet. O DNAT só é executado para pacotes que chegam como uma resposta a um pacote de saída.

Sub-redes

Um gateway da NAT pode ser anexado a várias sub-redes em uma rede virtual para fornecer conectividade de saída à Internet. Quando um gateway da NAT é anexado a uma sub-rede, ele presume a rota padrão para a Internet. Em seguida, o gateway da NAT será o tipo de próximo salto para todo o tráfego de saída destinado à Internet.

As seguintes configurações de sub-rede não podem ser usadas com um gateway da NAT:

  • Quando o gateway NAT é conectado a uma sub-rede, ele assume a rota padrão para a Internet. Apenas um gateway NAT pode servir como rota padrão para a Internet para uma sub-rede.

  • Um gateway da NAT não pode ser anexado a sub-redes de redes virtuais diferentes.

  • Um gateway da NAT não pode ser usado com uma sub-rede de gateway. Uma sub-rede de gateway é uma sub-rede designada para um gateway de VPN para enviar o tráfego criptografado entre uma rede virtual do Azure e um ambiente local. Para obter mais informações sobre a sub-rede do gateway, confira Sub-rede do gateway.

Endereços IP públicos estáticos

Um gateway da NAT pode ser associado a endereços IP públicos estáticos ou prefixos de IP público para fornecer a conectividade de saída. O Gateway da NAT dá suporte a endereços IPv4. Um gateway da NAT pode usar endereços IP públicos ou prefixos em qualquer combinação, em um total de até 16 endereços IP. Se você atribuir um prefixo de IP público, todo o prefixo de IP público será usado. Você pode usar um prefixo IP público diretamente ou distribuir os endereços IP públicos do prefixo entre vários recursos do gateway da NAT. O gateway NAT prepara todo o tráfego para o intervalo de endereços IP do prefixo.

  • Um gateway da NAT não pode ser usado com endereços IP públicos IPv6 ou prefixos.

  • Um gateway da NAT não pode ser usado com endereços IP públicos de SKU básico.

Portas SNAT

O inventário de portas SNAT é fornecido pelos endereços IP públicos, pelos prefixos de IP público ou por ambos, anexados a um gateway da NAT. O inventário de portas SNAT é disponibilizado sob demanda para todas as instâncias em uma sub-rede anexada ao gateway da NAT. Nenhuma pré-alocação de portas SNAT por instância é necessária.

Para obter mais informações sobre as portas SNAT e o Gateway da NAT do Azure, confira SNAT (conversão de endereços de rede de origem) com o Gateway da NAT do Azure.

Quando várias sub-redes em uma rede virtual são anexadas ao mesmo recurso do gateway da NAT, o inventário de portas SNAT fornecido pelo Gateway da NAT é compartilhado entre todas as sub-redes.

As portas SNAT servem como identificadores exclusivos para distinguir fluxos de conexão diferentes uns dos outros. A mesma porta SNAT pode ser usada para se conectar a pontos de extremidade de destino diferentes ao mesmo tempo.

Portas SNAT diferentes são usadas para fazer conexões com o mesmo ponto de extremidade de destino, a fim de distinguir fluxos de conexão diferentes uns dos outros. As portas SNAT que estão sendo reutilizadas para se conectar ao mesmo destino são colocadas em um temporizador de resfriamento de reutilização antes que possam ser reutilizadas.

Um gateway da NAT pode dimensionar até 16 endereços IP. Cada IP do gateway da NAT fornece 64.512 portas SNAT para fazer conexões de saída. Um gateway da NAT pode ser escalado verticalmente para mais de 1 milhão de portas SNAT. O TCP e o UDP são inventários de portas de SNAT separados e não estão relacionados ao Gateway da NAT.

Zonas de disponibilidade

Um Gateway da NAT pode ser criado em uma zona de disponibilidade específica ou colocado em nenhuma zonaDNS. Quando um gateway da NAT é colocado em nenhuma zona, o Azure seleciona uma zona na qual o gateway da NAT ficará localizado.

Endereços IP públicos com redundância de zona podem ser usados com recursos do gateway da NAT de zona ou sem zona.

A recomendação é configurar um gateway da NAT para zonas de disponibilidade individuais. Além disso, ele deve ser anexado a sub-redes com instâncias privadas da mesma zona. Para obter mais informações sobre as zonas de disponibilidade e o Gateway da NAT do Azure, confira Considerações sobre design de zonas de disponibilidade.

Diagrama de isolamento zonal criando pilhas zonais.

Depois que um gateway da NAT é implantado, a seleção de zona não pode ser alterada.

Protocolos

O Gateway da NAT interage com o IP e os cabeçalhos de transporte de IP dos fluxos do UDP e do TCP. O Gateway da NAT é independente de conteúdos de camada de aplicativo. Outros protocolos IP não são compatíveis.

Redefinição de TCP

Um pacote de redefinição de TCP é enviado quando um gateway da NAT detecta um tráfego em um fluxo de conexão que não existe. O pacote de redefinição de TCP indica para o ponto de extremidade de recebimento que a liberação do fluxo de conexão ocorreu e qualquer comunicação futura nessa mesma conexão TCP falhará. A redefinição de TCP é unidirecional para um gateway da NAT.

O fluxo de conexão pode não existir se:

  • O tempo limite ocioso foi atingido após um período de inatividade no fluxo de conexão e a conexão é silenciosamente removida.

  • O remetente, do lado da rede do Azure ou do lado da Internet pública, enviou um tráfego após a conexão ser removida.

Um pacote de redefinição de TCP é enviado somente ao detectar o tráfego no fluxo de conexão removido. Essa operação significa que um pacote de redefinição TCP pode não ser enviado imediatamente após a queda do fluxo de conexão.

O sistema envia um pacote de redefinição de TCP em resposta à detecção de tráfego em um fluxo de conexão inexistente, independentemente de o tráfego ser proveniente do lado da rede do Azure ou do lado da Internet pública.

Tempo limite de ociosidade do TCP

Um gateway da NAT fornece um intervalo de tempo limite ocioso configurável de 4 a 120 minutos para protocolos TCP. Os protocolos UDP têm um tempo limite ocioso não configurável de 4 minutos.

Quando uma conexão fica ociosa, o gateway da NAT mantém-se na porta SNAT até que a conexão atinja o tempo limite ocioso. Como os temporizadores longos de tempo limite ocioso podem aumentar desnecessariamente a probabilidade de esgotamento da porta SNAT, não é recomendável aumentar a duração do tempo limite ocioso de TCP para mais tempo do que o tempo padrão de 4 minutos. O temporizador de tempo limite ocioso não afeta um fluxo que nunca fica ocioso.

As keepalives TCP podem ser usadas para fornecer um padrão de atualização de conexões ociosas por longos períodos e detecção de atividade do ponto de extremidade. Para obter mais informações, consulte estes exemplos do .NET. Os keepalives TCP aparecem como ACKs duplicados para os pontos de extremidade, representam pouca sobrecarga e são invisíveis para a camada do aplicativo.

Os temporizadores de tempo limite ocioso de UDP não são configuráveis, as manutenções de atividades de UDP devem ser usadas para garantir que o valor do tempo limite ocioso não seja atingido e que a conexão seja mantida. Ao contrário das conexões TCP, um keep alive de UDP habilitado em um lado da conexão somente se aplica ao fluxo de tráfego em uma direção. Os keep alives de UDP deverão ser habilitados em ambos os lados do fluxo de tráfego para manter o fluxo de tráfego ativo.

Temporizadores

Temporizadores de reutilização de porta

Os temporizadores de reutilização de porta determinam o tempo, após o fechamento de uma conexão, que uma porta de origem ficará mantida inoperante antes que possa ser reutilizada para ir ao mesmo ponto de extremidade de destino pelo gateway da NAT.

A tabela a seguir fornece informações sobre quando uma porta TCP fica disponível para reutilização para o mesmo ponto de extremidade de destino pelo gateway da NAT.

Temporizador Descrição Valor
TCP FIN Depois que uma conexão é fechada por um pacote TCP FIN, um temporizador de 65 segundos que mantém a porta SNAT inoperante é ativado. A porta SNAT fica disponível para reutilização após o término do temporizador. 65 segundos
TCP RST Depois que uma conexão é fechada por um pacote TCP RST (redefinição), é ativado um temporizador de 16 segundos que mantém a porta SNAT inoperante. Quando o temporizador terminar, a porta ficará disponível para reutilização. 16 segundos
TCP semiaberto Durante o estabelecimento da conexão em que um ponto de extremidade de conexão está aguardando a confirmação do outro ponto de extremidade, um temporizador de 30 segundos é ativado. Se nenhum tráfego é detectado, a conexão é fechada. Depois que a conexão for fechada, a porta de origem estará disponível para reutilização no mesmo ponto de extremidade de destino. 30 segundos

Para o tráfego UDP, após o fechamento de uma conexão, a porta fica inoperante por 65 segundos antes de ficar disponível para reutilização.

Temporizadores de tempo limite ocioso

Temporizador Descrição Valor
Tempo limite de ociosidade do TCP As conexões TCP podem ficar ociosas quando nenhum dado é transmitido entre os pontos de extremidade por um período prolongado. Um temporizador pode ser configurado de quatro minutos (padrão) a 120 minutos (duas horas) para tempo limite de uma conexão que ficou ociosa. O tráfego no fluxo redefine o temporizador de tempo limite ocioso. Configurável; quatro minutos (padrão) a 120 minutos
Tempo limite de ociosidade do TCP As conexões UDP podem ficar ociosas quando nenhum dado é transmitido entre os pontos de extremidade por um período prolongado. Os temporizadores de tempo limite ocioso de UDP são de 4 minutos e não são configuráveis. O tráfego no fluxo redefine o temporizador de tempo limite ocioso. Não configurável; 4 minutos

Observação

Essas configurações de temporizador estão sujeitas a alterações. Os valores são fornecidos para auxiliar a solucionar problemas e você não deverá assumir uma dependência de temporizadores específicos nesse momento.

Largura de banda

Cada gateway NAT pode fornecer até um total de 50 Gbps de taxa de transferência. O limite da taxa de transferência de dados é dividido entre dados de saída e de entrada (resposta). A taxa de transferência de dados é limitada a 25 Gbps para dados de saída e 25 Gbps para dados de entrada (resposta) por recurso de gateway NAT. Você pode dividir suas implantações em várias sub-redes e atribuir a cada sub-rede ou grupo de sub-redes um gateway da NAT para escala horizontal.

Desempenho

Um gateway da NAT pode dar suporte a até 50 mil conexões simultâneas por endereço IP público para o mesmo ponto de extremidade de destino pela Internet para TCP e UDP. O gateway da NAT pode processar 1 milhão de pacotes por segundo e escalar verticalmente até 5 milhões de pacotes por segundo.

O número total de conexões aos quais um gateway da NAT pode dar suporte a qualquer momento especificado é de até 2 milhões. Se o gateway NAT exceder 2 milhões de conexões, você verá um declínio na disponibilidade do caminho de dados e novas conexões falharão.

Limitações

  • Os endereços IP públicos básicos e os balanceadores de carga básicos não são compatíveis com o gateway da NAT. Em vez disso, use IPs públicos e balanceadores de carga de SKU padrão.

  • O gateway da NAT não dá suporte para ICMP

  • A fragmentação de IP não está disponível para o Gateway da NAT.

  • O Gateway da NAT não dá suporte a endereços IP públicos com a configuração de roteamento do tipo Internet. Para ver uma lista de serviços do Azure que dão suporte à configuração de roteamento Internet em IPs públicos, confira Serviços com suporte para roteamento pela Internet pública.

  • IPs públicos com proteção contra DDoS habilitada não são suportados com o gateway NAT. Para obter mais informações, consulte Limitações de DDoS.

Próximas etapas