ARP协议学习(二)详解

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

ARP协议技术讲解一、ARP协议介绍ARP(AddressResolutionProtocol,地址解析协议)是将IP地址解析为以太网MAC地址(或称物理地址)的协议。在局域网中,当主机或其它网络设备有数据要发送给另一个主机或设备时,它必须知道对方的网络层地址(即IP地址)。但是仅仅有IP地址是不够的,因为IP数据报文必须封装成帧才能通过物理网络发送,因此发送站还必须有接收站的物理地址,所以需要一个从IP地址到物理地址的映射。APR就是实现这个功能的协议。二、ARP的报文结构以太网地址以太网源地址帧格式硬件类型协议类型硬件地址长度协议地址长度OP发送端以太网地址发送端IP地址目的以太网地址目的IP地址662221126464以太网首部28字节的ARP请求和应答其中,帧格式的值表示对于的协议类型:X0806表示ARP请求和应答等等;硬件类型表示硬件地址类型:1表示以太网地址;协议类型表示映射的协议地址类型:0X0800表示IP地址;OP字段指出了4种操作类型:1表示ARP请求,2表示ARP应答,3表示RARP请求,4表示RARP应答。三、ARP地址解析过程假设主机A和B在同一个网段,主机A要向主机B发送信息。当主机A和主机B不在同一网段时,A要向主机B发送信息。主机A就会先向网关发出ARP请求,ARP请求报文中的目标IP地址为网关的IP地址。当主机A从收到的响应报文中获得网关的MAC地址后,将报文封装并发给网关。如果网关没有主机B的ARP表项,网关会广播ARP请求,目标IP地址为主机B的IP地址,当网关从收到的响应报文中获得主机B的MAC地址后,就可以将报文发给主机B;如果网关已经有主机B的ARP表项,网关直接把报文发给主机B。四、ARP表设备通过ARP解析到目的MAC地址后,将会在自己的ARP表中增加IP地址到MAC地址的映射表项,以用于后续到同一目的地报文的转发。ARP表项分为动态ARP表项和静态ARP表项:①动态ARP表动态ARP表项由ARP协议通过ARP报文自动生成和维护,可以被老化(一般为20分钟),可以被新的ARP报文更新,可以被静态ARP表项覆盖。当到达老化时间、接口down时会删除相应的动态ARP表项。②静态ARP表静态ARP表项通过手工配置和维护,不会被老化,不会被动态ARP表项覆盖。配置静态ARP表项可以增加通信的安全性。静态ARP表项可以限制和指定IP地址的设备通信时只使用指定的MAC地址,此时攻击报文无法修改此表项的IP地址和MAC地址的映射关系,从而保护了本设备和指定设备间的正常通信。五、ARP代理如果ARP请求是从一个网络的主机发往同一网段却不在同一物理网络上的另一台主机,那么连接它们的具有代理ARP功能的设备就可以回答该请求,这个过程称作ARP代理(ProxyARP)或委托ARP。ARP代理功能屏蔽了分离的物理网络这一事实,使用户使用起来,好像在同一个物理网络上。①普通代理ARP处于同一网段内的主机,当连接到设备的不同三层接口时,可以利用设备的代理ARP功能,通过三层转发实现互通。通过在Router上启用代理ARP功能,可以解决B不能响应A的ARP请求的问题。启用代理ARP后,Router可以应答HostA的ARP请求。同时,Router相当于HostB的代理,把从其他主机发送过来的报文转发给它。②本地代理ARPHostA和HostB属于同一个VLAN2,但它们分别连接到被二层隔离的端口Ethernet1/3和Ethernet1/1上,通过在Router上启用本地代理ARP功能,可以实现HostA和HostB的三层互通。代理ARP的优点是,它可以只被应用在一个设备上(此时该设备的作用相当于网关),不会影响到网络中其他设备的路由表。代理ARP功能可以在IP主机没有配置缺省网关或者IP主机没有任何路由能力的情况下使用。六、免费ARP免费ARP报文是一种特殊的ARP报文,该报文中携带的发送端IP地址和目标IP地址都是本机IP地址,报文源MAC地址是本机MAC地址,报文的目的MAC地址是广播地址。为什么要发送这种特殊的报文呢?①确定其它设备的IP地址是否与本机的IP地址冲突。当其它设备收到免费ARP报文后,如果发现报文中的IP地址和自己的IP地址相同,则给发送免费ARP报文的设备返回一个ARP应答,告知该设备IP地址冲突。②设备改变了硬件地址,通过发送免费ARP报文通知其它设备更新ARP表项。七、ARP命令arp[-a[InetAddr][-NIfaceAddr]][-g[InetAddr][-NIfaceAddr]][-dInetAddr[IfaceAddr]][-sInetAddrEtherAddr[IfaceAddr]]命令参数解释:[-a[InetAddr][-NIfaceAddr]]显示所有接口的ARP缓存表,如需查看特点接口使用-NIfaceAddr。[-g[InetAddr][-NIfaceAddr]]同-a。[-dInetAddr[IfaceAddr]]删除由InetAddr指定的ARP缓存表。如需删除全部ARP缓存表,使用通配符“*”代替InetAddr。[-sInetAddrEtherAddr[IfaceAddr]]添加一个静态ARP表项,把IP地址InetAddr解析为物理地址EtherAddr。IfaceAddr指定了接口的IP地址。命令举例:(1)如果想要显示所有的ARP缓存表内容:arp-a(2)显示IP地址为10.0.0.1的接口的ARP缓存表:arp-a-N10.0.0.1(N必须大写)(3)如果想添加一个静态的ARP表项,把IP地址10.0.0.1解析为物理地址AA:AA:AA:AA:AA:AA,则输入:arp-s10.0.0.1AA-AA-AA-AA-AA-AA(4)删除所有ARP缓存表arp-d*课后问题解答:1、PC端及网络设备端的ARP表有何作用?答:设备通过ARP协议解析到目的MAC地址后,将会在自己的ARP表中增加IP地址到MAC地址的映射表现,以用于后续到同一目的地报名的转发。2、ARP欺骗都有哪几种形式,原理是什么样的,如何进行防范?答:

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功