使用Nbtstat批量获取MAC地址.docVIP

  • 56
  • 0
  • 约1.76千字
  • 约 2页
  • 2019-09-08 发布于江西
  • 举报
使用Nbtstat批量获取MAC地址 在一般企业中,为了便于对局域网内的计算机进行了有效管理,我们一般使用静态IP地址分配给每一台计算机,由于IP地址通常可以自行更改,单靠IP地址来检查网络并不可靠,不过我们知道网卡的硬件(MAC)地址是唯一的,所以我们可以统计IP地址与PC机的MAC地址的对应关系,以便在出现问题时提供依据。 使用Nbtstat命令的优越性 我们推荐Nbtstat命令来获取局域网中电脑的MAC地址以及其他信息。虽然我们也可以使用ping和arp命令来实现,但通过Nbtstat命令来实现具有更好的效果,比如在客户机有防火墙的情况下(现在通常客户机上都安装有防火墙软件),一般ping命令会失效,不能作为检测机器是否有效IP地址是否存在的条件,所以统计信息会很不全面,但用Nbtstat命令可以通过。 另外通过arp命令得到的远程PC上信息会有限,通常只能返回IP地址和物理地址的对应信息,而使用Nbtstat除了可以实现这些功能,同时也能返回远程计算机名称、组名等一些重要的参考信息,为网络故障的分析和解决提供更多帮助。 制作批处理文件批量获取信息 Nbtstat命令一般是针对一台电脑进行信息的获取。为了更加快捷的获取信息,我们可以通过制作批处理文件的方式实现物理地址批量获取的目的。 要制作的批处理文件有两个:(1)allMAC.bat和(2)nbtpc.bat。我们可以打开记事本输入以下命令(命令解析括号中的内容不要输入,如果一定要输入就在括号前面加注析命令rem)。 allMAC.bat for/1%i in(1,1,254)do nbtpc 192.168.1.%%1(命令解析: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,就表示循环是逐个进行,参数/1是表示括号中的参数是按(循环的初始数值、循环的增加量、循环的终结数值)形式进行循环的,如果没有这个参数的话,循环方式就只能按数字个数来定,比如上边的(1,2,5),循环只有三次,do nbtpc 后面的IP地址参数分别为192.168.1.1;192.168.1.2和192.168.1.5,%%i是用于存放每次循环的数值的变量。 nbtpc.bat @echo off (命令解析:表示不在屏幕回显命令执行过程。) Call nbtstat-a%1 |find “MAC Address”nul(命令解析:这里涉及有两个主要命令Nbtstat-a%1,%1是用于传递从allmac.bat来的IP地址参数给Nbtstat命令执行后有MAC Adress信息,通常情况下,如果没有找到主机是没有这个英文反馈信息出现在屏幕上的,而只有Host not Found.信息出现,nul表示find命令发现“MAC Address”。) If %ERRORLEVEL%= =0 goto nbt (命令解析:当执行上一条命令而满足要求find“MAC Address”nul时,表示没有出现错误的情况下,程序转向到本批处理文件中标记符为:nbt过程去执行。) Goto end (命令解析:程序转到结束标记符end 的地方,表示程序终结。) :nbt(命令解析::nbt程序处理过程的标记符。) @echo Current ipaddress is:%1allpc.txt(命令解析:当发现相应IP地址的主机存在时,将“当前IP地址”写入allpc.txt文本文件中,如果原来有这个文本文件的话,就在原来的记录后面追加,如果原来没有这个文件就新建立一个。) Nbtstat-a%1allpc.txt(命令解析:接着上面写入的信息,将命令Nbtstat执行的回馈信息写入allpc.txt文件中。) :end(命令解析:程序结束位置标记符号。) 注意两个文件要在同一个目录中,然后运行allMAC.BAT文件,程序运行完毕自动生成名称为allpc.txt的报告文件。注:文中黑体字部分为输入代码。

文档评论(0)

1亿VIP精品文档

相关文档