我知道有一条命令及其参数可以显示局域网内所有计算机的 IP 地址(正在使用的 IP 地址),我的计算机也是客户端,是显示的 IP 地址之一,但我忘了。这是什么?
答案1
您可以执行arp -a
命令来显示全部地址解析协议表中有关网络上的计算机的条目。
答案2
并非所有具有 IP 地址的设备都是计算机 - 我发现这些建议都没有返回所有活动的 IP 地址 - 事实上大多数都返回了很少的 IP 地址。我的家庭网络结合了有线和无线设备以及两个路由器、移动电话、电视、PVR、Apple AirPort 以及可能还有一些我忘记的东西。我使用以下命令扫描 192.168.1.xxx 子网上的所有地址:
for /L %i in (0,1,255) do ping -n 1 -w 250 192.168.1.%i>>ipaddress.txt
生成的文件 ipaddress.txt 包含所有地址的 ping 结果,我查找了带有“ Received = 1
”的地址 - 当前有 16 个地址返回了结果 - 我家里只有 4 台计算机 - 而且它们并非全部打开。
答案3
有一个net view /all
命令可以列出所有连接到同一 LAN 的计算机名称。
从中您可以使用命令检索各个 IP 地址nslookup <computer name>
,或者编写批处理脚本来为您执行此操作。
下面是我为了说明而拼凑的一个示例批次。
@echo off
setlocal EnableDelayedExpansion
set "xNext="
set "xComputer="
for /f %%A in ('net view /all') do (
set "xComputer=%%~A"
if "!xComputer:~0,2!"=="\\" for /f "tokens=2,* delims=. " %%X in ('nslookup %%A') do (
if "!xNext!"=="1" (
echo.!xComputer! = %%X.%%Y
set "xNext=0"
)
if "!xComputer:~2!"=="%%~X" set "xNext=1"
)
)
endlocal
pause
答案4
正如其他人所指出的,您可以使用,arp -a
但是请确保先 ping 广播地址,以便 ARP 报告所有设备。例如,ping 192.168.0.255
你可以通过 IP 和 MAC 地址获得连接到网络的所有设备的列表。你可以在以下网站上查找 MAC 地址:https://aruljohn.com/mac.pl找出 NIC 的供应商。这应该可以帮助您缩小大多数设备的范围。例如,计算机、打印机、电视、手机等。