使用Nbtstat批量获取MAC地址_ 坣£堂

时间:2008-06-10 15:05:09  类别:mac地址  作者:橘子blog

使用Nbtstat批量获取MAC地址
2007年11月19日 星期一 16:35
在一般企业中,为了便于对局域网内的计算机进行有效管理,我们一般使用静态IP地址分配给每一台计算机,由于IP地址通常可能自选更改,单靠IP地址来检查网络并不可靠,不过我们知道网卡的硬件(MAC)地址是唯一的,所以我们可以统计IP地址与MAC地址的对应关系,以便在出现问题时提供依据本文给出两种方法
一使用工具
建议使用MAC扫描器(下载地址http://www.pc560.com.cn/DT_downsoft/getmac.rar),该软件可以远程批量获取MAC地址它运行于局域网或Internet内的一台机器上,即可监控整个网络的连接情况,实时检测各用户的IPMAC主机名用户名等并记录以供查询并且可以跨网段扫描,能和数据库中的IP和MAC地址进行比较,只要发现某用户修改了IP或MAC地址,即可报警
此外,你也可以使用Windows优化大师批量获取MAC,方法是:点击该软件的系统性能优化系统安全优化附加工具集群Ping,即可成批扫出MAC地址,并保存到文件中
二使用Windows命令
我们推荐使用Nbtstat命令来获取局域网中电脑的MAC地址以及其他信息虽然我们也可以使用ping和arp命令来实现,但通过Nbtstat命令来实现具有更好的效果,比如在客户机有防火墙的情况下(现在通常客户机上都安装有防火墙软件),一般ping命令会失效,不能作为检测机器是否IP地址是否存在的条件,所以统计信息会很不全面,但用Nbtstat命令可以通过
另外通过arp命令得到的远程PC上信息会有限,通常只能返回IP地址和物理地址的对应作息,而使用Nbtstat除了可以实现这些功能,同时也能返回远程计算机名称组织名等一些重要的参考信息,为网络故障的分析和解决提供更多帮助
制作批处理文件批量获取信息
Nbtstat命令一般是针对一台电脑进行信息的获取为了更加快捷的获取信息,我们可以通过制作批处理文件的方式实现物理地址批量猎取的目的
要制作的批处理文件有两个:(1)allMAC.bat和(2)nbtpc.bat我们可以打开记事本输入以下命令(命令解析括号中的内容不要输入,如果一定要输入就在括号前面加注析命令rem).
(1) allMAC.bat
for /l %%I in (1.1.254) do nbtpc 192.168.1.%%I (命令解析:for命令是循环执行do nbtpc 192.168.1.%%I,in后面的(1.1.254)括号内三个参数分别表示变量I循环的初始数值,每次循环的增加量循环的终结数值比如括号中有(1.2.5)三个参数,就表示循环是从192.168.1.1开始,到192.168.1.5结束,由于增量为2,循环的第二个IP地址为192.168.1.3,第三个IP地址为192.168.1.5以此类推)
如果括号中第二个参数为1,就表示循环是逐个进行,参数/I是表示括号中的参数是按(循环的初始数值循环的增加量循环的终结数值)形式进行循环的,如果没有这个参数的话,循环方式就只能按数字个数来定,比如上边的(1.2.5),循环只有三次,do nbtpc后面的IP地址参数分别为192.168.1.1;192.168.1.2和192.168.1.5,%%I是用于存放每次循环的数值的变量
(2)nbtpc.bat
@echo off(命令解析:表示不在屏幕回显命令执行过程)
call nbtstat a %1 |find MAC Address>nul(命令解析:这时涉及有两个主要命令Nbtstat命令使用Find MAC Address,表示是否在Nbtstat 命令执行后有MAC Address信息,通常情况下,如果没有找到主机是没有这个英文反馈信息出现在屏幕上的,而只有Host not found.信息出现,>nul表示find命令发现MAC Address)
if %ERRORLEVEL%==0 goto nbt (命令解析:当执行上一条命令而满足条件find MAC Address>nul,表示没有出现错误的情况下,程序转向到本批处理文件中标记符为:nbt的过程去执行)
goto end (命令解析:程序转到结束标记符end的地方,表示程序终结)
:nbt(命令解析:nbt程序处理过程的标记符)
@ echo Currednt ipaddress is: %1 >>allpc.txt(命令解析:当发现相应IP地址的主机存在时,将当前IP地址写入allpc.txt文本文件中,如果原来有这个文本的话,就在原来的记录后面追加,如果原来没有这个文件就新建立一个)
ntstat a %1 >>allpc.txt(命令解析:接前着上面写入的信息,将命令Nbtstat执行的回馈信息写入allpc.txt文件中)
:end (命令解析:程序结束位置标记符号)
注意两个文件要在同一个目录中,然后运行allMAC.BAT文件,程序运行完毕自动生成名称为allpc.txt的报告文件
引文来源 使用Nbtstat批量获取MAC地址_坣堂

----------------------------
一键转贴,快速捕捉生活精彩,赢每周好礼!查看活动首页>>


特别推荐

广而告之