ARP是一个工作在网络层的TCP/IP协议族的一种协议。 N8MlT \+r
'%]@a7w
当一台主机与另一台主机通信时,数据流首先由应用层发出,经过传输层时数据流被封装成数据段,主要是标志第个数据的序列号,以便另一主机接收时重新组合,然后传到网络层被封装成数据包,主要是装上IP包头,标示要到达目的的逻辑位置,数据包进而传到第二层,即数据链路层,在数据链路层要装的是目的主机的MAC,由于开始时要通信的主机并不知目的主机的MAC,所以它会发一个APR广播来得到目的主机的MAC,进而封装成数据帧,同时会把它作为一个映射入在ARP缓存表里,再通过物理层转成二进制的信号传出。 fEv<W
+ia(%[
所有的主机都会收到这个广播,但只有MAC相对应的主机才会返回一个单点广播回应,广播包中包含了MAC和相应的IP,由于主机对所有的响应都相信(太傻了),所以就可以伪造广播包回应,在真的包到达之前先到达,或是狂发,抢掉了通道。所以就会掉线,这是ARP在设计时的缺馅。