本文共 634 字,大约阅读时间需要 2 分钟。
公司接入层交换机划分了很多Vlan,每个Vlan对应一个IP子网,各个房间所属Vlan号非常混乱。有时候,电脑IP丢失或新配电脑时,不能知道到底该配置那个IP网段。解决办法就是,登录交换机,查看电脑MAC出现在哪一个交换机Vlan中。问题是,这需要额外的能正常上网的计算机来登录交换机。是否有其他方法能知道一个给定端口的IP段呢?方法是有的,那就是直接使用链路层的以太网来捕获ARP包,并从中提取活跃IP。只要该口所在的Vlan还有其他活动机器,ARP包总是存在的,所以这种方法可行。
可惜在网上没找到合适的小工具来完成,安装wireshark倒是可以,不过实在是大财小用了。于是决定自己写一个小工具出来。使用最经典的winpcap库来做基本支撑,wireshark也是基于这个库的。考虑界面简单,直接使用纯Win32API来完成UI程序设计。
基本功能是:
(1)捕获ARP包,分析出IP地址进而显示出来;
(2)分析ARP包中IP出现频率,猜测本子网的网关IP;
(3)冒充其他主机发送IP,造成指定主机提示IP冲突;
(4)发送伪造网关ARP,这也是典型的ARP攻击了
时间仓促,写的太随意,代码写的很乱不美,所以源代码就不拿出来献丑了,有需要的朋友可以留言给我,单独发送。编译后的可执行程序放到了CSDN资源里,有需要的读者自行下载。
需要安装WinpCap和VC2013运行库,这两个库和程序本身一起打包了。
下载地址: