Freigeben über


IP-Adressen in Azure Functions

In diesem Artikel werden die folgenden Konzepte für IP-Adressen von Funktions-Apps erläutert:

  • Suchen der ip-Adressen, die derzeit von einer Funktions-App verwendet werden.
  • Bedingungen, die dazu führen, dass sich die IP-Adressen der Funktions-App ändern.
  • Einschränken der IP-Adressen, die auf eine Funktions-App zugreifen können.
  • Definieren dedizierter IP-Adressen für eine Funktions-App.

IP-Adressen sind Funktions-Apps zugeordnet, nicht mit einzelnen Funktionen. Eingehende HTTP-Anforderungen können die eingehende IP-Adresse nicht verwenden, um einzelne Funktionen aufzurufen; sie müssen den Standarddomänennamen (functionappname.azurewebsites.net) oder einen benutzerdefinierten Domänennamen verwenden.

Eingehende IP-Adresse einer Funktions-App

Jede Funktions-App verwendet zu Beginn eine einzige eingehende IP-Adresse. Wenn eine Funktions-App in einem Verbrauchs- oder Premium-Plan ausgeführt wird, werden möglicherweise weitere eingehende IP-Adressen hinzugefügt, da eine ereignisgesteuerte Skalierung erfolgt. Um die eingehende IP-Adresse oder Adressen zu finden, die von Ihrer App verwendet werden, verwenden Sie das nslookup Dienstprogramm von Ihrem lokalen Computer, wie im folgenden Beispiel gezeigt:

nslookup <APP_NAME>.azurewebsites.net

Setzen Sie in diesem Beispiel <APP_NAME> durch den Namen Ihrer Funktions-App ein. Wenn Ihre App einen benutzerdefinierten Domänennamen verwendet, verwenden Sie nslookup stattdessen diesen benutzerdefinierten Domänennamen.

Ausgehende IP-Adressen einer Funktions-App

Jede Funktions-App verfügt über eine Reihe verfügbarer ausgehender IP-Adressen. Jede ausgehende Verbindung aus einer Funktion, z. B. mit einer Back-End-Datenbank, verwendet eine der verfügbaren ausgehenden IP-Adressen als Ursprungs-IP-Adresse. Sie können vorher nicht wissen, welche IP-Adresse eine bestimmte Verbindung verwendet. Aus diesem Grund muss Ihr Back-End-Dienst seine Firewall für alle ausgehenden IP-Adressen der Funktions-App öffnen.

Tipp

Bei einigen Features auf Plattformebene, z. B. Key Vault-Verweise, ist die Ursprungs-IP möglicherweise nicht einer der ausgehenden IPs, und Sie sollten die Zielressource nicht so konfigurieren, dass sie auf diese spezifischen Adressen angewiesen ist. Es wird empfohlen, dass die App stattdessen eine Integration des virtuellen Netzwerks verwendet, da die Plattform Datenverkehr über dieses Netzwerk an die Zielressource weitergibt.

So finden Sie die verfügbaren ausgehenden IP-Adressen einer Funktionen-App:

  1. Melden Sie sich beim Azure-Ressourcen-Explorer an.
  2. Wählen Sie Abonnements> {Ihr Abonnement} >Anbieter>Microsoft.Web>sites aus.
  3. Suchen Sie im JSON-Bereich die Website mit einer id Eigenschaft, die im Namen Ihrer Funktions-App endet.
  4. Siehe outboundIpAddresses und possibleOutboundIpAddresses.

Der Satz der outboundIpAddresses steht derzeit für die Funktions-App zur Verfügung. Der Satz enthält possibleOutboundIpAddresses IP-Adressen, die nur verfügbar sind, wenn die Funktions-App auf andere Preisstufen skaliert wird.

Hinweis

Wenn eine Funktions-App, die im Verbrauchsplan oder im Premium-Plan ausgeführt wird, skaliert wird, wird möglicherweise ein neuer Bereich von ausgehenden IP-Adressen zugewiesen. Wenn Sie einen dieser Pläne ausführen, können Sie sich nicht auf die gemeldeten ausgehenden IP-Adressen verlassen, um eine endgültige Positivliste zu erstellen. Um alle potenziellen ausgehenden Adressen einzuschließen, die während der dynamischen Skalierung verwendet werden, müssen Sie das gesamte Rechenzentrum zu Ihrer Zulassungsliste hinzufügen.

Ausgehende IP-Adressen des Rechenzentrums

Wenn Sie die von Ihren Funktions-Apps verwendeten ausgehenden IP-Adressen zu einer Zulassungsliste hinzufügen müssen, besteht eine weitere Option darin, das Rechenzentrum der Funktions-Apps (Azure-Region) zu einer Zulassungsliste hinzuzufügen. Sie können eine JSON-Datei herunterladen, die IP-Adressen für alle Azure-Rechenzentren auflistet. Suchen Sie dann das JSON-Fragment, das der Region entspricht, in der Ihre Funktions-App ausgeführt wird.

Beispielsweise könnte die Positivliste für Westeuropa etwa folgendem JSON-Fragment ähneln:

