Skalowanie portów SNAT przy użyciu Azure NAT Gateway

Azure Firewall zapewnia 2496 portów SNAT na publiczny adres IP skonfigurowany na wystąpienie zestawu skalowania maszyn wirtualnych na zapleczu (co najmniej dwa wystąpienia) i można skojarzyć maksymalnie 250 publicznych adresów IP. W zależności od architektury i wzorców ruchu może być potrzebnych więcej niż 1248 000 dostępnych portów SNAT z tą konfiguracją. Na przykład w przypadku używania go do ochrony dużych wdrożeń Azure Virtual Desktop które integrują się z Aplikacje Microsoft 365.

Jednym z wyzwań związanych z używaniem dużej liczby publicznych adresów IP jest to, że istnieją wymagania dotyczące filtrowania adresów IP podrzędnych. Jeśli Azure Firewall jest skojarzona z wieloma publicznymi adresami IP, należy zastosować wymagania dotyczące filtrowania we wszystkich skojarzonych z nim publicznych adresach IP. Nawet jeśli używasz prefiksów publicznego adresu IP i musisz skojarzyć 250 publicznych adresów IP, aby spełnić wymagania dotyczące portów SNAT dla ruchu wychodzącego, nadal musisz utworzyć i zezwolić na 16 prefiksów publicznych adresów IP.

Lepszą opcją skalowania i dynamicznego przydzielania wychodzących portów SNAT jest użycie Azure NAT Gateway. Zapewnia ona 64 512 portów SNAT na publiczny adres IP i obsługuje maksymalnie 16 publicznych adresów IP IPv4. Zapewnia to maksymalnie 1032 192 wychodzących portów SNAT. Azure NAT Gateway również dynamicznie przydziela porty SNAT na poziomie podsieci, więc wszystkie porty SNAT udostępniane przez skojarzone z nim adresy IP są dostępne na żądanie w celu zapewnienia łączności wychodzącej.

Gdy połączysz bramę NAT z AzureFirewallSubnet, ruch wychodzący z zapory wykorzystuje publiczne adresy IP bramki NAT. Nie potrzebujesz dodatkowej trasy zdefiniowanej przez użytkownika (UDR), aby przesyłać ten ruch z zapory przez bramkę NAT. Zachowaj trasy podsieci obciążeń, które kierują ruch do prywatnego adresu IP zapory w celu przeprowadzenia inspekcji. Ruch zwrotny związany z ruchem wychodzącym również przechodzi przez bramę NAT. Jeśli z bramą NAT powiązanych jest wiele publicznych adresów IP, wybiera ona adres losowo. Nie możesz określić, którego adresu użyć.

Nie ma podwójnego NAT w tej architekturze. Azure Firewall wysyła ruch do NAT gateway za pomocą prywatnego adresu IP zamiast publicznego adresu IP Azure Firewall.

Wybierz spośród wielu publicznych adresów IP a bramy NAT

Gdy w zaporze zaczyna brakować portów SNAT, możesz dodać wiele publicznych adresów IP lub użyć bramy NAT:

  • Dodaj wiele publicznych adresów IP, gdy koszty mają znaczenie, a potrzeby dotyczące skalowania są umiarkowane. Każdy publiczny adres IP dodaje 2 496 portów SNAT na instancję backend, a do tego można przypisać do 250 publicznych adresów IP. Aby uzyskać instrukcje, zobacz Wdrażanie Azure Firewall z wieloma publicznymi adresami IP.
  • Używaj bramy NAT , gdy potrzebujesz dynamicznej alokacji portów SNAT w podsieci. Zapewnia do 64 512 portów SNAT na publiczny adres IP.

Aby uzyskać pełne porównanie zalet i wad, zobacz Najlepsze rozwiązania dotyczące wydajności Azure Firewall.

Aby utworzyć bramę NAT StandardV2 jako część wdrożenia Azure Firewall w portalu, wybierz Włącz bramę NAT na zakładce Zaawansowane. Aby uzyskać pełną procedurę, zobacz Utworzenie Azure Firewall z bramą NAT StandardV2. Poniższe przykłady PowerShell i CLI łączą standardową bramę NAT z istniejącą podsiecią zapory.

Uwaga

Użyj bramki NAT StandardV2 z zaporą strefowo-redundantną. Standardowa brama NAT nie obsługuje wdrożeń redundantnych w strefach. Szczegóły można znaleźć w artykule Integruj Azure Firewall z NAT Gateway V2. Aby uzyskać więcej informacji o różnicach między SKU, zobacz SKU dla bramy NAT. Azure NAT Gateway nie jest obsługiwany w zabezpieczonym wirtualnym hubie (vWAN). W architekturze vWAN zamiast tego skonfiguruj usługę NAT Gateway bezpośrednio w wirtualnych sieciach typu spoke. Aby poznać kroki integracji NAT Gateway z zaporą sieciową w wirtualnej sieci hub, zobacz samouczek dotyczący integracji NAT Gateway i Azure Firewall. Aby uzyskać więcej informacji na temat opcji architektury Azure Firewall, zobacz Jak są opcje architektury Azure Firewall Manager?

Asocjowanie bramy NAT z podsiecią Azure Firewall — Azure PowerShell

Poniższy przykład tworzy bramę NAT i dołącza ją do podsieci Azure Firewall przy użyciu 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

Skonfiguruj bramę NAT z podsiecią Azure Firewall — Azure CLI

Poniższy przykład tworzy i przypisuje bramę NAT z podsiecią Azure Firewall przy użyciu 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

Następne kroki