Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Determinados cenários exigem que máquinas virtuais ou instâncias de computação tenham conectividade de saída com a Internet. Os IPs de front-end de um balanceador de carga público podem ser usados para fornecer conectividade de saída à Internet para instâncias de back-end. Essa configuração usa a SNAT (conversão de endereços de rede de origem) para converter IP privado da máquina virtual no endereço IP público do balanceador de carga. A SNAT mapeia o endereço IP do back-end para o IP do balanceador de carga. O SNAT impede que fontes externas tenham um endereço direto para as instâncias de back-end.
Escolha um método de conectividade de saída
Escolha um método explícito de conectividade de saída antes de implantar uma carga de trabalho:
- Use o Gateway da NAT do Azure para conectividade escalável e apenas de saída a partir de uma sub-rede.
- Use um IP público em nível de instância quando uma máquina virtual precisa de seu próprio endereço público.
- Use regras de saída quando as instâncias de back-end usarem um IP de front-end de um balanceador de carga para conectividade de saída.
- Evite acesso padrão de saída para cargas de trabalho em produção. Novas redes virtuais usam sub-redes privadas por padrão.
Métodos de conectividade de saída do Azure
Os métodos a seguir são os mais usados do Azure para habilitar a conectividade de saída, listados em ordem de prioridade quando vários métodos são utilizados:
| # | Método | Tipo de alocação de porta | Grau de produção? | Classificação |
|---|---|---|---|---|
| 1 | Associar o Gateway da NAT do Azure à sub-rede | Dinâmico, explícito | Sim | Melhor opção |
| 2 | Atribuir um IP público à máquina virtual | Estático, explícito | Sim | OK |
| 3 | Use os endereços IP de front-end de um balanceador de carga para saída por meio de regras de saída | Estático, explícito | Sim, mas não em escala | OK |
| 4 | Usar o endereço IP de front-end de um balanceador de carga para saída sem regras de saída | Estático, implícito | Não | Pior opção |
| 5 | Acesso de saída padrão | Implícito | Não | Pior opção |
1. Associe Gateway da NAT do Azure à subnet
Gateway da NAT do Azure simplifica a conectividade de internet apenas de saída para redes virtuais. Quando você configura em uma sub-rede, toda conectividade de saída usa seus endereços IP públicos estáticos especificados. Você pode ter conectividade de saída sem um balanceador de carga ou endereços IP públicos conectados diretamente às máquinas virtuais. O Gateway da NAT é totalmente gerenciado e altamente resiliente.
Usar o NAT Gateway é o melhor método para conectividade de saída. O NAT Gateway é altamente extensível, confiável e não tem as mesmas preocupações com o esgotamento das portas do SNAT.
O NAT Gateway tem precedência sobre outros métodos de conectividade de saída, incluindo balanceador de carga, endereços IP públicos em nível de instância e Firewall do Azure.
Para obter mais informações sobre Gateway da NAT do Azure, consulte O que é Gateway da NAT do Azure. Para obter detalhes sobre como o comportamento SNAT funciona com o NAT Gateway, veja SNAT com NAT Gateway.
2. Atribua um IP público à máquina virtual
| Associações | Método | Protocolos IP |
|---|---|---|
| IP público na NIC da VM | A SNAT (conversão de endereços de rede de origem) não é usada. |
Protocolo TCP protocolo UDP protocolo ICMP protocolo ESP |
O tráfego retorna ao cliente solicitante do endereço IP público da máquina virtual (IP no nível da instância).
Azure usa o IP público atribuído à configuração de IP da NIC da instância para todos os fluxos de saída. A instância possui todas as portas efêmeras disponíveis. Não importa se a VM é ou não de balanceamento de carga. Esse cenário tem precedência sobre os outros, exceto para o Gateway da NAT.
Um IP público atribuído a uma VM é uma relação 1:1 (em vez de 1:muitos) e implementado como sem estado 1:1 NAT.
3. Use os endereços IP de front-end de um balanceador de carga para saída por meio de regras de saída
As regras de saída permitem que você defina explicitamente o SNAT (conversão de endereços de rede de origem) para um balanceador de carga público standard de SKU padrão. Essa configuração permite que você use o IP público ou os IPs do balanceador de carga para conectividade de saída das instâncias de back-end.
Essa configuração permite:
Representação de IP
Simplificando as listas de permitidos
Reduz o número de recursos IP públicos para implantação
Com as regras de saída, você tem total controle declarativo sobre a conectividade de saída para a Internet. As regras de saída permitem escalar e ajustar essa capacidade às suas necessidades específicas por meio da alocação manual de porta. Alocar manualmente a porta SNAT com base no tamanho do pool de back-end e no número de frontendIPConfigurations pode ajudar a evitar o esgotamento de SNAT.
Você pode alocar manualmente portas SNAT por "portas por instância" ou "número máximo de instâncias de back-end". Se você tiver máquinas virtuais no back-end, é recomendável alocar portas por "portas por instância" para obter o uso máximo da porta SNAT.
Calcule as portas por instância da seguinte maneira:
Número de IPs de front-end * 64K / Número de instâncias de back-end
Se você tiver Conjuntos de Dimensionamento de Máquinas Virtuais no back-end, é recomendável alocar portas por "número máximo de instâncias de back-end". Se mais VMs forem adicionadas ao back-end do que as portas SNAT restantes permitidas, é possível que o escalonamento horizontal dos Conjuntos de Dimensionamento de Máquinas Virtuais esteja bloqueado ou que as novas VMs não receberão portas SNAT suficientes.
Observação
Quando vários IPs de front-end são configurados usando regras de saída, as conexões de saída podem vir de qualquer um dos IPs de front-end configurados para a instância de back-end. Não é recomendável criar nenhuma dependência nas quais o IP de front-end pode ser selecionado para as conexões.
Para obter mais informações sobre regras de saída, confira Regra de saída.
4. Use o endereço IP de front-end de um balanceador de carga para saída sem regras de saída
Esta opção é semelhante à anterior, exceto quando nenhuma regra de saída é criada. Nesse caso, os front-ends do balanceador de carga ainda são usados para saída, mas isso é feito implicitamente sem regras que especificam qual front-end seria usado. Não usar regras de saída também diminui a escalabilidade de saída, pois a conectividade de saída implícita tem um número fixo de portas SNAT por endereço IP de front-end, o que pode levar ao esgotamento da porta em cenários de alto tráfego.
5. Acesso de saída padrão
Em Azure, as máquinas virtuais criadas em uma rede virtual sem conectividade de saída explícita definida são atribuídas a um endereço IP público de saída padrão. Esse endereço IP permite a conectividade de saída dos recursos para a Internet. Esse acesso é conhecido como acesso de saída padrão. Esse método de acesso não é recomendado, pois não é seguro e os endereços IP estão sujeitos a alterações.
Importante
Em 31 de março de 2026, novas redes virtuais usam sub-redes privadas por padrão. Para saber mais, confira o anúncio oficial. Use uma das formas explícitas de conectividade, conforme mostrado nas opções 1 a 3 acima.
portas SNAT do Azure Load Balancer
As portas geram identificadores exclusivos que mantêm fluxos distintos. A Internet usa uma tupla de cinco para fornecer essa distinção.
Se você usa uma porta para conexões de entrada, ela tem um listener para solicitações de conexão de entrada nessa porta. Essa porta não pode ser usada para conexões de saída. Para estabelecer uma conexão de saída, use uma porta efêmera para fornecer ao destino uma porta na qual se comunicar e manter um fluxo de tráfego distinto. Quando essas portas efêmeras são usadas para SNAT, são chamadas de portas SNAT.
Por definição, cada endereço IP tem 65.535 portas. Cada porta pode ser usada para conexões de entrada ou saída para TCP (Protocolo de Controle de Transmissão) e UDP (Protocolo de Datagrama do Usuário). Quando você adiciona um endereço IP público como um IP de front-end a um balanceador de carga, 64.000 portas são qualificadas para SNAT.
Cada porta usada em uma regra de balanceamento de carga ou regra NAT de entrada consome um intervalo de oito portas das 64.000 portas SNAT disponíveis. Esse uso reduzirá o número de portas qualificadas para SNAT, se o mesmo IP de front-end for usado para conectividade de saída. Se as portas consumidas de regras NAT de entrada ou de balanceamento de carga estiverem no mesmo bloco de oito portas consumidas por outra regra, as regras não exigirão portas extras.
Observação
Se você precisar se conectar a qualquer serviço de PaaS Azure com suporte, como Armazenamento do Azure, SQL do Azure ou Azure Cosmos DB, use Link Privado do Azure para evitar totalmente o SNAT. Link Privado do Azure envia o tráfego de sua rede virtual para Azure serviços pela rede de backbone Azure em vez de pela Internet.
O Link Privado é a opção recomendada em pontos de extremidade de serviço para acesso privado aos serviços hospedados do Azure. Para obter mais informações sobre a diferença entre Link Privado e pontos de extremidade de serviço, consulte Compare pontos de extremidade privados e pontos de extremidade de serviço.
Comportamento padrão do SNAT do Azure Load Balancer
Quando uma VM cria um fluxo de saída, Azure converte o endereço IP de origem em um endereço IP efêmero. Azure executa essa tradução por meio do SNAT.
Se você usar SNAT sem regras de saída por meio de um balanceador de carga público, o sistema pré-aloca as portas SNAT, conforme descrito na tabela de alocação de portas SNAT padrão a seguir:
Tabela de alocação de portas padrão
Quando você habilita a alocação de porta padrão, o sistema aloca portas SNAT com base no tamanho do pool de back-end. Cada back-end recebe o número de portas definidas pela tabela, por IP de front-end, até um máximo de 1.024 portas. Não use a alocação de porta padrão para cargas de trabalho de produção, pois ela aloca um número mínimo de portas para cada instância de back-end e aumenta o risco de esgotamento da porta SNAT. Em vez disso, considere usar o Gateway da NAT do Azure ou alocar manualmente portas nas regras de saída do seu balanceador de carga.
Você pode habilitar a alocação de porta padrão de várias maneiras:
- Configure uma regra de balanceamento de carga com
disableOutboundSnatdefinido comofalse, ou selecione a opção de alocação de porta padrão em uma regra do balanceador de carga no portal do Azure. - Configure uma regra de saída, mas defina a
allocatedOutboundPortspropriedade como0, ou selecione Habilitar alocação de porta padrão no portal Azure.
Por exemplo, com 100 VMs em um pool de back-end e apenas um IP de front-end, cada VM recebe 512 portas. Se você adicionar um segundo IP de front-end, cada VM receberá 512 portas extras. Essa alocação significa que cada VM recebe um total de 1.024 portas. Como resultado, adicionar um terceiro IP de front-end não aumenta o número de portas SNAT alocadas além de 1.024 portas.
Como regra geral, você pode calcular o número de portas SNAT fornecidas quando a alocação de porta padrão é aplicada como: MIN(# of default SNAT ports provided based on pool size * number of frontend IPs associated with the pool, 1024).
A tabela a seguir mostra as pré-alocações de porta do SNAT para um único IP de front-end, dependendo do tamanho do pool de back-end:
| Tamanho do pool (instâncias VM) | Portas do SNAT padrão |
|---|---|
| 1-50 | 1.024 |
| 51-100 | 512 |
| 101-200 | 256 |
| 201-400 | 128 |
| 401-800 | 64 |
| 801-1,000 | 32 |
Esgotamento de porta
Todas as conexões com o mesmo IP de destino e a mesma porta de destino usam uma porta SNAT. Essa conexão mantém um fluxo de tráfego distinto da instância de back-end ou do cliente para um servidor. Esse processo fornece ao servidor uma porta distinta para endereçar o tráfego. Sem esse processo, o computador cliente não estará ciente do fluxo do qual um pacote faz parte.
Imagine ter vários navegadores indo para https://www.microsoft.com, que é:
IP de destino: 23.53.254.142
Porta de destino = 443
Protocolo = TCP
Sem portas SNAT para o tráfego de retorno, o cliente não tem como separar um resultado de consulta de outro.
Conexões de saída podem ser intermitentes. Uma instância de back-end pode ser alocada em portas insuficientes. Use a funcionalidade de reutilização de conexão em seu aplicativo. Sem a reutilização de conexão, o risco de esgotamento da porta SNAT aumenta.
Para obter mais informações sobre o pool de conexões com Serviço de Aplicativo do Azure, consulte Solução de problemas de erros de conexão de saída intermitente no Serviço de Aplicativo do Azure.
Novas conexões de saída para um IP de destino falham quando o esgotamento de porta ocorre. As conexões são realizadas quando uma porta é disponibilizada. Esse esgotamento ocorre quando as 64 mil portas de um endereço IP são espalhadas de modo dinâmico em várias instâncias de back-end. Para obter diretrizes sobre a mitigação do esgotamento da porta SNAT, consulte Support e solução de problemas para Azure Load Balancer.
Reutilização de porta
Para TCP, cada conexão ativa requer uma tupla de origem traduzida distinta para uma tupla de destino específica, que consiste no endereço IP de destino e na porta de destino. Você pode reutilizar uma porta SNAT para uma conexão com um endereço IP de destino diferente ou uma porta de destino diferente. Você não pode reutilizá-la para outra conexão ativa da mesma instância de back-end para o mesmo endereço IP de destino e porta de destino.
Para conexões UDP, o balanceador de carga usa um algoritmo NAT de cone com restrição de porta, que consome uma porta SNAT por IP de destino, independentemente da porta de destino.
Você pode reutilizar portas individuais para um número ilimitado de conexões em que a reutilização é permitida (quando o IP ou a porta de destino é diferente).
No exemplo na tabela a seguir, uma instância de back-end com IP privado 10.0.0.1 faz conexões TCP com IPs de destino 23.53.254.142 e 26.108.254.155, enquanto o balanceador de carga é configurado com o endereço IP de front-end 192.0.2.0. Como os IPs de destino são diferentes, a mesma porta SNAT pode ser reutilizado para várias conexões.
| Flow | Tupla de origem | Tupla de origem após a SNAT | Tupla de destino |
|---|---|---|---|
| 1 | 10.0.0.1:80 | 192.0.2.0:1 | 23.53.254.142:80 |
| 2 | 10.0.0.1:80 | 192.0.2.0:1 | 26.108.254.155:80 |
Restrições
As seguintes restrições se aplicam ao Azure Load Balancer SNAT. Restrições individuais identificam quando se aplicam apenas a TCP, UDP, regras de saída ou configurações de IP público em nível de instância.
Quando uma conexão está ociosa sem novos pacotes sendo enviados, as portas são liberadas após 4 a 120 minutos.
Você pode configurar esse limite por meio de regras de saída.
Cada endereço IP fornece 64.000 portas que você pode usar para SNAT.
Cada porta pode ser usada para conexões TCP e UDP para um endereço IP de destino.
Você precisa de uma porta UDP SNAT, independentemente de a porta de destino ser exclusiva ou não. Para cada conexão UDP com um IP de destino, é usada uma porta UDP SNAT.
Uma porta SNAT TCP pode ser usada para várias conexões com o mesmo IP de destino, desde que as portas de destino sejam diferentes.
O esgotamento de SNAT ocorre quando uma instância de backend fica sem as portas SNAT atribuídas. Um balanceador de carga ainda pode ter portas SNAT não utilizadas. Se as portas SNAT usadas por uma instância de back-end excederem as portas SNAT fornecidas, ela não poderá estabelecer novas conexões de saída.
O sistema libera pacotes fragmentados, a menos que a saída seja feita por um endereço IP público em nível de instância na NIC da VM.
As regras de saída não oferecem suporte a configurações IPv4 secundárias de uma interface de rede. Para conectividade de saída em configurações IPv4 secundárias, anexe endereços IP públicos em nível de instância ou use o Gateway da NAT do Azure em vez disso.
Próximas etapas
- Support e solução de problemas para Azure Load Balancer
- Examine as métricas SNAT e familiarize-se com a maneira correta de filtrá-las, dividi-las e exibi-las.
- Aprenda como migrar seu método de conectividade de saída existente para o Gateway da NAT do Azure.