{
  "name": "AzureCloud.westeurope",
  "id": "AzureCloud.westeurope",
  "properties": {
    "changeNumber": 9,
    "region": "westeurope",
    "platform": "Azure",
    "systemService": "",
    "addressPrefixes": [
      "13.69.0.0/17",
      "13.73.128.0/18",
      ... Some IP addresses not shown here
     "213.199.180.192/27",
     "213.199.183.0/24"
    ]
  }
}

Informationen dazu, wann diese Datei aktualisiert wird und wann die IP-Adresse geändert wird, finden Sie im Abschnitt Details auf der Download Center-Seite.

Änderungen eingehender IP-Adressen

Die eingehende IP-Adresse kann sich ändern , wenn Sie:

  • eine Funktionen App löschen und in einer anderen Ressourcengruppe neu erstellen.
  • die letzte Funktionen-App in einer Kombination aus Ressourcengruppe und Region löschen und neu erstellen.
  • Löschen Sie eine TLS-Bindung, z. B. während der Zertifikatverlängerung.

Wenn Ihre Funktions-App in einem Verbrauchsplan oder in einem Premium-Plan ausgeführt wird, ändert sich die eingehende IP-Adresse möglicherweise auch, wenn Sie hier keine Aktionen wie die hier ausgeführt haben.

Änderungen der ausgehenden IP-Adresse

Die relative Stabilität der ausgehenden IP-Adresse hängt vom Hostingplan ab.

Verbrauchs- und Premium-Pläne

Aufgrund von automatischen Skalierungsverhalten kann sich die ausgehende IP jederzeit ändern, wenn sie auf einem Verbrauchsplan oder in einem Premium-Plan ausgeführt wird.

Wenn Sie die ausgehende IP-Adresse Ihrer Funktionsanwendung steuern müssen, z. B. wenn Sie sie einer Positivliste hinzufügen müssen, sollten Sie ein NAT-Gateway für virtuelle Netzwerke in einem Premium-Hostingplan implementieren. Dazu können Sie auch in einem dedizierten Plan (App Service) ausführen.

Dedizierte Pläne

Bei der Ausführung einer Funktions-App in dedizierten (App Service-)Plänen kann sich der Satz der verfügbaren ausgehenden IP-Adressen für eine Funktions-App ändern, wenn Sie:

  • Ergreifen Sie jede Aktion, die die eingehende IP-Adresse ändern kann.
  • Ändern Sie das Preisniveau Ihres dedizierten App-Service-Plans. Die Liste aller möglichen ausgehenden IP-Adressen, die Ihre App für alle Preisstufen verwenden kann, befindet sich in der possibleOutboundIPAddresses Eigenschaft. Siehe Ermitteln der ausgehenden IP-Adressen.

Erzwingen einer Änderung ausgehender IP-Adressen

Verwenden Sie das folgende Verfahren, um absichtlich eine Änderung ausgehender IP-Adressen in einem dedizierten Plan (App Service) zu erzwingen:

  1. Skalieren Sie Ihren App Service-Plan zwischen Standard- und Premium v2-Preisstufen nach oben oder unten.

  2. Warten Sie 10 Minuten.

  3. Skalieren Sie zurück an die Stelle, an der Sie begonnen haben.

IP-Adresseinschränkungen

Sie können eine Liste der IP-Adressen konfigurieren, die Sie den Zugriff auf eine Funktions-App zulassen oder verweigern möchten. Weitere Informationen finden Sie unter Azure App Service-Zugriffseinschränkungen.

Dedizierte IP-Adressen

Es gibt mehrere Strategien, um zu untersuchen, wann Ihre Funktions-App statische, dedizierte IP-Adressen erfordert.

NAT-Gateway für virtuelle Netzwerke für ausgehende statische IP-Adressen

Sie können die IP-Adresse des ausgehenden Datenverkehrs von Ihren Funktionen steuern, indem Sie ein NAT-Gateway für virtuelle Netzwerke verwenden, um den Datenverkehr über eine statische öffentliche IP-Adresse zu leiten. Sie können diese Topologie für Ausführungen in einem Premium-Plan oder in einem dedizierten Hostingplan verwenden. Weitere Informationen finden Sie im Lernprogramm: Steuern der ausgehenden IP-Adresse von Azure-Funktionen mit einem NAT-Gateway des virtuellen Azure-Netzwerks.

App-Dienstumgebungen

Für die vollständige Kontrolle über die IP-Adressen, sowohl eingehend als auch ausgehend, empfehlen wir App-Dienstumgebungen (die isolierte Ebene von App Service-Plänen). Weitere Informationen finden Sie in der Übersicht über app Service Environment.

So ermitteln Sie, ob Ihre Funktions-App in einer App-Dienstumgebung ausgeführt wird:

  1. Melden Sie sich beim Azure-Portal an.
  2. Navigieren Sie zur Funktionen-App.
  3. Klicken Sie auf die Registerkarte Übersicht.
  4. Die App Service-Plan-Stufe wird unter App Service-Plan/Preisstufe angezeigt. Die Preisstufe der App-Dienstumgebung ist isoliert.

Die App-Dienstumgebung sku lautet Isolated.

Nächste Schritte

Eine häufige Ursache für IP-Änderungen ist Funktions-App-Skalierungsänderungen. Erfahren Sie mehr über die Skalierung der Funktions-App.