Escalar portas SNAT com Azure NAT Gateway

Azure Firewall fornece 2.496 portas SNAT por endereço IP público configuradas por cada instância de conjunto de escalas de máquina virtual backend (mínimo de duas instâncias), e pode associar até 250 endereços IP públicos. Dependendo da sua arquitetura e padrões de tráfego, você pode precisar de mais do que as 1.248.000 portas SNAT disponíveis com essa configuração. Por exemplo, quando o usas para proteger grandes implementações Azure Virtual Desktop que se integram com Microsoft 365 Apps.

Um dos desafios com o uso de um grande número de endereços IP públicos é quando há requisitos de filtragem de endereços IP downstream. O Azure Firewall não suporta a atribuição direta de um prefixo IP público a si próprio, mas pode usar endereços IP públicos individuais de SKU Standard provisionados a partir de um prefixo IP público. Quando o Azure Firewall está associado a múltiplos endereços IP públicos, a filtragem a jusante deve permitir todos os endereços IP públicos associados a ele. Se provisionar estes endereços a partir de prefixos IP públicos, pode permitir os intervalos de prefixos correspondentes em vez de listar cada endereço individualmente.

Uma opção melhor para escalar e alocar dinamicamente portas SNAT de saída é usar um Azure NAT Gateway. Fornece 64.512 portas SNAT por endereço IP público e suporta até 16 endereços IP públicos IPv4. Isso efetivamente fornece até 1.032.192 portas SNAT de saída. Azure NAT Gateway também aloca dinamicamente portas SNAT ao nível de uma subrede, de modo que todas as portas SNAT fornecidas pelos seus endereços IP associados estejam disponíveis sob demanda para fornecer conectividade de saída.

Quando associa um gateway NAT ao AzureFirewallSubnet, o tráfego de internet de saída do firewall utiliza os endereços IP públicos do gateway NAT. Não precisa de uma rota adicional definida pelo utilizador (UDR) para enviar esse tráfego do firewall através do gateway NAT. Mantenha as rotas da sub-rede da carga de trabalho que encaminham o tráfego para o endereço IP privado do firewall para inspeção. O tráfego de resposta para um fluxo de saída também passa pelo gateway NAT. Se vários endereços IP públicos estiverem associados ao gateway NAT, este seleciona um endereço aleatoriamente. Não podes especificar qual o endereço a usar.

Não há NAT duplo com esta arquitetura. As instâncias do Azure Firewall enviam o tráfego para o gateway NAT usando o seu endereço IP privado em vez do endereço IP público do Azure Firewall.

Escolha entre múltiplos endereços IP públicos e NAT Gateway

Quando o seu firewall fica sem portas SNAT, pode adicionar múltiplos endereços IP públicos ou usar um gateway NAT:

  • Adicione vários endereços IP públicos quando for sensível a custos e as suas necessidades de escala forem moderadas. Cada endereço IP público adiciona 2.496 portas SNAT por instância de backend, e pode associar até 250 endereços IP públicos. Para os passos, veja Implantar um Azure Firewall com múltiplos endereços IP públicos.
  • Utilize um gateway NAT quando necessitar de alocação dinâmica de portas SNAT em toda a sub-rede. Fornece até 64.512 portas SNAT por endereço IP público.

Para uma comparação completa de vantagens e desventajas, consulte Melhores práticas para o desempenho do Azure Firewall.

Para criar um gateway NAT StandardV2 como parte de uma implementação do Azure Firewall no portal, selecione Ativar gateway NAT no separador Avançado. Para o procedimento completo, consulte Criar Azure Firewall com um gateway NAT StandardV2. Os exemplos seguintes de PowerShell e CLI associam um gateway NAT Standard a uma sub-rede de firewall existente.

Nota

Utilize um gateway NAT StandardV2 com um firewall com redundância entre zonas. Um gateway NAT Standard não suporta implementações redundantes por zona. Para os passos, veja Integrar Azure Firewall com NAT Gateway V2. Para mais informação sobre diferenças de SKU, consulte SKUs do NAT Gateway. O Azure NAT Gateway não é suportado dentro de um hub virtual seguro (vWAN). Numa arquitetura vWAN, configure o NAT Gateway diretamente nas redes virtuais spoke. Para passos para integrar o NAT Gateway com um firewall numa rede virtual hub, consulte o tutorial de integração do NAT gateway e do Azure Firewall. Para mais informações sobre as opções de arquitetura Azure Firewall, veja Quais são as opções de arquitetura Azure Firewall Manager?

Associar um gateway NAT a uma sub-rede do Azure Firewall - Azure PowerShell

O exemplo seguinte cria e anexa um gateway NAT com uma sub-rede Azure Firewall usando Azure PowerShell.

# Create public IP addresses
New-AzPublicIpAddress -Name public-ip-1 -ResourceGroupName nat-rg -Sku Standard -AllocationMethod Static -Location 'South Central US'
New-AzPublicIpAddress -Name public-ip-2 -ResourceGroupName nat-rg -Sku Standard -AllocationMethod Static -Location 'South Central US'

# Create NAT gateway
$PublicIPAddress1 = Get-AzPublicIpAddress -Name public-ip-1 -ResourceGroupName nat-rg
$PublicIPAddress2 = Get-AzPublicIpAddress -Name public-ip-2 -ResourceGroupName nat-rg
New-AzNatGateway -Name firewall-nat -ResourceGroupName nat-rg -PublicIpAddress $PublicIPAddress1,$PublicIPAddress2 -Location 'South Central US' -Sku Standard

# Associate NAT gateway to subnet
$virtualNetwork = Get-AzVirtualNetwork -Name nat-vnet -ResourceGroupName nat-rg
$natGateway = Get-AzNatGateway -Name firewall-nat -ResourceGroupName nat-rg
$firewallSubnet = $virtualNetwork.subnets | Where-Object -Property Name -eq AzureFirewallSubnet
$firewallSubnet.NatGateway = $natGateway
$virtualNetwork | Set-AzVirtualNetwork

Associar um gateway NAT a uma subnet do Azure Firewall - CLI do Azure

O exemplo seguinte cria e anexa um gateway NAT com uma sub-rede Azure Firewall usando CLI do Azure.

# Create public IP addresses
az network public-ip create --name public-ip-1 --resource-group nat-rg --sku standard
az network public-ip create --name public-ip-2 --resource-group nat-rg --sku standard
# Create NAT gateway
az network nat gateway create --name firewall-nat --resource-group nat-rg --public-ip-addresses public-ip-1 public-ip-2 --sku standard
# Associate NAT gateway to subnet
az network vnet subnet update --name AzureFirewallSubnet --vnet-name nat-vnet --resource-group nat-rg --nat-gateway firewall-nat

Próximos passos