Find-IpamFreeRange
Finds one or more free IP ranges from a specified subnet.
Syntax
Find-IpamFreeRange
[-InputObject] <CimInstance>
[-NumberOfAddresses] <UInt32>
[[-NumberOfRanges] <UInt32>]
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[<CommonParameters>]
Description
The Find-IpamFreeRange cmdlet finds available IP address ranges from a specified subnet in the IP Address Management (IPAM) database. An IP range is a unique collection of IP addresses, generally corresponding to a Dynamic Host Configuration Protocol (DHCP) scope. The subnet within which free IP range is to be searched is passed in InputObject parameter.
Examples
Example 1: Find free ranges that have 256 IP addresses
PS C:\> $Subnet = Get-IpamSubnet -NetworkId 12.1.0.0/16
PS C:\> Find-IpamFreeRange -InputObject $Subnet -NumberOfAddresses 256
StartIPAddress : 12.1.0.0
EndIPAddress : 12.1.0.255
NetworkId : 12.1.0.0/16
The first command gets the IPAM subnet for a specific network ID and stores it in the variable named $Subnet. The second command finds all the free IP ranges of the subnet specified in the $Subnet variable that have IP addresses of 256.
Parameters
-AsJob
Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete.
The cmdlet immediately returns an object that represents the job and then displays the command prompt.
You can continue to work in the session while the job completes.
To manage the job, use the *-Job
cmdlets.
To get the job results, use the Receive-Job cmdlet.
For more information about Windows PowerShell background jobs, see about_Jobs.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CimSession
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.
Type: | CimSession[] |
Aliases: | Session |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet.
Type: | CimInstance |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NumberOfAddresses
Specifies the size of the IP range to be returned. This number denotes the number of free IP addresses required in the IP range.
Type: | UInt32 |
Position: | 2 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NumberOfRanges
Specifies the number of free IP ranges to be returned.
Type: | UInt32 |
Position: | 3 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
Specifies the maximum number of concurrent operations that can be established to run the cmdlet.
If this parameter is omitted or a value of 0
is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer.
The throttle limit applies only to the current cmdlet, not to the session or to the computer.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Outputs
The cmdlet returns an instance of the IpamFreeRange object.