Integrera en app med ett virtuellt Azure-nätverk

Den här artikeln beskriver Azure App Service VNet-integrering och hur du ställer in den med appar i App Service. Med virtuella Azure-nätverk (VNet) kan du placera många av dina Azure-resurser i ett icke-Internet-dirigerbart nätverk. Funktionen App Service VNet-integrering gör att dina appar kan komma åt resurser i eller via ett virtuellt nätverk. Integrering av virtuella nätverk gör inte att dina appar kan nås privat.

App Service har två varianter:

  • De dedikerade beräkningsprisnivåer som omfattar Basic, Standard, Premium, Premium v2 och Premium v3.
  • Den App Service-miljön, som distribueras direkt till ditt virtuella nätverk med dedikerad stödinfrastruktur och använder prisnivåerna Isolerad och Isolerad v2.

VNet-integreringsfunktionen används i Azure App Service dedikerade beräkningsprisnivåer. Om appen finns i en App Service-miljönfinns den redan i ett virtuellt nätverk och behöver inte använda VNet-integreringsfunktionen för att nå resurser i samma virtuella nätverk. Mer information om alla nätverksfunktioner finns i App Service nätverksfunktioner.

Integrering av virtuella nätverk ger din app åtkomst till resurser i ditt virtuella nätverk, men ger inte inkommande privat åtkomst till din app från det virtuella nätverket. Åtkomst till privat webbplats syftar på att göra en app tillgänglig endast från ett privat nätverk, till exempel från ett virtuellt Azure-nätverk. Integrering av virtuella nätverk används endast för att göra utgående anrop från din app till ditt virtuella nätverk. VNet-integrationsfunktionen fungerar annorlunda när den används med virtuella nätverk i samma region och med virtuella nätverk i andra regioner. VNet-integreringsfunktionen har två varianter:

  • Regional integrering av virtuella nätverk: När du ansluter till virtuella nätverk i samma region måste du ha ett dedikerat undernät i det virtuella nätverk som du integrerar med.
  • Integrering av virtuella nätverk som krävs av gateway: När du ansluter direkt till virtuella nätverk i andra regioner eller till ett klassiskt virtuellt nätverk i samma region behöver du en Azure Virtual Network-gateway som skapats i det virtuella målnätverket.

VNet-integrationsfunktionen:

  • Kräver prisnivån Standard, Premium, Premium v2, Premium v3 eller Elastic Premium App Service.
  • Stöder TCP och UDP.
  • Fungerar med App Service-appar och funktionsappar.

Det finns några saker som integrering av virtuella nätverk inte stöder, till exempel:

  • Montera en enhet.
  • Windows Server Active Directory integrering.
  • Netbios.

Gateway-nödvändig integrering av virtuella nätverk ger endast åtkomst till resurser i det virtuella målnätverket eller i nätverk som är anslutna till det virtuella målnätverket med peering eller VPN. Gateway-nödvändig integrering av virtuella nätverk ger inte åtkomst till resurser som är tillgängliga Azure ExpressRoute anslutningar eller fungerar med tjänstslutpunkter.

Oavsett vilken version som används ger integrering av virtuella nätverk din app åtkomst till resurser i ditt virtuella nätverk, men den beviljar inte inkommande privat åtkomst till din app från det virtuella nätverket. Åtkomst till privat webbplats syftar på att göra din app tillgänglig endast från ett privat nätverk, till exempel från ett virtuellt Azure-nätverk. Integrering av virtuella nätverk är endast till för att göra utgående anrop från din app till ditt virtuella nätverk.

Lär dig hur du aktiverar integrering av virtuella nätverk.

Regional integrering av virtuella nätverk

Regional integrering av virtuella nätverk stöder anslutning till ett virtuellt nätverk i samma region och kräver inte en gateway. Med regional integrering av virtuella nätverk kan din app komma åt:

  • Resurser i det virtuella nätverk som du är integrerad med.
  • Resurser i virtuella nätverk som är peer-ade till det virtuella nätverket som din app är integrerad med global peering anslutningar.
  • Resurser över Azure ExpressRoute anslutningar.
  • Tjänstslutpunktssäkra tjänster.
  • Privata slutpunktsaktiverade tjänster.

