Azure 如何通过 VNET 内的私有 IP 调用内部 API 管理服务

Azure How can I call internal API Management service by private IP inside VNET

我在 Azure 中创建了 VNET。我放入了一个子集 internal API Management,它在 VNET 之外和另一个虚拟机中调用 Azure Function。当我尝试调用 API Management 时,出现了 503 异常。如果我尝试从 VM ping 私有 IP,它确实有效。

另一个解决方案是创建 Azure private link 但在这种情况下,我通过 link 获得了信息但无法通过私有 IP(获得 400)
ping 或调用
我的解决方案是 运行 Web 应用程序而不是 VM 中的 AF,因为 VNET 中的私有 IP 可以轻松调用 VM。

如何通过私人 API 调用 API 管理和其他 Azure 服务(Azure 私人 link)?

来自官方document,

API Management service does not listen to requests coming from IP addresses. It only responds to requests to the hostname configured on its service endpoints. These endpoints include gateway, the Azure portal and the Developer portal, direct management endpoint, and Git.

内部 模式 API 管理中,您只能通过主机名而不是私有 IP 访问 API 管理服务。对于这种模式,您必须管理自己的路由。如果您在虚拟网络中使用自定义 DNS 服务器,您还可以创建 A DNS 记录并从虚拟网络中的任何位置访问这些终结点。