销售电话: 1-800-867-1380

为 VM 设置静态内部 IP 地址

更新时间: 2015年4月

在大多数情况下,你不需要为虚拟机指定静态内部 IP 地址 (DIP)。虚拟网络中的 VM 会自动接收你指定的范围内的内部 IP 地址。但在某些情况下,为特定 VM 指定静态 IP 地址是有意义的。例如,如果你的 VM 要运行 DNS 或者将作为域控制器。或者,如果你有一个在某一时刻打算停止/取消设置的 VM,但希望在重新设置它时保留其 DIP。静态 DIP 在 VM 中保持不变,即使在停止/取消设置状态下也是如此。你可以在创建 VM 时使用 PowerShell 指定静态 DIP,也可以更新现有的 VM。

如果在你的虚拟网络中同时有 VM 和 PaaS 实例,你可能要将具有静态 DIP 的 VM 与 PaaS 实例分离,方法是为 VM 创建一个单独的子网,然后将 VM 部署到该子网。它不仅对你很有帮助,因为你能够在单独的子网中查看静态 VM 并立即了解哪些 VM 具有静态 DIP,而且就此发行版而言,它还可以防止新的 PaaS 实例从处于停止/取消设置(不只是重启)过程中的 VM 获取静态 DIP。这是此发行版中当前对于混合 VM/PaaS 子网和静态 DIP 的限制。如果只将 VM 部署到子网,即使一些 VM 没有静态 DIP,此问题也不会发生。如果你已部署了 VM,则可以轻松地将它们移到新的子网,以避免此潜在问题。有关详细信息,请参阅将 VM 或角色实例移到其他子网

从地址池指定静态 IP 地址之前,可能需要验证该 IP 地址是否尚未分配。在下面的示例中,我们将要检查 IP 地址 192.168.4.7 是否在 TestVNet 虚拟网络中可用。

Test-AzureStaticVNetIP –VNetName TestVNet –IPAddress 192.168.4.7 

请务必在运行 cmdlet 前更改 cmdlet 的变量,以反映你对环境的要求。

New-AzureVMConfig -Name $vmname -ImageName $img –InstanceSize Small | Set-AzureSubnet –SubnetNames $sub | Set-AzureStaticVNetIP -IPAddress 192.168.4.7 | New-AzureVM –ServiceName $vmsvc1 –VNetName TestVNet

如果要为以前创建的 VM 设置静态 IP 地址,可以通过使用以下 cmdlet 来执行此操作。如果你已为 VM 设置了 IP 地址并且想要将其更改为其他 IP 地址,则在运行这些 cmdlet 之前需要先删除现有的静态 IP 地址。请参阅以下说明删除静态 IP。

对于此过程,你将使用 Update-AzureVM cmdlet。Update-AzureVM cmdlet 将在更新过程中重启 VM。在 VM 重启后,将为其分配你指定的 DIP。在此示例中,我们将为云服务 StaticDemo 中的 VM2 设置 IP 地址。

Get-AzureVM -ServiceName StaticDemo -Name VM2 | Set-AzureStaticVNetIP -IPAddress 192.168.4.7 | Update-AzureVM

当你从 VM 中删除静态 IP 地址时,VM 将在更新过程中重启后自动接收新 DIP。在下面的示例中,我们将从云服务 StaticDemo 中的 VM2 中删除静态 IP。

Get-AzureVM -ServiceName StaticDemo -Name VM2 | Remove-AzureStaticVNetIP | Update-AzureVM

另请参阅

本文是否对您有所帮助?
(1500 个剩余字符)
感谢您的反馈
显示:
© 2015 Microsoft