如何获取LAN上的活动IP地址,MAC地址和NetBIOS名称列表?

时间:2008-09-18 07:42:38

标签: windows networking powershell sysadmin wsh

如何获取LAN上的活动IP地址,MAC地址和NetBIOS名称列表?

我想为局域网中的每台主机获取NetBIOS名称,IP和MAC addresses,最好不要走到每台PC并自己记录这些内容。

如何使用Windows Script Host / PowerShell /其他?

5 个答案:

答案 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)