码迷,mamicode.com
首页 > 其他好文 > 详细

ARP协议的总结

时间:2015-08-02 18:29:20      阅读:348      评论:0      收藏:0      [点我收藏+]

标签:arp rarp iarp 代理arp cisco

一,ARP概述

    ARP(Address Resolution Protocol,地址解析协议)用于实现IP地址到MAC地址的映射,实现数据的封装过程,其在以太网上,属于网络层。

二,ARP工作原理

    ARP工作原理: 由IP----->MAC地址

    主机发送信息时包含目的IP地址的ARP请求广播到网络上的所有主机,相应的主机接收到广播包,则ARP单播回复信息,接收到返回信息,以此来确定目标的MAC地址,并将该IP地址和MAC地址存入本机的ARP高速缓存中,在下次请求时,直接查询ARP缓存即可。

   注:ARP请求是以广播形式发送,ARP回复是以单播形式发送。

三,ARP欺骗

     1.简介

     由于网络上的主机可以自主发送ARP应答信息,其他的主机接收到该报文的时候不会检测ARP数据包的真实性而会将其记录进本机的ARP缓存,故攻击者可以发送一个伪ARP应答报文,使主机发送的信息无法到达预期主机,从而造成了一个ARP欺骗攻击

     2.工作原理

      ①hacker告诉PC1,网关的iP----hacker‘s MAC

      ②hacker告诉网关,A的IP---->hacker‘s MAC

      ③A和网关的流量要通信都要经过hacker的主机

      ④hacker就可以通过wireshack抓包,分析,进行攻击和窃取资料 

         (常见的攻击软件:P2P终结者,网络执法官.....)

四,ARP分组格式

技术分享

字段分析:

  1.以太网目的地址

      6字节、全1表示广播地址

  2.以太网源地址

      6字节

  3.帧类型

     2字节,表示后面数据的类型;对于ARP请求或应答:值为0x0806

     而RARP是0x0835

  4.硬件类型

    2字节,表示硬件地址的类型,值为1表示以太网地址

  5.协议类型

    2字节,表示要映射的协议地址类型

    0x0800:表示IP地址

    值与IP数据报的以太网数据帧中的类型字段的值相同

  6.硬件地址长度

    1字节,以太网IP地址的ARP请求或应答,值为6

  7.协议地址长度

     1字节,以太网IP地址的ARP请求或应答,值为4

  8.操作字段

     2字节,表示操作类型

      ARP请求:1

      ARP应答:2

      RARP请求:3

      RARP应答:4

  9.发送端的硬件地址(6bytes)

  10.发送端的协议地址(4bytes)

  11.目的端的硬件地址(6bytes)

  12.目的端的协议地址(4bytes)

五,代理ARP

     1.代理ARP(又叫ARP出租)是ARP协议的一种变种,对于没有配置缺省网关的计算机要和其他网络中的计算机实现通信,网关收到源计算机的 ARP 请求会使用自己的 MAC 地址与目标计算机的 IP地址对源计算机进行应答。

     2.代理ARP就是将一个主机作为对另一个主机ARP进行应答。

     3.问题1:什么是ARP代理?

      答:路由器收到ARP Request时,若发现查询的目的IP地址在不同子网,路由器会扮演代理的ARP的角色,代为回答,告诉查询者它所要做的MAC地址 (用的是之间接口的MAC地址)

      问题2:为什么要有ARP代理?

      答:路由器的一个重要功能是把局域网广播包限制在该网内,不让扩散,否则会造成网络风暴。ARP Request是个广播包,它询问的对象若在同一个局域网内,就会回答。但如果查询对象不在同一个局域网,那怎么办呢?为了解决这个问题,路由器就提供一个服务:代理ARP.

      问题3:还有什么方法来解决跨局域网的地址查询?

      答:若主机配置了默认网关,在查询MAC地址的对象位于局域网之外的时候,可以把查询任务交给默认网关。

      问题4:什么情况下用ARP代理?

      答:网络中主机、路由器都有ARP cache. 主机通常配置了默认网关,它们会用默认网关查询局域网外的MAC地址。路由器在需要查询远程网段里的MAC地址时,与其相连接的路由器,在收到ARP Request时就会扮演代理ARP的角色。

六,免费ARP

    1.免费ARP报文是一种特殊的ARP报文,该报文携带的发送端IP地址和目标IP地址都是本机IP地址,源MAC地址是本机MAC地址,目的MAC地址是广播地址

   2.免费ARP的作用:

       ①通告广播的作用,告诉整个广播域的主机,目前这个IP所对应的MAC地址是什么

       ②查看广播域中别的主机是否有使用自己的IP地址,如果使用了,则会显示IP地址冲突

       ③某个子网内运行热备份路由协议(HSRP)的路由器如果从其他路由器变成了主路由器; 它就会发送一个无故ARP更新该子网上的ARP缓存-----(设备改变了硬件地址,通过发送免费ARP报文通知其它设备更新ARP表项。)

七,逆向ARP ---IARP

     1.简介

       IARP逆向地址解析协议 (Inverse Address Resolution Protocol) 。Inverse ARP用于帧中继网络中IP地址和虚电路号的映射关系的动态维护主要用于帧中继网络。

       IARP是一种在网络中建立动态路由的方法,让接入服务器能够知道与虚电路相关联的设备的网络地址。

       IARP用于在帧中继网络中自动建立路由器IP地址与帧中继DLCI的映射关系。

     2.工作原理

      ①A发送广播消息请求其对应目的MAC地址的IP地址是多少?同时在该广播消息中还附带自己的IP地址。

      ②B接受到该广播包后,修改该请求数据包,从帧中继帧头中提取硬件地址放入请求包的源硬件地址域中,即可形成A的地址映射。

      ③然后形成单播响应,响应包中包含B的IP地址以及A的IP地址和硬件地址。

      ④A收到响应,修改响应数据包,从帧头中取出硬件地址放入响应数据包的源硬件地址域中,然后将其添加到地址映射表中。

      ⑤设备A和B就可以正常进行数据传送了。

技术分享

八,反向ARP

     1.简介

       反向地址转换协议(RARP:Reverse Address Resolution Protocol),允许局域网中的物理机器从网关服务器(路由器)的 ARP 表或者缓存上请求其 IP 地址。

    2.工作原理

      由已知的MAC地址---->IP地址

      ①网络上的每台设备都会有一个独一无二的硬件地址,通常是由设备厂商分配的MAC地址。PC1从网卡上读取MAC地址,然后在网络上发送一个RARP请求的广播数据包,请求RARP服务器回复该PC的IP地址。

      ②RARP服务器收到了RARP请求数据包,为其分配IP地址,并将RARP回应发送给PC1

      ③PC1收到RARP回应后,就使用得到的IP地址进行通讯。









本文出自 “9305074” 博客,请务必保留此出处http://9315074.blog.51cto.com/9305074/1680972

ARP协议的总结

标签:arp rarp iarp 代理arp cisco

原文地址:http://9315074.blog.51cto.com/9305074/1680972

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!