2

将云服务与特定虚拟网络相关联时,实例会自动从选定的子网范围获取 IP。

有没有办法从实例本身动态地知道这个 IP?如果是这样,该信息是否在实例创建后立即可用,例如在执行启动任务时?

如果没有,是否有办法在创建实例后的任何时间以编程方式从实例外部获取此 IP?

我更喜欢 PowerShell 解决方案,但任何事情都可以。

谢谢。

4

1 回答 1

1

如果您来自实例,则 IP 地址是在引导时分配的。因此,在执行启动任务(PaaS / 云服务)时,您只需枚举网卡即可确定 IP 地址。或获取 en IP Endpoint。

一个示例 powershell(从未经过测试)看起来像这样:

[Reflection.Assembly]::LoadWithPartialName("Microsoft.WindowsAzure.ServiceRuntime")
$ipEndpoint = [Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment]::CurrentRoleInstance.InstanceEndpoints["Endpoint1"].IPEndpoint

现在您有了$ipEndpoint.NET 类型的变量IPEndpoint并保存了 VM 的本地 IP 地址。

于 2013-06-03T08:47:11.570 回答