通过shell发送arp

时间:2009-02-02 13:08:19

标签: bash networking arp

在MacOS X或任何其他UNIX上,有没有办法通过shell(例如手动或shell脚本)发送自定义(和事件未被请求)arp响应? 另外,有没有办法让软件为当前子网中的所有IP请求MAC表示而不发送ping任何人?

3 个答案:

答案 0 :(得分:4)

是的。这种活动用于ARP欺骗和ARP中毒攻击,并且是针对ex进行的。按arpspoof。如果您想要发现主机的MAC,当您知道其IP并且它位于您的广播域(LAN)中时,请使用arping。 ARP是第2层协议,因此它的数据包不会被路由器转发,但它比ICMP echo(ping)更可靠。

一些工具:

  • arp - 标准程序(win / unix) 用于列出主机的IP-MAC地址 关联缓存,其中包含 已经学会了知识产权

  • arping - 发送ARP的unix程序 请求给定的IP并显示 收到的ARP响应中包含的MAC

  • arpspoof - 来自dsniff软件包的程序生成虚假ARP响应

答案 1 :(得分:1)

packet generator可能会解决问题。维基百科页面链接到一些实现,但我不知道它们是否适用于OSX。

答案 2 :(得分:1)

还有arp-scan使用libpcap;和arpdropper使用libnet

要被动(或主动)嗅探您的网络以获取ARP数据包并显示生成数据包的计算机的IP和MAC地址,您可以使用名为ArpSpyX的Mac OS X应用程序。

# arpdropper requires http://sourceforge.net/projects/libnet-dev/ to compile
# (libnet & arpdropper successfully compiled on Mac OS X 10.6.8)
curl -LO http://thebends.googlecode.com/svn/trunk/misc/arpdropper.c
gcc -Wall -Wextra -lnet -o arpdropper arpdropper.c

./arpdropper

# Usage: ./arpdropper -i <device> -s <source ip> -d <dest ip>
# For arp replies:
#   ./arpdropper -r -i <device> -s <source ip> -m <source mac> -d <dest ip>

# using nmap
# get a pre-compiled Mac OS X version of nmap at:
# http://nmap.org/download.html#macosx or
# http://www.berndsworld.com/downloads/
nmap -PR -oN nmap-arpscan.txt 192.168.0.0/16