Azure 虚拟机中专用端口的概念是什么?它的主要优势或用例是什么?我检查过的场景是,对于 RDP 端点,公共(public)端口是 3389,而专用端口占用一些随机端口号。
为了通过 RD 访问虚拟机,我还被迫打开该专用端口来访问它。在我见过的一些地方,HTTP 端点的私有(private)端口和公共(public)端口都设置为 80 进行访问?
这背后的理论是什么?
最佳答案
Windows Azure 将所有虚拟机置于负载平衡器后面。您的所有虚拟机都可以打开出站连接。对于入站连接,您需要在防火墙中显式打开端口。这些是输入端点和实例输入端点:
- 当您要跨虚拟机(例如网络服务器)实现流量负载平衡时,会使用输入端点
- 实例输入端点可让您直接连接到特定虚拟机(例如数据库服务器)
现在,关于公共(public)端口和私有(private)端口:公共(public)端口是暴露给外界的端口号。因此,对于网站来说,可能是端口 80。然后您可以将该端口映射到虚拟机本身的端口。也许您出于某种原因在端口 8000 上运行 Web 服务器。在这种情况下,您可以将公共(public)端口 80 映射到私有(private)端口 8000。
现在想象一下 SSH。 SSH 喜欢监听端口 22。但是,如果您在单个服务中拥有 3 个 Linux 虚拟机,则根本无法在端口 22 上访问所有它们,因为它们都共享一个 IP 地址。因此,每台机器都需要一个特定的端口号。在这种情况下,您可以在公共(public)端口端将端口 20000 分配给 vm1,将 21000 分配给 vm2 等,作为指向特定虚拟机实例的实例输入端点位于专用端口侧的端口 22。
希望这是有道理的......:)
关于azure - Azure 虚拟机中的专用端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15300356/