如何获取LAN上的活动IP地址,MAC地址和NetBIOS名称列表?
我想为局域网中的每台主机获取NetBIOS名称,IP和MAC addresses,最好不要走到每台PC并自己记录这些内容。
如何使用Windows Script Host / PowerShell /其他?
答案 0 :(得分:10)
正如Daren Thomas所说,使用nmap。
nmap -sP 192.168.1.1/24
扫描网络192.168.1。*
nmap -O 192.168.1.1/24
获取用户的操作系统。有关更多信息,请阅读联机帮助页
man nmap
问候
答案 1 :(得分:7)
arp -a
这可以获得当前机器在网络上所知道的一切。
(我把它作为第二个选项放在那里,因为nmap不是普遍安装的。)
答案 2 :(得分:2)
如果您使用的是DHCP,那么服务器会为您提供所有信息的列表。
本网站有一个很好的教程,使用PowerShell来获取网络信息http://www.powershellpro.com/powershell-tutorial-introduction/powershell-scripting-with-wmi/
如果您需要快速获取计算机名称列表,可以使用“网络视图”。还看看nbmac虽然我不确定它在XP下的工作状态。另一种选择可能是使用nbtstat -a(一旦你使用网络视图列出工作站)
答案 3 :(得分:1)
在PowerShell中,您可以执行以下操作:
$ computers =“server1”,“server2”,“server3”
Get-WmiObject Win32_NetworkAdapterConfiguration -computer $ computers -filter“IPEnabled ='true'”|选择__Server,IPAddress,MACAddress
答案 4 :(得分:0)
在PowerShell中:
function Explore-Net($subnet, [int[]]$range){
$range | % { test-connection "$subnet.$_" -count 1 -erroraction silentlycontinue} | select -Property address | % {[net.dns]::gethostbyaddress($_.address)}
}
示例:
Explore-Net 192.168.2 @(3..10)