Azure 应用服务出站请求不通过 Vnet 集成 NAT 网关路由

标签 azure nat

我有一个带有公共(public) IP 的 NAT 网关,该网关与我拥有应用服务的同一 Vnet 和子网关联。但是,如果我从 kudu 控制台运行 curl 命令,例如 curl ifconfig.io,它仍然返回应用服务的出站 IP 地址之一,而不是我之前的 NAT 网关公共(public) IP期待。

除非我误解了 NAT 的工作原理,否则我应该会看到从 ifconfig.io 返回的值作为 NAT 网关的公共(public) IP,对吗?

enter image description here

enter image description here

最佳答案

具有公共(public) IP 的 natgateway 仅确保所有出站流量均源自该 IP。它不能确保您的所有计算都发生在该 1 个 IP 上。因此,在您的情况下,“ifconfig.io”仅检查计算实例的 IP,这实际上是应用程序服务本身。但是,如果您尝试从应用服务内调用外部 Web API,该 Web API 将看到源自您的单个公共(public) IP 的所有请求。

测试此问题的一个简单方法是尝试在存储帐户启用了日志记录的情况下获取存储 blob。在日志分析中,您将看到源自您的公共(public) IP 的请求。如果您有某种公共(public) IP 白名单要求,这是确保您的流量来自静态 IP 的好方法。

关于Azure 应用服务出站请求不通过 Vnet 集成 NAT 网关路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76240103/

相关文章:

c++ - UDP NAT穿越

java - 连接到位于路由器后面的 RMI 服务器时出现问题

Java Netty UDT 交会不起作用

linux - iptables 更改目标地址后路由

asp.net:图表处理程序配置中的临时目录无效 [c:\TempImageFiles\]

c# - AddApplicationInsightsTelemetry未注册ILoggingProvider

azure - 如何使用 Azure CLI 将 Azure 虚拟机加入 AD 域

svn - 如何通过 SSH 隧道从家里连接到工作 SVN 存储库

Azure blob 容器 listBlobs 用于在 java 中获取具有特定扩展名的文件

c# - 从 Azure 应用程序读取 Office Excel 文件