2017-02-18 100 views
0

我正在寻找azure vnet中每个子网中可用IP地址的数量 ,所以我尝试在脚本下面,但我没有得到任何选项来获取可用IP。蔚蓝子网中的可用ips数

$nic = Get-AzureRmVirtualNetwork -Name TST-VNET1 -ResourceGroupName TST-RG1 
$nic.AddressSpace.AddressPrefixes 
$subnets= $nic.Subnets 
$subnets 
foreach($subnet in $subnets) 
{ 
$subnet.Name 
$subnet.IpConfigurations.Count 
$subnet.AddressPrefix 
} 

使用$subnet.IpConfigurations.Count获取可用的IP地址。 $subnet.AddressPrefix得到cidr。

我在这里寻找每个子网池中可用或分配的主机IP地址。

+0

我编辑你的问题,正确的嵌入式图像。现在,请将该评论移至您的问题中,作为修改。这不属于评论(因为它没有格式化,所以它几乎不可读)。 –

+0

谢谢大卫你的建议,但我不是真正的编码器,所以这个错误做.. –

+0

嗨杰森谢谢你的回答,但这不是我要找的,我正在寻找可用的ip在像你提到的每个子网中的屏幕快照 –

回答

0

我们可以使用天青门户获得可用的IP地址数量: enter image description here

PowerShell脚本:

$nic = Get-AzureRmVirtualNetwork -Name "jason" -ResourceGroupName "vnet" 
$nic.AddressSpace.AddressPrefixes 
$subnets = $nic.Subnets 
$subnets 
foreach($subnet in $subnets) 
{ 
$subnet.Name 
$subnet.IpConfigurations.Count 
$subnet.AddressPrefix 
} 

$splitAddress = $subnet.AddressPrefix.Split("/") 
$output = [math]::Pow(2, (32 - $splitAddress[1])) - 5 - $subnet.IpConfigurations.Count 
+1

$ output.'Ip in Use'= $ subnet.IpConfigurations.Count $ splitAddress = $ subnet.AddressPrefix.Split(“/”) $ output.'Free IP in Subnet'= [math] :: Pow( 2,(32 - $ splitAddress [1])) - 5 - $ subnet.IpConfigurations.Count 使用上面的脚本我得到的结果... –

+0

@VivekMishra是的,你的脚本是正确的,它会得到可用的数量IP地址。 –