如何获取活动 IP 地址、MAC 地址和 网络BIOS 局域网上的名称?

我想获取 NetBIOS 名称、IP 和 MAC地址 对于 LAN 上的每台主机,最好不必亲自走到每台 PC 处记录这些内容。

如何做到这一点 Windows 脚本宿主/PowerShell/什么?

有帮助吗?

解决方案

正如 Daren Thomas 所说,使用 nmap。

 nmap -sP 192.168.1.1/24

扫描网络 192.168.1.*

 nmap -O 192.168.1.1/24

获取用户的操作系统。有关更多信息,请阅读联机帮助页

 man nmap

问候

其他提示

arp -a

这将获取当前机器在网络上所知道的所有信息。

(我把它作为第二个选项,因为 nmap 没有普遍安装)。

如果您使用 DHCP,那么服务器将为您提供所有这些信息的列表。

这个网站有一个关于使用 powershell 获取网络信息的很好的教程 http://www.powershellpro.com/powershell-tutorial-introduction/powershell-scripting-with-wmi/

如果您需要获取计算机名称的快速列表,您可以使用“net view”。还可以看看 nbmac,尽管我不确定它在 XP 下的工作状态。另一种选择可能是使用 nbtstat -a (一旦您使用 net view 列出工作站)

在 PowerShell 中,您可以执行以下操作:

$计算机=“服务器1”,“服务器2”,“服务器3”

get -wmiObject win32_networkAdapterConfiguration -computer $ Computers -Filter“ ipenabled ='true'” |选择__ Server,iPaddress,MacAddress

在 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)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top