什么命令可以用来获取位于同一网络中的计算机的 IP 地址和名称?
我正在运行 Windows
答案1
nmap -sn 192.168.1.0/24
在其中输入您的网络号。它将对您的网络进行 ping 扫描并报告正常运行的机器的反向 DNS。不会找到宕机的机器。
C:> for /L %N in (1,1,254) do @nslookup 192.168.0.%N >> names.txt
这将对子网中的每个 IP 进行反向查找。
答案2
尝试使用这个简单的命令提示符代码。要获取所有网络 IP,arp -a
以查找 IP 的来源tracert "ip"
答案3
使用 Powershell -德米特里索特尼科夫写了一个很好的函数,这是来自: http://dmitrysotnikov.wordpress.com/2008/03/07/get-computer-by-ip-address/
确实需要一些错误处理才能更清晰地回复“超时”和“未找到主机”。
function Get-ComputerNameByIP {
param(
$IPAddress = $null
)
BEGIN {
}
PROCESS {
if ($IPAddress -and $_) {
throw ‘Please use either pipeline or input parameter’
break
} elseif ($IPAddress) {
([System.Net.Dns]::GetHostbyAddress($IPAddress))
} elseif ($_) {
trap [Exception] {
write-warning $_.Exception.Message
continue;
}
[System.Net.Dns]::GetHostbyAddress($_)
} else {
$IPAddress = Read-Host “Please supply the IP Address”
[System.Net.Dns]::GetHostbyAddress($IPAddress)
}
}
END {
}
}
#Use any range you want here
1..255 | ForEach-Object {”10.20.100.$_”} | Get-ComputerNameByIP
答案4
如果您不介意安装这个小应用程序:Radmin 的高级 IP 扫描器(适用于 Windows 的免费软件)
为您提供本地网络主机:
- 知识产权
- NetBIOS 名称
- Ping 时间
- MAC地址
- 远程关机(我猜仅限 Windows), 和别的
Advanced IP Scanner 是一款快速、强大且易于使用的 Windows IP 扫描程序。它可让您在几秒钟内轻松获得有关本地网络计算机的各种信息!Advanced IP Scanner 让您只需单击一下即可访问许多有用的功能 - 远程关机和唤醒、Radmin 集成等等!该程序采用多线程扫描技术,每秒可扫描数百台计算机,让您即使通过调制解调器连接也能扫描“C”级甚至“B”级网络。