You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Azure函数应用使用possibleOutboundIpAddresses而非outboundIpAddresses的IP?

Azure函数应用出站IP超出outboundIpAddresses范围的原因及解决

问题描述

我有一个托管在应用服务计划(ASP)、SKU为Y1的Azure函数应用,该函数向APIM发起请求。我希望对这些请求进行IP限制,于是通过az functionapp show命令获取outboundIpAddresses并配置了IP允许规则,但却收到来自possibleOutboundIpAddresses列表中的IP(20.126.165.248)的请求,该IP不在outboundIpAddresses列表内,请问为何会出现此行为?

相关信息

APIM请求头

X-FORWARDED-PROTO: https 
X-FORWARDED-PORT: 443 
X-Forwarded-For: 20.126.165.248 
X-AppGW-Trace-Id: 004043be87f9f6a4995a873c71c3bdae 
Content-Type: application/json

执行命令

az functionapp show \
    --resource-group $RG --name $FUNCAPP_NAME  \
    --output json

命令返回片段

"outboundIpAddresses": "20.71.2.240,20.71.0.133,20.71.3.53,20.71.3.54,20.71.2.211,20.71.3.255,57.153.72.229,20.105.224.11",
  "possibleOutboundIpAddresses": "20.71.2.240,20.71.0.133,20.71.3.53,20.71.3.54,20.71.2.211,20.71.3.255,57.153.72.229,20.73.35.54,20.73.38.170,20.73.39.2,20.73.39.62,20.73.39.66,20.103.174.104,20.103.174.120,20.126.176.121,20.73.120.114,20.73.120.186,20.73.120.201,20.103.92.68,20.126.160.168,20.126.161.98,20.126.163.167,20.126.163.239,20.126.164.236,20.126.165.160,20.126.165.248,20.126.166.23,20.126.166.104,20.126.167.36,20.126.167.93,20.126.167.116,20.105.224.11",

原因分析

Y1 SKU属于消耗计划(Consumption Plan),这类计划的核心特性是动态弹性缩放:Azure会根据函数的负载情况,自动分配或释放计算资源。这些资源来自Azure的共享IP池,outboundIpAddresses仅代表当前时刻函数实例正在使用的出站IP,而possibleOutboundIpAddresses是该区域内消耗计划所有可能用到的IP范围。

当函数触发缩放(比如请求量增加导致新实例启动),或者Azure底层基础架构进行调整时,新启动的函数实例可能会使用possibleOutboundIpAddresses列表中的其他IP,而非outboundIpAddresses里的固定IP,这就导致了不在允许列表内的IP发起请求的情况。

解决方案

  1. 将possibleOutboundIpAddresses全部加入APIM允许规则:直接把possibleOutboundIpAddresses返回的所有IP添加到APIM的IP允许列表中,覆盖所有可能的出站IP范围。
  2. 切换到固定IP的应用服务计划:如果需要固定的出站IP,可以将函数应用迁移到基本(B1/B2/B3)、**标准(S1/S2/S3)或高级(P1v2/P2v2/P3v2)**等专用计划,这类计划的outboundIpAddresses是固定的,不会随缩放变动。
  3. 使用VNet集成固定出站IP:通过虚拟网络(VNet)集成功能,让函数应用通过NAT网关或应用网关出站,这样可以固定出站IP为网关的IP,无需维护大量IP列表。

内容的提问来源于stack exchange,提问作者Max

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 06:43:21