ARP详细了解
 

了解arp

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。 在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。所以需要ARP协议要做的事, 根据目的主机的IP地址,获得其MAC地址。

ARP 映射表,每台主机都要维护IP 地址到MAC 地址的转换表。 ARP 映射表中存放着最近用到的一系列与本主机通信的其他主机的IP 地址和MAC 地址的映射。在主机启动时,ARP 映射表为空;当一条动态ARP 映射表项规定时间没有使用时,主机将其从ARP 映射表中删除掉,以便节省内存空间和ARP 映射表的查找时间。

ARP工作过程

主机A的IP地址为192。168。1。1,MAC地址为0A-11-22-33-44-01;

主机B的IP地址为192。168。1。2,MAC地址为0A-11-22-33-44-02;

当主机A要与主机B通信时,地址解析协议可以将主机B的IP地址(192。168。1。2)解析成主机B的MAC地址,以下为工作流程:

第1步:根据主机A上的路由表内容,IP确定用于访问主机B的转发IP地址是192。168。1。2。然后A主机在自己的本地ARP缓存中检查主机B的匹配MAC地址。

第2步:如果主机A在ARP缓存中没有找到映射,它将询问192。168。1。2的硬件地址,从而将ARP请求帧(Request)广播到本地网络上的所有主机。源主机A的IP地址和MAC地址都包括在ARP请求中。本地网络上的每台主机都接收到ARP请求并且检查是否与自己的IP地址匹配。如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求。

第3步:主机B确定ARP请求中的IP地址与自己的IP地址匹配,则将主机A的IP地址和MAC地址映射添加到本地ARP缓存中。

第4步:主机B将包含其MAC地址的ARP回复消息直接发送回主机A。

第5步:当主机A收到从主机B发来的ARP回复消息时,会用主机B的IP和MAC地址映射更新ARP缓存。本机缓存是有生存期的,生存期结束后,将再次重复上面的过程。主机B的MAC地址一旦确定,主机A就能向主机B发送IP通信了。

具体的ARP详细信息可以参考以下链接

http://baike.baidu.com/link?url=iU6rORswoml-AQhOQKr6bvG5VaeQ7RSN1VccT4lFiJM2FDiieZtlk5cltQ-CoNeTktmI5aTjPaQdivjWvhC1AsHTG5vvoCKA11gGYhpvKpu

arp攻击

一般情况,arp攻击得到主要目的是使网络无法正常通信,主要包括一下两种行为。

1、攻击主机制造假的arp应答,并发送给局域网中除被攻击之外的所有主机。arp应答中包含被攻击主机的IP地址和虚假的MAC地址。

2、攻击主机制造假的arp应答,并发送给被攻击的主机,arp应答中包含除被攻击攻击主机之外的所有主机的IP地址和虚假的MAC地址。

3、只要执行上诉arp攻击行为中的一种就可以实现被攻击主机和其他主机无法通信。

arp欺骗

1、一般情况下,ARP欺骗并不是使网络无法正常通信,而是通过冒充网关或其他主机使得到达网关或主机的流量通过攻击进行转发。通过转发流量可以对流量进行控制和查看,从而控制流量或得到机密信息。

2、ARP欺骗发送arp应答给局域网中其他的主机,其中包含网关的IP地址和进行ARP欺骗的主机MAC地址;并且也发送了ARP应答给网关,其中包含局域网中所有主机的IP地址和进行arp欺骗的主机MAC地址。当局域网中主机和网关收到ARP应答跟新ARP表后,主机和网关之间的流量就需要通过攻击主机进行转发。冒充主机的过程和冒充网关相同。

ARP欺骗实例

访问网站时,提示下载。查看页面源代码时,发现页面被植入了iframe,如下:

碰到这个问题时,处理步骤如下:

1、检查网站程序是否被篡改,结果为否

2、检查arp表,网关的mac地址是否与实际的一致。

由于网站是在客户机房,让客户去检查网关的mac地址,过一阵子(应该是机房网管发现了冒充网关的服务器,并干掉它了),arp -a检查网关的mac地址时,发现与之前查的不一样,此时网站访问也正常。

处理ARP故障的方式有

1、处理ARP欺骗攻击最一般的方法就是IP-MAC绑定,可以在客户端主机和网关路由器上双向绑定IP-MAC来避免ARP欺骗导致无法上网。

2、使用ARP防火墙,自动抵御ARP欺骗和ARP攻击。

ARP欺骗源头追踪实例

http://www.2cto.com/Article/201405/299145.html