获取子网中可用的IP地址列表

时间:2017-01-20 23:38:25

标签: azure azure-powershell

如何获取子网中可用IP地址的列表? 我能够获取所有IP地址的列表,但无法检查IP地址是否已被使用。由于某种原因,下面的命令不起作用。 试验AzureRmPrivateIPAddressAvailability

谢谢你。

2 个答案:

答案 0 :(得分:2)

我有以下示例,它按预期工作。我使用`反引号字符将我的命令分成多行。

$vNetName = "myvirtualnetworkname"
$resourceGroupName = "myresourcegroup"
Get-AzureRmVirtualNetwork `
-Name $vNetName `
-ResourceGroupName $resourceGroupName `
| Test-AzureRmPrivateIPAddressAvailability -IPAddress "10.0.0.10"

我正在使用Test-AzureRMPrivateIPAddressAvailability命令,因此它没有在该命令中提供资源组或vnetname。如果您自己使用该命令,则必须提供资源组名称和vnet名称。

答案 1 :(得分:2)

  

由于某种原因,以下命令不起作用。   试验AzureRmPrivateIPAddressAvailability

我们可以像这样使用Test-AzureRmPrivateIPAddressAvailability:

PS C:\> Get-AzureRmVirtualNetwork -Name $vnetName -ResourceGroupName $rgname | Test-AzureRmPrivateIPAddressAvailability -IPAddress "10.0.1.10"

我们也可以使用PowerShell列出子网中的可用IP地址,这是我的脚本:

PS C:\> $vnet = Get-AzureRmVirtualNetwork -Name "vnet" -ResourceGroupName "jason"
PS C:\> $networkID = "10.0.0."
PS C:\> For ($i=1; $i -lt 255; $i++)
>> {
>>     $IP = $networkID + $i
>>     $Address = Test-AzureRmPrivateIPAddressAvailability -VirtualNetwork $vnet -IPAddress $IP
>>     If ($Address.Available –eq $False) { Write-Host "$IP is not available" -ForegroundColor Red }
>>     else { Write-Host "$IP is available" -ForegroundColor Green}
>> }
10.0.0.1 is not available
10.0.0.2 is not available
10.0.0.3 is not available
10.0.0.4 is not available
10.0.0.5 is available
10.0.0.6 is available
10.0.0.7 is available
10.0.0.8 is available
10.0.0.9 is available
10.0.0.10 is available

enter image description here

相关问题