I have CSV containing IP number's related to IPv6 and I am reading and converting them to IPv6 ip address which is failing at the moment.
I am using below code but getting error:
Cannot convert value "281470698520576" to type "System.Net.IPAddress". Error: "Specified argument was out of the range of valid values.
function Convert-NumberToIP
{
param(
[Parameter(Mandatory=$true)][string]$number
)
[Int64] $numberInt = 0
if([Int64]::TryParse($number, [ref]$numberInt))
{
if(($numberInt -ge 0) -and ($numberInt -le 0xFFFFFFFFl))
{
#([IPAddress] $numberInt).ToString()
$ipBytes = ([IPAddress]$numberInt).GetAddressBytes()
[array]::Reverse($ipBytes)
([IPAddress]$ipBytes).IPAddressToString
}
}
}
$startIP = Convert-NumberToIP -number '281470698520576'
$endIP = Convert-NumberToIP -number '281470698520580'