【发布时间】:2020-05-19 19:41:57
【问题描述】:
我有一个没有公共 IP 的 Azure VM。它只有一个内部 IP,它存在于我在 Azure 上的“开发”环境虚拟网络中。我们在虚拟网络 vnet-dev 上将此称为 vm-dev。
我的 Azure VM 在此虚拟机上的 localhost 上托管一个在 IIS 上运行的 Web API。我们称之为 CoolWebApi
我有一个 Azure 应用服务,它是一个存在于同一环境中的 API,我们称之为 api-dev。
api-dev 有一个虚拟 IP 地址,我们称之为 91.195.240.126
1) 任何人都可以访问 vm-dev 的唯一方法是通过我的 Azure 防火墙。他们需要特定的 NAT 规则来允许他们访问该虚拟机。例如,我可能有一个如下所示的 NAT 规则。
源 IP、目标 IP(防火墙公共 IP)、转换地址、端口。
23.44.55.66、23.674.23.12、91.195.240.126(vm-dev 住在这里)、3389。
问题是,我想让我的 Azure 应用服务 (api-dev) 能够在端口 8080 上向此 VM 发出请求。所以我想,我将在防火墙中创建另一个 NAT 规则并使用api-dev 虚拟 IP/出站地址作为源 IP,这样可以吗?错了。
我还尝试在我的 vnet-dev 上创建入站规则以允许端口 8080、443 上的 api-dev 虚拟 ip,这也不起作用!
这方面的最佳做法是什么?我应该做什么?
最终,api-dev 应该能够向运行在 localhost 上的 vm-dev 上的 CoolWebApi 发出请求。
【问题讨论】:
标签: azure azure-web-app-service azure-virtual-machine