Inkommande och utgående IP-adresser i Azure App Service

Azure App Service är en tjänst för flera innehavare, förutom App Service-miljöer. Appar som inte finns i en App Service miljö (inte på den isolerade nivån) delar nätverksinfrastruktur med andra appar. Därför kan inkommande och utgående IP-adresser för en app vara olika och kan till och med ändras i vissa situationer.

App Service Miljöer använder dedikerade nätverksinfrastrukturer, så appar som körs i en App Service miljö får statiska, dedikerade IP-adresser både för inkommande och utgående anslutningar.

Så här fungerar IP-adresser i App Service

En App Service app körs i en App Service plan och App Service planer distribueras till en av distributionsenheterna i Azure-infrastrukturen (kallas internt för en webbrymd). Varje distributionsenhet tilldelas en uppsättning virtuella IP-adresser, som innehåller en offentlig inkommande IP-adress och en uppsättning utgående IP-adresser. Alla App Service planer i samma distributionsenhet och appinstanser som körs i dem delar samma uppsättning virtuella IP-adresser. För en App Service-miljön (en App Service plan på isolerad nivå) är App Service-planen själva distributionsenheten, så de virtuella IP-adresserna är dedikerade till den som ett resultat.

Eftersom du inte får flytta en App Service plan mellan distributionsenheter förblir de virtuella IP-adresserna som tilldelats din app vanligtvis desamma, men det finns undantag.

När inkommande IP-adresser ändras

Oavsett antalet utskalade instanser har varje app en enda inkommande IP-adress. Den inkommande IP-adressen kan ändras när du utför någon av följande åtgärder:

  • En app tas bort och återskapas i en annan resursgrupp (distributionsenheten kan ändras).
  • Ta bort den sista appen i en kombination av resursgrupper och regioner och återskapa den (distributionsenheten kan ändras).
  • Ta bort en befintlig IP-baserad TLS/SSL-bindning, till exempel under certifikatförnyelse (se Förnya certifikat).

Hitta den inkommande IP-adressen

Kör bara följande kommando i en lokal terminal:

nslookup <app-name>.azurewebsites.net

Hämta en statisk inkommande IP-adress

Ibland kanske du vill ha en dedikerad, statisk IP-adress för din app. För att få en statisk inkommande IP-adress måste du skydda ett anpassat DNS-namn med en IP-baserad certifikatbindning. Om du inte behöver TLS-funktioner för att skydda din app kan du till och med ladda upp ett självsignerat certifikat för den här bindningen. I en IP-baserad TLS-bindning är certifikatet bundet till själva IP-adressen, så App Service etablerar en statisk IP-adress för att få det att hända.

När utgående IP-adresser ändras

Oberoende av antalet utskalade instanser har varje app ett bestämt antal utgående IP-adresser vid en viss given tidpunkt. Alla utgående anslutningar från App Service app, till exempel till en serverdelsdatabas, använder en av de utgående IP-adresserna som ursprungs-IP-adress. Den IP-adress som ska användas väljs slumpmässigt vid körning, så serverdelstjänsten måste öppna brandväggen för alla utgående IP-adresser för din app.

Uppsättningen med utgående IP-adresser för din app ändras när du utför någon av följande åtgärder:

  • En app tas bort och återskapas i en annan resursgrupp (distributionsenheten kan ändras).
  • Ta bort den sista appen i en kombination av resursgrupper och regioner och återskapa den (distributionsenheten kan ändras).
  • Skala din app mellan de lägre nivåerna (Basic, Standard och Premium), PremiumV2-nivån , PremiumV3-nivån och Pmv3-alternativenPremiumV3-nivån (IP-adresser kan läggas till eller subtraheras från uppsättningen).

Du hittar uppsättningen med alla möjliga utgående IP-adresser som appen kan använda, oavsett prisnivåer, genom att leta possibleOutboundIpAddresses efter egenskapen eller i fältet Ytterligare utgående IP-adresser på bladet Egenskaper i Azure Portal. Se Hitta utgående IP-adresser.

Observera att uppsättningen med alla möjliga utgående IP-adresser kan öka med tiden om App Service lägger till nya prisnivåer eller alternativ för befintliga App Service distributioner. Om App Service till exempel lägger till PremiumV3-nivån till en befintlig App Service distribution ökar uppsättningen med alla möjliga utgående IP-adresser. Om App Service lägger till nya Pmv3-alternativ till en distribution som redan stöder PremiumV3-nivån ökar också uppsättningen med alla möjliga utgående IP-adresser. Detta har ingen omedelbar effekt eftersom de utgående IP-adresserna för program som körs inte ändras när en ny prisnivå eller ett nytt alternativ läggs till i en App Service distribution. Men om program växlar till en ny prisnivå eller ett nytt alternativ som inte tidigare var tillgängligt, kommer nya utgående adresser att användas och kunderna måste uppdatera underordnad brandväggsregler och IP-adressbegränsningar.

Hitta utgående IP-adresser

Om du vill hitta de utgående IP-adresser som för närvarande används av din app i Azure Portal klickar du på Egenskaper i appens vänstra navigering. De visas i fältet Utgående IP-adresser .

Du hittar samma information genom att köra följande kommando i Cloud Shell.

az webapp show --resource-group <group_name> --name <app_name> --query outboundIpAddresses --output tsv
(Get-AzWebApp -ResourceGroup <group_name> -name <app_name>).OutboundIpAddresses

Om du vill hitta alla möjliga utgående IP-adresser för din app, oavsett prisnivåer, klickar du på Egenskaper i appens vänstra navigering. De visas i fältet Ytterligare utgående IP-adresser.

Du hittar samma information genom att köra följande kommando i Cloud Shell.

az webapp show --resource-group <group_name> --name <app_name> --query possibleOutboundIpAddresses --output tsv
(Get-AzWebApp -ResourceGroup <group_name> -name <app_name>).PossibleOutboundIpAddresses

Hämta en statisk utgående IP-adress

Du kan styra IP-adressen för utgående trafik från din app genom att använda regional VNet-integrering tillsammans med en NAT-gateway för virtuellt nätverk för att dirigera trafik via en statisk offentlig IP-adress. Regional VNet-integrering är tillgänglig i abonnemangen Basic, Standard, Premium, PremiumV2 och PremiumV3 App Service. Mer information om den här konfigurationen finns i NAT-gatewayintegrering.

Nästa steg

Lär dig hur du begränsar inkommande trafik med käll-IP-adresser.