通过ping可以得到对方的mac 原理是arp缓存
arp欺骗就是把自己的mac地址伪装成网关的mac来欺骗
ARP原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到BIP地址对应的MAC地址后就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机AIP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有BMAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。ARP表:为了回忆通信的速度,最近常用的MAC地址与IP的转换不用依靠交换机来进行,而是在本机上建立一个用来记录常用主机IPMAC映射表,即ARP表。

欺骗原理:
  假设一个网络环境中,网内有三台主机,分别为主机A、B、C。主机详细信息如下描述:
  A的地址为:IP:192.168.10.1 MAC: AA-AA-AA-AA-AA-AA
  B的地址为:IP:192.168.10.2 MAC: BB-BB-BB-BB-BB-BB
  C的地址为:IP:192.168.10.3 MAC: CC-CC-CC-CC-CC-CC
  正常情况下A和C之间进行通讯,但是此时B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.10.3(C的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(C的MAC地址本来应该是CC-CC-CC-CC-CC-CC,这里被伪造了)。当A接收到B伪造的ARP应答,就会更新本地的ARP缓存(A被欺骗了),这时B就伪装成C了。同时,B同样向C发送一个ARP应答,应答包中发送方IP地址四192.168.10.1(A的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(A的MAC地址本来应该是AA-AA-AA-AA-AA-AA),当C收到B伪造的ARP应答,也会更新本地ARP缓存(C也被欺骗了),这时B就伪装成了A。这样主机A和C都被主机B欺骗,A和C之间通讯的数据都经过了B。主机B完全可以知道他们之间说的什么:)。这就是典型的ARP欺骗过程
工具:
1:anti ARP***测试工具(内测版)081:发现缓存表全变了
2:cain获取内网的密码 (arp欺骗,dns欺骗)
防范:建立个批处理
@echo off
arp -d
arp -s 192.168.1.1  00-1d-0f-06-dc
注意:ARP只能在同一网段使用,它是工作在网络层