zoukankan      html  css  js  c++  java
  • 手动扫描局域网MAC地址(转)

    于是,我先上网想搜个MAC地址扫描器,把局域网中机器的MAC地址全扫出来,找了半天,不是试用版的,就是要注册,要不就是个炸弹。唉,现在连个破MAC扫描工具都要收费了,像我吃惯了网络资源免费午餐的人是舍不得掏腰包的,怎么办呢?对着屏幕发呆,突然灵光一闪,想到了一个命令:ARP,对,利用ARP缓存信息,就可以得到我想要的局域网机器的MAC地址了。呵呵,理了一下思路,动手操作,非常OK,哈哈,就连一些试用版、破解版的MAC扫描工具扫不出的有些机器的信息ARP里都有,太棒了。好了,不多说废话了,现在就赶快把我的思路和操作告诉大家吧,与大家分享,也希望大家多多留言,多提些宝贵意见啊~~~


           思路:用Ping 命令,先Ping 一下局域网中的机器IP,因为我想在本地机器的ARP缓存信息里得到想要的MAC地址信息。只有Ping 过局域网中在线机器,本地机器的ARP缓存就会记录下Ping 过的机器的IP与MAC地址信息,也就是说,本地机器发出个数据包,目标机器会有一个应答,这个应答里含有IP地址和MAC地址的信息,这些个信息会晢存在本地机器的ARP缓存里。在本地机器上,用ARP -a就可全部显示出来了。(防火墙或者过滤包的方法也无法禁止ARP的查看,远程计算机不返回Ping成功的消息但会告诉本地计算机该IP地址对应的MAC地址。有些MAC扫描工具因对方防火墙的原因而无法得到对方的IP和Mac信息。)


            操作:有了这些思路,就差不多了。可我总不能一个一个的去Ping 啊,于是我就写个批处理,批量检测局域网中在线的机器。例如要查看192.168.0.*这个网段中有哪些地址在线。在桌面上点鼠标右键新建一个文本文件后输入如下代码:


      FOR /L %%i IN (0,1,255) Do ping 192.168.0.%%i -n 1
      arp -a -> MAC.txt


            将该文件保存为.bat文件,双击这个批处理文件将自动搜索网段中的所有IP,并且将发现出的ARP信息都保存到MAC.txt文件中(arp –a ->MAC.txt 这行命令表示将ARP显示的结果保存到 MAC.txt的文本文件中,如果只是想Ping某一部分IP而不是所有该网段中的IP,可以将上面命令行中 IN(0,1,255) 中1,255是<指IP的范围>改写。注意:批处理没有程序报错功能,所以,IP的范围应严格在1,255之间,防止机器执行批处理时发生意外^_^)。比如,我只想扫描192.168.0.10至192.168.0.200之间的IP与MAC信息,可以这样写:


            FOR /L %%i IN (0,10,200) Do ping 192.168.0.%%i -n 1
      arp -a -> MAC.txt

  • 相关阅读:
    Python3.7.1学习(三)求两个list的差集、并集与交集
    Python3.7.1学习(二)使用schedule模块定时执行任务
    Python3.7.1学习(一):redis的连接和简单使用
    requests保存图片
    requests模拟登陆的三种方式
    requests模块使用代理
    requests模块发送带headers的Get请求和带参数的请求
    python3.7.1安装Scrapy爬虫框架
    python-生成器
    python-迭代器
  • 原文地址:https://www.cnblogs.com/cuihongyu3503319/p/2152513.html
Copyright © 2011-2022 走看看