Skala SNAT-portar med Azure NAT Gateway

Azure Firewall tillhandahåller 2 496 SNAT-portar per offentlig IP-adress som konfigurerats per instans av en virtuell maskinskalningsuppsättning i serverdelen (med minst två instanser), och du kan associera upp till 250 offentliga IP-adresser. Beroende på arkitektur och trafikmönster kan du behöva mer än de 1 248 000 tillgängliga SNAT-portarna med den här konfigurationen. När du till exempel använder den för att skydda stora Azure Virtual Desktop distributioner som integreras med Microsoft 365-applikationer.

En av utmaningarna med att använda ett stort antal offentliga IP-adresser är när det finns krav på nedströms filtrering av IP-adresser. Azure Firewall stöder inte att koppla till ett offentligt IP-prefix själv, men kan använda individuella Standard SKU-offentliga IP-adresser som tillhandahålls från ett publikt IP-prefix. När Azure Firewall är kopplad till flera publika IP-adresser måste nedströmsfiltrering tillåta alla publika IP-adresser som är kopplade till den. Om du provisionerar dessa adresser från publika IP-prefix kan du tillåta motsvarande prefixintervall istället för att lista varje adress individuellt.

Ett bättre alternativ för att skala och dynamiskt allokera utgående SNAT-portar är att använda en Azure NAT Gateway. Den tillhandahåller 64 512 SNAT-portar per offentlig IP-adress och har stöd för upp till 16 offentliga IP-adresser för IPv4. Detta ger i praktiken upp till 1 032 192 utgående SNAT-portar. Azure NAT Gateway allokerar också dynamiskt SNAT-portar på undernätsnivå, så alla SNAT-portar som tillhandahålls av dess associerade IP-adresser är tillgängliga på begäran för att ge utgående anslutning.

När du associerar en NAT-gateway med AzureFirewallSubnet använder utgående internettrafik från brandväggen NAT-gatewayens publika IP-adresser. Du behöver ingen extra användardefinierad rutt (UDR) för att skicka trafiken från brandväggen via NAT-gatewayen. Behåll arbetslastens subnätsvägar som leder trafiken till brandväggens privata IP-adress för inspektion. Responstrafik till ett utgående flöde passerar också genom NAT-gatewayen. Om flera publika IP-adresser är kopplade till NAT-gatewayen väljer den en adress slumpmässigt. Du kan inte ange vilken adress du ska använda.

Det finns ingen dubbel NAT med den här arkitekturen. Azure Firewall instanser skickar trafiken till NAT-gatewayen med deras privata IP-adress, snarare än med deras offentliga Azure Firewall IP-adress.

Välj mellan flera offentliga IP-adresser och NAT Gateway

När brandväggen har ont om SNAT-portar kan du antingen lägga till flera offentliga IP-adresser eller använda en NAT-gateway:

  • Lägg till flera offentliga IP-adresser när du är kostnadskänslig och skalningsbehoven är måttliga. Varje publik IP-adress lägger till 2 496 SNAT-portar per backend-instans, och du kan associera upp till 250 publika IP-adresser. Anvisningar finns i Distribuera en Azure Firewall med flera offentliga IP-adresser.
  • Använd en NAT-gateway när du behöver dynamisk SNAT-portallokering över subnätet. Den tillhandahåller upp till 64 512 SNAT-portar per publik IP-adress.

En fullständig jämförelse av fördelar och nackdelar finns i Metodtips för Azure Firewall prestanda.

För att skapa en StandardV2 NAT-gateway som en del av en Azure Firewall-distribution i portalen, välj Aktivera NAT-gateway på fliken Avancerat. För hela proceduren, se Create Azure Firewall with a StandardV2 NAT gateway. Följande exempel på PowerShell och CLI associerar en Standard NAT-gateway med ett befintligt brandväggssubnät.

Anteckning

Använd en StandardV2 NAT-gateway med en zonredundant brandvägg. En standard NAT-gateway stöder inte zonredundanta distributioner. För steg, se Integrate Azure Firewall with NAT Gateway V2. Mer information om SKU-skillnader finns i NAT Gateway-SKU:er. Azure NAT Gateway stöds inte i en säker virtuell hubb (vWAN). I en vWAN-arkitektur ska du i stället konfigurera NAT Gateway direkt i de virtuella ekernätverken. För steg för att integrera NAT Gateway med en brandvägg i ett virtuellt hubbnätverk, se NAT-gateway och integrationsguiden för Azure Firewall. Mer information om Azure Firewall arkitekturalternativ finns i Vad är de Azure Firewall Manager arkitekturalternativen?

Associera en NAT-gateway med ett Azure Firewall undernät – Azure PowerShell

I följande exempel skapas och kopplas en NAT-gateway med ett Azure Firewall undernät med hjälp av 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

Associera en NAT-gateway med ett Azure Firewall undernät – Azure CLI

I följande exempel skapas och kopplas en NAT-gateway med ett Azure Firewall undernät med hjälp av Azure CLI.

# 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

Nästa steg