ARP寻址理论
topology
图中PC1访问PC2
Ping 1.1.1.2 
1、应用层封装后向下到传输层分段
2、传输层加上头部协议分段后向下到网络层
3、网络层封装IP协议后向下到数据链路层(源IP与目标IP已知,源PC1、目标在我们发出Ping 后可得到)
4、数据链路层封装以太网帧,以太网帧需封装MAC地址,源MAC地址为PC1、目标MAC地址未知,此时如果没有解决办法,数据在二层无法封装,网络也就不通。显然这不是我的想要的目的。此时ARP出来了,ARP的作用就是找出未知的MAC地址。
5、数据在二层封装的过程卡壳了,这时ARP开始出现,当然二层ARP封装的时候也是要封装IP地址,不过源与目标都是已知的。MAC地址进行封装的时候目标未知,但是ARP在封装的时候把目标封装为全F。即广播地址;然后ARP开始在同一个子网内(同一个VLAN中)开始广播了。
6、PC2收到ARP广播后,把数据进行解封装,到二层的时候发现目标地址是全F,保留着不丢弃;然后再进行解封装,到三层的时候发现了目标IP地址是PC2的,此时如果有别的PC,这个ARP广播包就会在其余PC上丢弃,但是PC2收到后,看是来找自己的MAC的,显然他不会丢弃,PC2会发送一个ARP回应包。源IP为PC2,目标IP为PC1;源MAC为PC2,目标MAC为PC1的MAC(PC发往PC2的时候带的有自己的MAC地址)。
7、当PC1收到了ARP回应包后,继续上面第四步进行MAC地址的封装,因为这时已经找到PC2的MAC地址。

此时一个ARP请求就完成了。写的不是很详细,还请看到的您能提出一点意见。