När du använder regional integrering av virtuella nätverk kan du använda följande Azure-nätverksfunktioner:

  • Nätverkssäkerhetsgrupper (NSG:er): Du kan blockera utgående trafik med en NSG som placeras i ditt integreringsundernät. Reglerna för inkommande trafik gäller inte eftersom du inte kan använda integrering av virtuella nätverk för att ge inkommande åtkomst till din app.
  • Vägtabeller (UDR: Du kan placera en vägtabell i integreringsundernätet för att skicka utgående trafik där du vill.

Så här fungerar regional integrering av virtuella nätverk

Appar i App Service finns på arbetsroller. Regional integrering av virtuella nätverk fungerar genom att montera virtuella gränssnitt till arbetsrollerna med adresser i det delegerade undernätet. Eftersom from-adressen finns i ditt virtuella nätverk kan den komma åt det mesta i eller via ditt virtuella nätverk, som en virtuell dator i ditt virtuella nätverk. Nätverksimplementering skiljer sig från att köra en virtuell dator i ditt virtuella nätverk. Det är därför vissa nätverksfunktioner ännu inte är tillgängliga för den här funktionen.

Diagram som visar hur regional integrering av virtuella nätverk fungerar.

När regional integrering av virtuella nätverk är aktiverat gör din app utgående anrop via det virtuella nätverket. De utgående adresser som visas i appegenskaperna är de adresser som fortfarande används av din app. Men om ditt utgående anrop är till en virtuell dator eller privat slutpunkt i det virtuella integrationsnätverket eller det peer-erade virtuella nätverket, blir den utgående adressen en adress från integreringsundernätet. Den privata IP-adressen som tilldelats en instans exponeras via miljövariabeln , WEBSITE_PRIVATE_IP.

När all trafikroutning är aktiverad skickas all utgående trafik till ditt virtuella nätverk. Om all trafikroutning inte är aktiverad skickas endast privat trafik (RFC1918) och tjänstslutpunkter som konfigurerats i integreringsundernätet till det virtuella nätverket och utgående trafik till Internet går via samma kanaler som vanligt.

Funktionen stöder bara ett virtuellt gränssnitt per arbetsroll. Ett virtuellt gränssnitt per arbetare innebär en regional integrering av virtuella nätverk per App Service plan. Alla appar i samma App Service plan kan använda samma integrering av virtuella nätverk. Om du behöver en app för att ansluta till ett annat virtuellt nätverk måste du skapa en annan App Service plan. Det virtuella gränssnittet som används är inte en resurs som kunderna har direkt åtkomst till.

På grund av den här teknikens natur visas inte den trafik som används med integrering av virtuella nätverk i Azure Network Watcher- eller NSG-flödesloggar.

Krav för undernät

Integreringen av virtuella nätverk är beroende av ett dedikerat undernät. När du skapar ett undernät förlorar Azure-undernätet fem IP-adresser från början. En adress används från integreringsundernätet för varje planinstans. Om du skalar appen till fyra instanser används fyra adresser.

När du skalar upp eller ned i storlek dubbleras det adressutrymme som krävs under en kort tidsperiod. Den här ändringen påverkar de verkliga, tillgängliga instanser som stöds för en viss undernätsstorlek. I följande tabell visas både det maximala antalet tillgängliga adresser per CIDR-block och hur detta påverkar horisontell skala.

CIDR-blockstorlek Maximalt antal tillgängliga adresser Maximal horisontell skalning (instanser)*
/28 11 5
/27 27 13
/26 59 29

*Förutsätter att du någon gång måste skala upp eller ned i antingen storlek eller SKU.

Eftersom undernätsstorleken inte kan ändras efter tilldelningen kan du använda ett undernät som är tillräckligt stort för att hantera den skala som din app kan nå. Använd en med 64 adresser för att undvika problem /26 med undernätskapacitet.

När du vill att dina appar i din plan ska nå ett virtuellt nätverk som redan är anslutet till av appar i en annan plan väljer du ett annat undernät än det som används av den redan existerande integreringen av virtuella nätverk.

Vägar

Det finns två typer av routning att tänka på när du konfigurerar regional integrering av virtuella nätverk. Programroutning definierar vilken trafik som dirigeras från ditt program och till det virtuella nätverket. Nätverksroutning är möjligheten att styra hur trafiken dirigeras från ditt virtuella nätverk och ut.

Programroutning

När du konfigurerar programroutning kan du antingen dirigera all trafik eller bara privat trafik (även kallat RFC1918-trafik) till ditt virtuella nätverk. Du konfigurerar det här beteendet via inställningen Dirigera alla. Om Route All är inaktiverat dirigerar appen endast privat trafik till ditt virtuella nätverk. Om du vill dirigera all utgående trafik till ditt virtuella nätverk kontrollerar du att Route All (Dirigera alla) är aktiverat.

Anteckning

  • När Route All är aktiverat omfattas all trafik av de NSG:er och UDR:er som tillämpas på ditt integreringsundernät. När all trafikroutning är aktiverad skickas utgående trafik fortfarande från de adresser som anges i appegenskaperna, såvida du inte anger vägar som dirigerar trafiken någon annanstans.
  • Windows-containrar stöder inte routning App Service Key Vault referenser eller hämta anpassade containeravbildningar via integrering av virtuella nätverk.
  • Regional integrering av virtuella nätverk kan inte använda port 25.

Lär dig hur du konfigurerar programroutning.

Vi rekommenderar att du använder konfigurationsinställningen Dirigera alla för att aktivera routning av all trafik. Med konfigurationsinställningen kan du granska beteendet med en inbyggd princip. Den befintliga WEBSITE_VNET_ROUTE_ALL appinställningen kan fortfarande användas och du kan aktivera all trafikroutning med båda inställningarna.

Nätverksroutning

Du kan använda vägtabeller för att dirigera utgående trafik från din app till var du vill. Vägtabeller påverkar måltrafiken. När Route All är inaktiverat i programroutningpåverkas endast privat trafik (RFC1918) av dina routningstabeller. Vanliga mål kan vara brandväggsenheter eller gatewayer. Vägar som anges i ditt integreringsundernät påverkar inte svar på inkommande appbegäranden.

När du vill dirigera all utgående trafik lokalt kan du använda en vägtabell för att skicka all utgående trafik till din Azure ExpressRoute gateway. Om du dirigerar trafik till en gateway anger du vägar i det externa nätverket för att skicka svar tillbaka.

Border Gateway Protocol (BGP) påverkar även din apptrafik. Om du har BGP-vägar från något som liknar en ExpressRoute-gateway påverkas din utgående apptrafik. På samma sätt som användardefinierade vägar påverkar BGP-vägar trafiken enligt din inställning för routningsomfång.

Nätverkssäkerhetsgrupper

En app som använder regional integrering av virtuella nätverk kan använda en nätverkssäkerhetsgrupp för att blockera utgående trafik till resurser i ditt virtuella nätverk eller Internet. Om du vill blockera trafik till offentliga adresser aktiverar du Dirigera alla till det virtuella nätverket. När Route All inte är aktiverat tillämpas NSG:er endast på RFC1918-trafik.

En NSG som tillämpas på ditt integreringsundernät gäller oavsett eventuella vägtabeller som tillämpas på ditt integreringsundernät.

Reglerna för inkommande trafik i en NSG gäller inte för din app eftersom integreringen av virtuella nätverk endast påverkar utgående trafik från din app. Om du vill styra inkommande trafik till din app använder du funktionen Åtkomstbegränsningar.

Tjänstslutpunkter

Med regional integrering av virtuella nätverk kan du nå Azure-tjänster som skyddas med tjänstslutpunkter. Följ dessa steg för att få åtkomst till en tjänst med slutpunktssäkra tjänster:

  1. Konfigurera regional integrering av virtuella nätverk med din webbapp för att ansluta till ett specifikt undernät för integrering.
  2. Gå till måltjänsten och konfigurera tjänstslutpunkter mot integreringsundernätet.

Privata slutpunkter

Om du vill göra anrop till privata slutpunkterkontrollerar du att DNS-sökningarna matchar den privata slutpunkten. Du kan tillämpa det här beteendet på något av följande sätt:

  • Integrera med Azure DNS zoner. När ditt virtuella nätverk inte har en anpassad DNS-server görs integreringen automatiskt när zonerna länkas till det virtuella nätverket.
  • Hantera den privata slutpunkten i DNS-servern som används av din app. Om du vill hantera konfigurationen måste du känna till IP-adressen för den privata slutpunkten. Peka sedan den slutpunkt som du försöker nå till den adressen med hjälp av en A-post.
  • Konfigurera din egen DNS-server att vidarebefordra till Azure DNS privata zoner.

Azure DNS privata zoner

När din app har integrerats med ditt virtuella nätverk använder den samma DNS-server som det virtuella nätverket har konfigurerats med. Om ingen anpassad DNS har angetts används Azures standard-DNS och alla privata zoner som är länkade till det virtuella nätverket.

Begränsningar

Det finns vissa begränsningar med att använda regional integrering av virtuella nätverk:

  • Funktionen är tillgänglig från alla App Service i Premium v2 och Premium v3. Den är också tillgänglig i Standard, men endast från nyare App Service skalningsenheter. Om du använder en äldre skalningsenhet kan du bara använda funktionen från en Premium v2-App Service plan. Om du vill se till att du kan använda funktionen i en Standard App Service plan skapar du din app i en Premium v3-App Service plan. Dessa planer stöds endast på våra senaste skalningsenheter. Du kan skala ned om du vill när planen har skapats.
  • Funktionen kan inte användas av isolerade planappar som finns i en App Service-miljön.
  • Du kan inte nå resurser mellan peering-anslutningar med klassiska virtuella nätverk.
  • Funktionen kräver ett oanvänt undernät som är ett IPv4-block /28 eller större i ett Azure Resource Manager virtuellt nätverk.
  • Appen och det virtuella nätverket måste finnas i samma region.
  • Det virtuella integrationsnätverket kan inte ha IPv6-adressutrymmen definierade.
  • Integreringsundernätet kan inte ha tjänstslutpunktsprinciper aktiverade.
  • Integrationsundernätet kan bara användas av en App Service plan.
  • Du kan inte ta bort ett virtuellt nätverk med en integrerad app. Ta bort integreringen innan du tar bort det virtuella nätverket.
  • Du kan bara ha en regional integrering av virtuella nätverk per App Service plan. Flera appar i samma App Service plan kan använda samma virtuella nätverk.
  • Du kan inte ändra prenumerationen på en app eller en plan när det finns en app som använder regional integrering av virtuella nätverk.

Gateway-nödvändig integrering av virtuella nätverk

Gateway-nödvändig integrering av virtuella nätverk stöder anslutning till ett virtuellt nätverk i en annan region eller till ett klassiskt virtuellt nätverk. Gateway-nödvändig integrering av virtuella nätverk:

  • Gör att en app endast kan ansluta till ett virtuellt nätverk i taget.
  • Gör att upp till fem virtuella nätverk kan integreras i en App Service plan.
  • Tillåter att samma virtuella nätverk används av flera appar i en App Service plan utan att det totala antalet som kan användas av en App Service plan. Om du har sex appar som använder samma virtuella nätverk i App Service plan, räknas det som ett virtuellt nätverk som används.
  • SLA på gatewayen kan påverka det övergripande serviceavtalet.
  • Gör att dina appar kan använda den DNS som det virtuella nätverket är konfigurerat med.
  • Kräver en virtuell nätverksvägsbaserad gateway som konfigurerats med ett punkt-till-plats-VPN för SSTP innan den kan anslutas till en app.

Du kan inte använda gateway-integrering av virtuella nätverk som krävs:

  • Med ett virtuellt nätverk anslutet med ExpressRoute.
  • Från en Linux-app.
  • Från en Windows container.
  • För att få åtkomst till tjänstens slutpunktssäkra resurser.
  • Med en gateway för samexistens som stöder både ExpressRoute och punkt-till-plats- eller plats-till-plats-VPN: er.

Konfigurera en gateway i ditt virtuella Azure-nätverk

Så här skapar du en gateway:

  1. Skapa VPN-gatewayen och undernätet. Välj en ruttbaserad VPN-typ.

  2. Ange punkt-till-plats-adresserna. Om gatewayen inte finns i den grundläggande SKU:n måste IKEV2 inaktiveras i punkt-till-plats-konfigurationen och SSTP måste väljas. Punkt-till-plats-adressutrymmet måste finnas i RFC 1918-adressblocken 10.0.0.0/8, 172.16.0.0/12 och 192.168.0.0/16.

Om du skapar gatewayen för användning med gateway-integrering av virtuella nätverk som krävs behöver du inte ladda upp ett certifikat. Det kan ta 30 minuter att skapa gatewayen. Du kommer inte att kunna integrera din app med ditt virtuella nätverk förrän gatewayen har skapats.

Så här fungerar integrering av virtuella nätverk som krävs av gateway

Gateway-nödvändig integrering av virtuella nätverk bygger på punkt-till-plats-VPN-teknik. Punkt-till-plats-VPN:er begränsar nätverksåtkomsten till den virtuella dator som är värd för appen. Appar är begränsade till att skicka trafik till Internet endast via hybridanslutningar eller via integrering av virtuella nätverk. När din app är konfigurerad med portalen för att använda gateway-nödvändig integrering av virtuella nätverk, hanteras en komplex förhandling för din räkning för att skapa och tilldela certifikat på gatewayen och programsidan. Resultatet är att de arbetare som används som värd för dina appar kan ansluta direkt till den virtuella nätverksgatewayen i det valda virtuella nätverket.

Diagram som visar hur integrering av virtuella nätverk som krävs av gateway fungerar.

Få åtkomst till lokala resurser

Appar kan komma åt lokala resurser genom att integrera med virtuella nätverk som har plats-till-plats-anslutningar. Om du använder gateway-integrering av virtuella nätverk uppdaterar du dina lokala VPN-gatewayvägar med dina punkt-till-plats-adressblock. När plats-till-plats-VPN först konfigureras bör skripten som används för att konfigurera det konfigurera vägarna korrekt. Om du lägger till punkt-till-plats-adresserna när du har skapat ditt plats-till-plats-VPN måste du uppdatera vägarna manuellt. Information om hur du gör detta varierar beroende på gateway och beskrivs inte här. Du kan inte ha konfigurerat BGP med en PLATS-till-plats-VPN-anslutning.

Ingen extra konfiguration krävs för att integreringsfunktionen för regionala virtuella nätverk ska kunna nå genom ditt virtuella nätverk till lokala resurser. Du behöver bara ansluta ditt virtuella nätverk till lokala resurser med hjälp av ExpressRoute eller ett plats-till-plats-VPN.

Anteckning

Integreringsfunktionen för virtuella nätverk som krävs av gatewayen integrerar inte en app med ett virtuellt nätverk som har en ExpressRoute-gateway. Även om ExpressRoute-gatewayen är konfigurerad i samexistenslägefungerar inte integreringen av virtuella nätverk. Om du behöver komma åt resurser via en ExpressRoute-anslutning använder du integrationsfunktionen för regionala virtuella nätverk eller en App Service-miljön, som körs i ditt virtuella nätverk.

Peering

Om du använder peering med regional integrering av virtuella nätverk behöver du inte göra någon mer konfiguration.

Om du använder gateway-integrering av virtuella nätverk som krävs med peering måste du konfigurera några fler objekt. Så här konfigurerar du peering så att det fungerar med din app:

  1. Lägg till en peering-anslutning i det virtuella nätverk som din app ansluter till. När du lägger till peering-anslutningen aktiverar du Tillåt åtkomst till virtuellt nätverk och väljer Tillåt vidarebefordrad trafik och Tillåt gateway-överföring.
  2. Lägg till en peering-anslutning i det virtuella nätverket som peer-kopplas till det virtuella nätverket som du är ansluten till. När du lägger till peering-anslutningen i det virtuella målnätverket aktiverar du Tillåt åtkomst till virtuellt nätverk och väljer Tillåt vidarebefordrad trafik och Tillåt fjärrgatewayer.
  3. Gå till App Service plan > > VNet-nätverksintegrering i portalen. Välj det virtuella nätverk som din app ansluter till. Under avsnittet routning lägger du till adressintervallet för det virtuella nätverk som är peerkopplat med det virtuella nätverk som appen är ansluten till.

Hantera integrering av virtuella nätverk

Du ansluter och kopplar från med ett virtuellt nätverk på appnivå. Åtgärder som kan påverka integreringen av virtuella nätverk mellan flera appar App Service plan nivå. Från appen > > VNet-integreringsportalen för nätverk kan du få information om ditt virtuella nätverk. Du kan se liknande information på App Service plan på App Service plan > > VNet-integreringsportalen för nätverk.

Den enda åtgärden du kan vidta i appvyn för din instans för integrering av virtuella nätverk är att koppla bort appen från det virtuella nätverk som den för närvarande är ansluten till. Om du vill koppla bort appen från ett virtuellt nätverk väljer du Koppla från. Appen startas om när du kopplar från ett virtuellt nätverk. Frånkopplingen ändrar inte det virtuella nätverket. Undernätet eller gatewayen tas inte bort. Om du sedan vill ta bort det virtuella nätverket kopplar du först bort appen från det virtuella nätverket och tar bort resurserna i den, till exempel gatewayer.

Användargränssnittet App Service plan virtuell nätverksintegrering visar alla integreringar av virtuella nätverk som används av apparna i din App Service plan. Om du vill se information om varje virtuellt nätverk väljer du det virtuella nätverk som du är intresserad av. Det finns två åtgärder som du kan utföra här för integrering av virtuella nätverk som krävs av gateway:

  • Synkroniseringsnätverk: Synkroniseringsnätverksåtgärden används endast för integreringsfunktionen för virtuella nätverk som krävs av gatewayen. När du utför en synkroniseringsnätverksåtgärd ser du till att certifikaten och nätverksinformationen är synkroniserade. Om du lägger till eller ändrar DNS för det virtuella nätverket utför du en synkroniseringsnätverksåtgärd. Den här åtgärden startar om alla appar som använder det här virtuella nätverket. Den här åtgärden fungerar inte om du använder en app och ett virtuellt nätverk som hör till olika prenumerationer.
  • Lägg till vägar: Genom att lägga till vägar får du utgående trafik till ditt virtuella nätverk.

Den privata IP-adressen som tilldelats instansen exponeras via miljövariabeln WEBSITE_PRIVATE_IP. Kudu-konsolens användargränssnitt visar också listan över miljövariabler som är tillgängliga för webbappen. Den här IP-adressen tilldelas från adressintervallet för det integrerade undernätet. För regional integrering av virtuella nätverk är värdet för WEBSITE_PRIVATE_IP en IP-adress från adressintervallet för det delegerade undernätet. För gateway-nödvändig integrering av virtuella nätverk är värdet en IP-adress från adressintervallet för den punkt-till-plats-adresspool som konfigurerats på den virtuella nätverksgatewayen. Den här IP-adressen används av webbappen för att ansluta till resurserna via det virtuella Azure-nätverket.

Anteckning

Värdet för WEBSITE_PRIVATE_IP måste ändras. Det är dock en IP-adress inom adressintervallet för integreringsundernätet eller punkt-till-plats-adressintervallet, så du måste tillåta åtkomst från hela adressintervallet.

Gateway-nödvändig routning för integrering av virtuella nätverk

Vägarna som definieras i ditt virtuella nätverk används för att dirigera trafik till ditt virtuella nätverk från din app. Om du vill skicka mer utgående trafik till det virtuella nätverket lägger du till dessa adressblock här. Den här funktionen fungerar bara med integrering av virtuella nätverk som krävs av en gateway. Vägtabeller påverkar inte din apptrafik när du använder gateway-nödvändig integrering av virtuella nätverk på det sätt som de gör med regional integrering av virtuella nätverk.

Gateway-nödvändiga certifikat för integrering av virtuella nätverk

När gateway-nödvändig integrering av virtuella nätverk är aktiverat, finns det ett nödvändigt utbyte av certifikat för att säkerställa anslutningens säkerhet. Tillsammans med certifikaten finns DNS-konfiguration, vägar och andra liknande saker som beskriver nätverket.

Om certifikat eller nätverksinformation ändras väljer du Synkronisera nätverk. När du väljer Synkronisera nätverk orsakar du ett kort avbrott i anslutningen mellan din app och ditt virtuella nätverk. Appen startas inte om, men förlust av anslutning kan göra att webbplatsen inte fungerar korrekt.

Prisinformation

Integreringsfunktionen för regionala virtuella nätverk har inga extra avgifter för användning utöver App Service plan på prisnivån.

Tre avgifter är relaterade till användningen av den gatewaybaserade integreringsfunktionen för virtuella nätverk:

  • App Service plan prisnivåavgifter: Dina appar måste finnas i en Standard-, Premium-, Premium v2- eller Premium v3-App Service plan. Mer information om dessa kostnader finns i App Service priser.
  • Kostnader för dataöverföring: Det finns en avgift för utgående data, även om det virtuella nätverket finns i samma datacenter. Dessa avgifter beskrivs i Prisinformation för dataöverföring.
  • VPN-gatewaykostnader: Det finns en kostnad för den virtuella nätverksgateway som krävs för punkt-till-plats-VPN. Mer information finns i Prissättning för VPN-gateway.

Felsökning

Anteckning

Integrering av virtuella nätverk stöds inte för Docker Compose-scenarier i App Service. Åtkomstbegränsningar ignoreras om det finns en privat slutpunkt.

Funktionen är enkel att konfigurera, men det innebär inte att din upplevelse blir problemfri. Om du får problem med att komma åt önskad slutpunkt finns det några verktyg som du kan använda för att testa anslutningen från appkonsolen. Det finns två konsoler som du kan använda. Den ena är Kudu-konsolen och den andra är konsolen i Azure Portal. Du kommer åt Kudu-konsolen från din app genom att gå till Verktyg > Kudu. Du kan också nå Kudo-konsolen på [sitename].scm.azurewebsites.net. När webbplatsen har laddats går du till fliken Felsökningskonsol. För att komma Azure Portal värdbaserade konsolen från din app går du till Verktygskonsol. >

Verktyg

I inbyggda Windows-appar fungerar inte verktygen pinga, nslookup och tracert via -konsolen på grund av säkerhetsbegränsningar (de fungerar i anpassade Windows containrar). Två separata verktyg läggs till för att fylla i void. Vi har lagt till ett verktyg med namnetnameresolver.exeför att testa DNS-funktioner. Syntax:

nameresolver.exe hostname [optional: DNS Server]

Du kan använda nameresolver för att kontrollera de värdnamn som din app är beroende av. På så sätt kan du testa om du har något felkonfigurerat med dns eller kanske inte har åtkomst till DIN DNS-server. Du kan se DNS-servern som din app använder i -konsolen genom att titta på miljövariablerna WEBSITE_DNS_SERVER och WEBSITE_DNS_ALT_SERVER.

Anteckning

Verktyget nameresolver.exe fungerar för närvarande inte i anpassade Windows containrar.

Du kan använda nästa verktyg för att testa TCP-anslutningen till en kombination av värd och port. Det här verktyget kallas tcpping och syntaxen är:

tcpping.exe hostname [optional: port]

Tcpping-verktyget anger om du kan nå en specifik värd och port. Den kan bara visa framgång om det finns ett program som lyssnar på kombinationen av värd och port, och det finns nätverksåtkomst från din app till den angivna värden och porten.

Felsöka åtkomst till resurser i virtuella nätverk

Ett antal saker kan förhindra att appen når en specifik värd och port. I de flesta fall är det en av följande saker:

  • En brandvägg är i vägen. Om du har en brandvägg på vägen kommer du till TCP-tidsgränsen. TCP-timeouten är i det här fallet 21 sekunder. Använd tcpping-verktyget för att testa anslutningen. TCP-timeouter kan orsakas av många saker utöver brandväggar, men börja där.
  • DNS är inte tillgängligt. DNS-timeouten är 3 sekunder per DNS-server. Om du har två DNS-servrar är tidsgränsen 6 sekunder. Använd nameresolver för att se om DNS fungerar. Du kan inte använda nslookup eftersom det inte använder den DNS som ditt virtuella nätverk är konfigurerat med. Om det inte går att nå kan du ha en brandvägg eller NSG som blockerar åtkomsten till DNS eller så kan den vara ur drift.

Om de objekten inte besvarar dina problem kan du leta efter saker som:

Regional integrering av virtuella nätverk

  • Är målet en icke-RFC1918-adress och du har inte Route All aktiverat?
  • Finns det en NSG som blockerar utgående från ditt integreringsundernät?
  • Är din lokala gateway konfigurerad för att dirigera trafik tillbaka till Azure om du använder en lokal Azure ExpressRoute eller ett VPN? Om du kan nå slutpunkter i ditt virtuella nätverk men inte lokalt kontrollerar du vägarna.
  • Har du tillräcklig behörighet för att ange delegering i integreringsundernätet? Under den regionala integreringen av virtuella nätverk delegeras ditt integreringsundernät till Microsoft.Web/serverFarms. Användargränssnittet för VNet-integrering delegerar undernätet till Microsoft.Web/serverFarms automatiskt. Om ditt konto inte har tillräcklig nätverksbehörighet för att ange delegering behöver du någon som kan ange attribut i ditt integreringsundernät för att delegera undernätet. Om du vill delegera integreringsundernätet manuellt går du till Azure Virtual Network-undernätsgränssnittet och anger delegeringen för Microsoft.Web/serverFarms.

Gateway-nödvändig integrering av virtuella nätverk

  • Är punkt-till-plats-adressintervallet i RFC 1918-intervallen (10.0.0.0-10.255.255.255 / 172.16.0.0-172.31.255.255 / 192.168.0.0-192.168.255.255)?
  • Visas gatewayen som att den är upp i portalen? Om din gateway är nere kan du ta den tillbaka.
  • Visas certifikat som synkroniserade, eller misstänker du att nätverkskonfigurationen har ändrats? Om certifikaten inte är synkroniserade eller om du misstänker att en ändring har gjorts i konfigurationen för det virtuella nätverket som inte har synkroniserats med dina ASP:er väljer du Synkronisera nätverk.
  • Är den lokala gatewayen konfigurerad för att dirigera trafik tillbaka till Azure om du använder ett VPN? Om du kan nå slutpunkter i ditt virtuella nätverk men inte lokalt kontrollerar du vägarna.
  • Försöker du använda en gateway för samexistens som stöder både punkt-till-plats och ExpressRoute? Gatewayer för samexistens stöds inte med integrering av virtuella nätverk.

Det är en utmaning att felsöka nätverksproblem eftersom du inte kan se vad som blockerar åtkomsten till en specifik kombination av värd:port. Några orsaker är:

  • Du har en brandvägg på värden som förhindrar åtkomst till programporten från punkt-till-plats-IP-intervallet. Att korsa undernät kräver ofta offentlig åtkomst.
  • Målvärden är inte i drift.
  • Programmet är inte i drift.
  • Du hade fel IP-adress eller värdnamn.
  • Programmet lyssnar på en annan port än vad du förväntade dig. Du kan matcha ditt process-ID med lyssningsporten med hjälp av "netstat -aon" på slutpunktsvärden.
  • Dina nätverkssäkerhetsgrupper konfigureras på ett sådant sätt att de förhindrar åtkomst till programvärden och porten från punkt-till-plats-IP-intervallet.

Du vet inte vilken adress appen faktiskt använder. Det kan vara vilken adress som helst i integreringsundernätet eller punkt-till-plats-adressintervallet, så du måste tillåta åtkomst från hela adressintervallet.

Här är några fler felsökningssteg:

  • Anslut till en virtuell dator i ditt virtuella nätverk och försök att nå resursvärden:porten därifrån. Om du vill testa för TCP-åtkomst använder du PowerShell-kommandot test-netconnection. Syntax:

    test-netconnection hostname [optional: -Port]
    
  • Öppna ett program på en virtuell dator och testa åtkomsten till värden och porten från konsolen från din app med hjälp av tcpping.

Lokala resurser

Om din app inte kan nå en resurs lokalt kontrollerar du om du kan nå resursen från ditt virtuella nätverk. Använd PowerShell-kommandot test-netconnection för att söka efter TCP-åtkomst. Om den virtuella datorn inte kan nå din lokala resurs kanske VPN- eller ExpressRoute-anslutningen inte har konfigurerats korrekt.

Om din virtuella nätverksvärdbaserade virtuella dator kan nå ditt lokala system, men din app inte kan det, är orsaken troligtvis en av följande orsaker:

  • Vägarna har inte konfigurerats med undernätet eller punkt-till-plats-adressintervallen i din lokala gateway.
  • Dina nätverkssäkerhetsgrupper blockerar åtkomsten för ditt punkt-till-plats-IP-intervall.
  • Dina lokala brandväggar blockerar trafik från ditt IP-intervall för punkt-till-plats.
  • Du försöker nå en icke-RFC 1918-adress med hjälp av den regionala funktionen för integrering av virtuella nätverk.

Ta bort App Service plan eller webbappen innan du kopplar från VNet-integreringen

Om du har tagit bort webbappen eller App Service plan utan att först koppla från VNet-integreringen kan du inte göra några uppdaterings-/borttagningsåtgärder i det virtuella nätverket eller undernätet som användes för integreringen med den borttagna resursen. Undernätsdelegeringen "Microsoft.Web/serverFarms" förblir tilldelad till undernätet och förhindrar uppdaterings-/borttagningsåtgärder.

För att kunna uppdatera/ta bort undernätet eller det virtuella nätverket igen måste du skapa om VNet-integreringen och sedan koppla från den:

  1. Skapa om App Service plan och webbappen (det är obligatoriskt att använda exakt samma webbappnamn som tidigare).
  2. Gå till bladet Nätverk i webbappen och konfigurera VNet-integreringen.
  3. När VNet-integreringen har konfigurerats väljer du knappen "Koppla från".
  4. Ta bort App Service plan eller webbappen.
  5. Uppdatera/ta bort undernätet eller det virtuella nätverket.

Om du fortfarande stöter på problem med VNet-integreringen när du har följt stegen ovan kan du kontakta Microsoft Support.