我希望在Azure上部署一个测试网络,其中包含10个虚拟机,每个虚拟机的私有IP,位于以下网络堆栈中:
1 virtual network -> 1 subnet -> 1 network interface card (nic) -> 10 VMs
我想要确认的是:是否可以为每个虚拟机提供一个私有IP地址,所有这些IP地址都在同一个网络中,并且能够从虚拟网络的顶层公共IP通过SSH隧道连接到每个虚拟机?
答案 0 :(得分:0)
使用" classic"在虚拟机中,您在xyz.cloudapp.net
命名空间中拥有多个VM,它们共享相同的IP地址。每个VM的ssh端口都将映射到负载均衡器上的某个唯一入站端口。
使用基于ARM的VM,每个虚拟机都有自己的网络接口。每个VM使用独立的iP。
如果需要,您可以在虚拟机上没有任何入站流量(例如,未分配IP地址)。然后部署一个暴露ssh的跳转盒,并将该跳转器部分放在同一个vnet中。一旦进入跳跃框,您就可以ssh到10个虚拟机中的任何一个。
答案 1 :(得分:0)
是否可以为每个VM提供一个私有IP地址,所有这些都在 相同的尼克?
不,这是不可能的。在Azure上,网络接口卡(NIC)是一个独立的资源。 NIC只能与一个VM关联,但您可以将多个NIC添加到一个VM(取决于VM大小)。你可以参考这个official document。
因此,如果您希望所有VM使用相同的NIC,则无法使用。
根据Azure限制文档,每个网络接口都可以支持 50个私人IP
是的,一个NIC可以与多个私有IP相关联,但这并不意味着您可以将一个NIC添加到多个VM。您只能在一个VM上为一个NIC添加多个IP。请参阅此official document。
并且能够从顶层公共SSH隧道进入每个隧道 虚拟网络的IP?
Azure支持此功能,如果您的虚拟机位于同一个VNet中,您可以使用虚拟机之间的私有IP连接到其他虚拟机。正如大卫所说,你可以使用跳箱。您可以将Public IP关联到一个VM。然后,当您在Azure上ssh到VM时,您可以在同一个VNet中使用私有IP ssh任何VM。