如何从VNet_1中的App Service向VNet_2中的Function App发送GET/POST请求
Azure跨VNet App Service与Function App互通配置方案
根因说明
你的场景核心问题是未完成VNet之间的互通配置与私有域名解析匹配,导致App Service的出站请求无法正确路由到Function App的私有端点。
需调整的网络配置
- 配置VNet_1与VNet_2双向对等连接:两个VNet分别创建到对方的对等连接,同时开启
允许转发流量开关,若VNet绑定了网关可同步开启允许网关传输,配置前需确认两个VNet的IP地址段无重叠冲突。 - 统一私有DNS配置:为VNet_1和VNet_2同时关联私有DNS区域
privatelink.azurewebsites.net,检查该DNS区域中已存在Function App私有端点对应的A记录,确保App Service请求Function App域名时,可解析到正确的私有IP而非公网IP。 - 调整访问限制规则:进入Function App的「网络-访问限制」配置页,确认优先级最高的规则允许VNet_1、VNet_2的地址段入站,或确保私有端点流量未被自定义deny规则拦截。
- 验证路由规则:检查VNet_2绑定的路由表,不存在拦截Function App私有IP段的路由规则,若使用了防火墙/NVA设备,需加放行规则允许两个VNet之间的443端口双向互通。
连通性验证
登录App Service的Kudu高级工具,进入控制台执行以下命令验证连通性:
- 执行
nameresolver <你的Function App域名>,确认返回结果为Function App的私有端点IP - 执行
tcping <你的Function App域名> 443,确认443端口连通成功
你之前新增的双VNet私有端点为可选配置,完成上述配置后即使仅保留原有单VNet私有端点也可正常互通,无需额外冗余配置。
内容的提问来源于stack exchange,提问作者Benjy Bret Barlow
相关产品推荐
相关产品推荐

