powershell 正确的IP地址从数字转换是什么?

lztngnrs  于 2023-02-19  发布在  Shell
关注(0)|答案(1)|浏览(158)

我试图转换号码为ip地址使用powershell方法和检查相同的在线,我得到2个不同的结果。

    • 示例:**
number = 16812043
result1 = 11.136.0.1 #using powershell
result2 = 1.0.136.11 #https://codebeautify.org/decimal-to-ip-converter

我已尝试以下代码

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()
        }
    }
}

Convert-NumberToIP -number 16812043

我得到2个不同的结果不确定哪一个是正确的,或者我应该更新函数。

dldeef67

dldeef671#

使用IPAddress.NetworkToHostOrder()方法翻转十进制数表示的八位字节的字节序:

PS ~> [ipaddress]::new([ipaddress]::NetworkToHostOrder(16812043)).IPAddressToString
1.0.136.11

相关问题