在Powershell中使用nslookup获取ip-adresses的主机名

时间:2016-04-06 10:23:20

标签: powershell scripting nslookup

我对Powershell脚本实际上是零,但我需要编写一个,通过一个.txt文件,每行写一次ip-adresses并为每个地址运行nslookup以获取它的主机名并将其写入文件(如果没有使用过的IP的DNS记录,则会收到错误消息。)

我发现这个主题几乎是同一个任务:Getting IP addresses for hostnames using nslookup in Powershell

所以我需要一个类似的解决方案,但是使用IP地址作为输入来获取输出中的主机名(或错误消息)。

有人能帮助我吗?

谢谢。

2 个答案:

答案 0 :(得分:1)

GetHostBy* System.Net.DNS方法已被弃用并标记为已废弃。

使用GetHostEntry

    foreach ($ipAddress in $ipAddresses) {
    [Net.Dns]::GetHostEntry($ipaddress).HostName
}

答案 1 :(得分:0)

使用GetHosetByAddress方法并访问HostName属性以检索HostName:

$ipAddresses = get-content "path_to_the_file" 

foreach ($ipAddress in $ipAddresses) {
    [System.Net.Dns]::GetHostByAddress($ipAddress).HostName
}