There is a very quick and easy way that lets ping a wide range of IPs to find out which IPs are free and which ones have been taken, using the PowerShell built-in cmdlet Test-Connection.

In the above example, I have used the IP range 200 – 210

Try the PowerShell code below.

$iprange = 200..254
Foreach ($ip in $iprange)
{
    $computer = "192.168.105.$ip"
    $status = Test-Connection $computer -count 1 -Quiet
    if (!$status)
    {
        $computer + " - available" 
    }
}