如何利用VBS通过局域网IP,获取计算机名

如何利用VBS通过局域网IP,获取计算机名,第1张

运行——〉cmd,ipconfig/all查自己信息;假设对方名字为abc,pingabc即可查对方ip地址;nbtstat-aabc不但能得到对方的ip地址,还能得到他的网卡地址;假设只知道对方的ip地址如192168110可以ping-a192168110查他的名字

在使用该软件时,首先要确保局域网内所有都开机并登录了系统,然后运行NetSuper并在其主窗口中点击搜索计算机按钮。这时将会很快在主窗口中左侧的计算机列表框中看到显示所有计算机的相关信息,包括计算机名、IP地址、计算机描述、域/工作组、MAC地址等信息。

一、所涉及DOS命令讲解

1

set ip=1921681

set为设置环境变量命令。

该命令将IP设置为值为“1921681"的参数,其中“1921681"为局域网网段,请根据局域网实际值修改。

2

for /l %j in (1,1,10) do echo %i

for命令是DOS命令中一个功能十分强大的命令,在这里用到/L参数,功能是以一个增量数字集进行循环(start,step,end),即变量j初值start为1,每循环一次加增量step1,直到大于end10停止循环,每次循环执行do后面的命令。

该命令功能对变量进行每次加1,并用echo命令显示在屏幕上。

3

ping 19216811 -n 1 -w 1000

ping命令主要用于测试IP的连通性,-n 表示每一次ping过程发送的数据包数,-w表示每个数据包发出后等待回执的时间阀值。

该命令表示对19216811的电脑进行ping测试,发1个包,回执时间超过1秒视为超时不通。

如果IP地址能ping通,程序能够从应答数据包中获取该IP设备的mac地址,并存放到内存arp地址表中。

4

arp -a 192168118

arp命令主要用于显示或修改arp地址表。-a表示显示某个或全部arp地址表。

该命令表示显示IP为192168118设备的mac。

5

echo ssss|findstr dynamic

findstr查找字符串命令,一般用于从文件中查找含个某个字符的行,这里用到“|”(管道符),即把上一个命令的输出作为下一个命令的输入。

该命令表示在命令“echo ssss”输出结果中查找含有“dynamic”字符串的行。

END

二、具体方法

方法1:

set ip=1921681 && for /l %j in (1,1,254) do (ping %ip%%j -n 1 -w 1000 ) && arp -a>1txt

该方法适合在小IP地址范围内获取mac地址,因为如果范围过大,ping命令执行的时间会比较长,会造成早前arp地址表中获取的mac超时失效,从而无法获取局域网内完整的mac地址表。如下图,分别是上属命令运行过程中的arp表内容,前、后表对比,很容易看出,部分mac地址已经丢失,而且还存在为全0的非真MAC地址。

方法2:

set

ip=1921681 && for /l %j in (1,1,254) do ( ping %ip%%j -n 1

-w 1000 |arp -a %ip%%j |findstr dynamic >>2txt )

相对方法1,该方法应该是比较完美的。在ping执行后,即时将获取的真实mac地址保存了下来。

以上就是关于如何利用VBS通过局域网IP,获取计算机名全部的内容,包括:如何利用VBS通过局域网IP,获取计算机名、如何获取局域网某台计算机的IP地址、如何获取局域网内所有电脑的MAC地址等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9783474.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存