当前位置:文档之家› ARP协议

ARP协议

ARP

ARP作用

ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写, 是将IP地址解析为以太网MAC地址(或称物理地址)的协议。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。 ARP协议主要负责将局域网中的32位IP地址转换为对应的48位物理地址,即网卡的MAC地址,比如IP地址位192.168.0.1网卡MAC地址为

00-03-0F-FD-1D-2B.整个转换过程是一台主机先向目标主机发送包含有IP地址和MAC地址的数据包,通过MAC地址两个主机就可以实现数据传输了.

在局域网中,当主机或其它网络设备有数据要发送给另一个主机或设备时,它必须知道对方的网络层地址(即IP地址)。但是仅仅有IP地址是不够的,因为IP数据报文必须封装成帧才能通过物理网络发送,因此发送站还必须有接收站的物理地址,所以需要一个从IP地址到物理地址的映射。APR就是实现这个功能的协议。

ARP报文结构

ARP报文分为ARP请求和ARP应答报文,报文格式如图1-1所示。

图 1 ARP报文结构

硬件类型字段:指明了发送方想知道的硬件接口类型,以太网的值为1;

协议类型字段:指明了发送方提供的高层协议类型,IP为0800(16进制);

硬件地址长度和协议长度:指明了硬件地址和高层协议地址的长度,这样ARP

报文就可以在任意硬件和任意协议的网络中使用;

操作字段:用来表示这个报文的类型,ARP请求为1,ARP响应为2,RARP请求为3,RARP响应为4;

发送方的硬件地址(0-3字节):源主机硬件地址的前4个字节;

发送方的硬件地址(4-5字节):源主机硬件地址的后2个字节;

发送方IP(0-1字节):源主机硬件地址的前2个字节;

发送方IP(2-3字节):源主机硬件地址的后2个字节;

目的硬件地址(0-1字节):目的主机硬件地址的前2个字节;

目的硬件地址(2-5字节):目的主机硬件地址的后4个字节;

目的IP(0-3字节):目的主机的IP地址

ARP协议的工作原理:

在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如附表所示。附表我们以主机A(192.168.1.5)向主机B(192.168.1.1)发送数据为例。当发送数据时,主机A会在自己的ARP 缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是

“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.1.1的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.1.1的MAC地址是00-aa-00-62-c6-09”。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B

发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP 缓存表的长度,加快查询速度。 ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。 ARP攻击主要是存在于局域网网络中,局域网中若有一个人感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。

RARP的工作原理:

1. 发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并

且请求任何收到此请求的RARP服务器分配一个IP地址;

2. 本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址;

3. 如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用;

4. 如果不存在,RARP服务器对此不做任何的响应;

5. 源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。

6.如果在第1-3中被ARP病毒攻击,则服务器做出的反映就会被占用,源主机同样得不到RARP服务器的响应信息,此时并不是服务器没有响应而是服务器返回的源主机的IP被占用

ARP地址解析过程

假设主机A和B在同一个网段,主机A要向主机B发送信息。具体的地址解析过程如下:

(1)主机A首先查看自己的ARP表,确定其中是否包含有主机B对应的ARP表项。如果找到了对应的MAC地址,则主机A直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给主机B。

(2)如果主机A在ARP表中找不到对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为主机A的IP地址和MAC地址,目标IP地址和目标MAC地址为主机B 的IP地址和全0的MAC地址。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。

(3)主机B比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址和MAC地址存入自己的ARP表中。之后以单播方式发送ARP响应报文给主机A,其中包含了自己的MAC地址。

(4)主机A收到ARP响应报文后,将主机B的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送出去。

当主机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报文自动生成和维护,可以被老化,可以被新的ARP报文更新,可以被静态ARP表项覆盖。当到达老化时间、接口down时会删除相应的动态ARP表项。

静态ARP表项

静态ARP表项通过手工配置和维护,不会被老化,不会被动态ARP表项覆盖。

配置静态ARP表项可以增加通信的安全性。静态ARP表项可以限制和指定IP地址的设备通信时只使用指定的MAC地址,此时攻击报文无法修改此表项的IP地址和MAC地址的映射关系,从而保护了本设备和指定设备间的正常通信。

静态ARP表项分为短静态ARP表项和长静态ARP表项。

在配置长静态ARP表项时,除了配置IP地址和MAC地址项外,还必须配置该ARP表项所在VLAN和出接口。长静态ARP表项可以直接用于报文转发。

在配置短静态ARP表项时,只需要配置IP地址和MAC地址项。如果出接口是三层以太网接口,短静态ARP表项可以直接用于报文转发;如果出接口是VLAN虚接口,短静态ARP表项不能直接用于报文转发,当要发送IP数据包时,先发送ARP请求报文,如果收到的响应报文中的源IP地址和源MAC地址与所配置的IP地址和MAC地址相同,则将接收ARP响应报文的接口加入该静态ARP表项中,之后就可以用于IP数据包的转发。

如何查看ARP缓存表

在命令提示符下,输入“arp -a”就可以查看ARP缓存表中的内容了

用“arp -s”可以手动在ARP表中指定IP地址与MAC地址的对应,类型为static(静态),此项存在硬盘中,而不是缓存表,计算机重新启动后仍然存在,且遵循静态优于动态的原则,所以这个设置不对,可能导致无法上网.

用“arp -d”命令可以删除ARP表中所有的内容;

用“arp -d +空格+ <指定ip地址>”可以删除指定ip所在行的内容

免费ARP

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

设备通过对外发送免费ARP报文来实现以下功能:

确定其它设备的IP地址是否与本机的IP地址冲突。当其它设备收到免费ARP报文后,如果发现报文中的IP地址和自己的IP地址相同,则给发送免费ARP 报文的设备返回一个ARP应答,告知该设备IP地址冲突。

设备改变了硬件地址,通过发送免费ARP报文通知其它设备更新ARP表项。

免费ARP报文学习功能的作用

使能了免费ARP报文学习功能后,设备会根据收到的免费ARP报文中携带的信息(源IP地址、源MAC地址)对自身维护的ARP表进行修改。设备先判断ARP表中是否存在与此免费ARP报文源IP地址对应的ARP表项:

如果没有对应的ARP表项,设备会根据该免费ARP报文中携带的信息新建ARP表项;

如果存在对应的ARP表项,设备会根据该免费ARP报文中携带的信息更新对应的ARP表项。

关闭免费ARP报文学习功能后,设备不会根据收到的免费ARP报文来新建ARP

表项,但是会更新已存在的对应ARP表项。如果用户不希望通过免费ARP报文来新建ARP表项,可以关闭免费ARP报文学习功能,以节省ARP表项资源。

定时发送免费ARP功能的作用

定时发送免费ARP功能可以及时通知下行设备更新ARP表项或者MAC地址表项,主要应用场景如下:

(1)防止仿冒网关的ARP攻击

如果攻击者仿冒网关发送免费ARP报文,就可以欺骗同网段内的其它主机,使得被欺骗的主机访问网关的流量,被重定向到一个错误的MAC地址,导致其它主机用户无法正常访问网络。

为了尽量避免这种仿冒网关的ARP攻击,可以在网关的接口上使能定时发送免费ARP功能。使能该功能后,网关接口上将按照配置的时间间隔周期性发送接口主IP地址和手工配置的从IP地址的免费ARP报文。这样,每台主机都可以学习到正确的网关,从而正常访问网络。

(2)防止主机ARP表项老化

在实际环境中,当网络负载较大或接收端主机的CPU占用率较高时,可能存在ARP报文被丢弃或主机无法及时处理接收到的ARP报文等现象。这种情况下,接收端主机的动态ARP表项会因超时而被老化,在其重新学习到发送设备的ARP

表项之前,二者之间的流量就会发生中断。

为了解决上述问题,可以在网关的接口上使能定时发送免费ARP功能。使能该功能后,网关接口上将按照配置的时间间隔周期性发送接口主IP地址和手工配置的从IP地址的免费ARP报文。这样,接收端主机可以及时更新ARP映射表,从而防止了上述流量中断现象。

(3)防止VRRP虚拟IP地址冲突

当网络中存在VRRP备份组时,需要由VRRP备份组的Master路由器周期性的向网络内的主机发送免费ARP报文,使主机更新本地ARP地址表,确保网络中不会存在与VRRP虚拟IP地址相同的设备。

由于用户可以设定VRRP虚拟IP地址和MAC地址对应关系,因此有以下两种情况:

如果当前VRRP虚拟IP地址和虚拟MAC地址对应,则免费ARP报文中的源MAC

地址为VRRP虚拟路由器对应的虚拟MAC地址。

如果当前VRRP虚拟IP地址和实际MAC地址对应,则免费ARP报文中的源MAC

地址为VRRP备份组中Master路由器接口的MAC地址。

(4)及时更新模糊终结VLAN内设备的MAC地址表

三层以太网子接口上同时配置了模糊终结多个VLAN和VRRP备份组时,为了避免发送过多的VRRP通告报文,需要关闭VLAN终结支持广播/组播功能,并配置VRRP 控制VLAN。此时,为了及时更新各个模糊终结VLAN内设备的MAC地址表项,可以在三层以太网子接口上使能定时发送免费ARP功能。使能该功能后,三层以太网子接口将按照配置的时间间隔周期性发送VRRP虚拟IP地址、接口主IP地址和手工配置的从IP地址的免费ARP报文。这样,当VRRP主备状态切换时,各个模糊终结VLAN内设备上可以及时更新为正确的MAC地址表项。

代理ARP

如果ARP请求是从一个网络的主机发往同一网段却不在同一物理网络上的另一

台主机,那么连接它们的具有代理ARP功能的设备就可以回答该请求,这个过程称作代理ARP(Proxy ARP)。

代理ARP功能屏蔽了分离的物理网络这一事实,使用户使用起来,好像在同一个物理网络上。

代理ARP分为普通代理ARP和本地代理ARP,二者的应用场景有所区别:

普通代理ARP的应用环境为:想要互通的主机分别连接到设备的不同三层接口上,且这些主机不在同一个广播域中。

本地代理ARP的应用环境为:想要互通的主机连接到设备的同一个三层接口上,且这些主机不在同一个广播域中。

ARP快速应答

ARP快速应答作用

在无线产品组网中,AC与AP会建立隧道连接,Client通过AP连接到AC,通过AC,Client可以与网关建立连接。当Client发起ARP广播请求时,需要通过AC 向所有的AP复制ARP请求,这样会导致ARP广播占用隧道的大量资源,导致性能下降。为了减少ARP广播占用的隧道资源,可以在AC上启用ARP快速应答功能,减少ARP广播报文的影响。

ARP快速应答功能就是根据AC设备收集的用户信息(用户信息可以是DHCP Snooping表项,也可以是ARP Snooping表项),在指定的VLAN内,尽可能的对ARP请求进行应答,从而减少ARP广播报文。

ARP快速应答工作机制

ARP快速应答的工作机制如下:

(1)设备接收到ARP请求报文时,如果请求报文的目的IP地址是设备的VLAN虚接口的IP地址,则由ARP特性进行处理;

(2)如果ARP请求报文的目的IP地址不是VLAN虚接口的IP地址,则根据报文中的目的IP地址查找DHCP Snooping表项:

如果查找成功,但是查找到的表项的接口和收到请求报文的接口一致,并且接口是以太网接口,则不进行应答,否则立即进行应答。

如果查找失败,则继续查找ARP Snooping表项,如果查找成功,但是查找到的表项的接口和收到请求报文的接口一致,并且接口是以太网接口,则不进行应答,否则立即进行应答。

如果两个表均查找失败,则直接转发请求报文或将报文交于其他特性处理。

ARP攻击防御

ARP协议有简单、易用的优点,但是也因为其没有任何安全机制而容易被攻击发起者利用。

攻击者可以仿冒用户、仿冒网关发送伪造的ARP报文,使网关或主机的ARP表项不正确,从而对网络进行攻击。

攻击者通过向设备发送大量目标IP地址不能解析的IP报文,使得设备试图反复地对目标IP地址进行解析,导致CPU负荷过重及网络流量过大。

攻击者向设备发送大量ARP报文,对设备的CPU形成冲击。

关于ARP攻击报文的特点以及ARP攻击类型的详细介绍,请参见“ARP攻击防范技术白皮书”。

目前ARP攻击和ARP病毒已经成为局域网安全的一大威胁,为了避免各种攻击带来的危害,设备提供了多种技术对攻击进行检测和解决。

下面将详细介绍一下这些技术的原理。

ARP防止IP报文攻击功能简介

如果网络中有主机通过向设备发送大量目标IP地址不能解析的IP报文来攻击设备,则会造成下面的危害:

设备向目的网段发送大量ARP请求报文,加重目的网段的负载。

设备会试图反复地对目标IP地址进行解析,增加了CPU的负担。

为避免这种IP报文攻击所带来的危害,设备提供了下列两个功能:

如果发送攻击报文的源是固定的,可以采用ARP源抑制功能。开启该功能后,如果网络中某主机向设备某端口连续发送目标IP地址不能解析的IP报文,当每5秒内由此主机发出IP报文触发的ARP请求报文的流量超过设置的阈值,那么对于由此主机发出的IP报文,设备不允许其触发ARP请求,直至5秒后再处理,从而避免了恶意攻击所造成的危害。

如果发送攻击报文的源不固定,可以采用ARP黑洞路由功能。开启该功能后,一旦接收到目标IP地址不能解析的IP报文,设备立即产生一个黑洞路由,使得设备在一段时间内将去往该地址的报文直接丢弃。等待黑洞路由老化时间过后,如有报文触发则再次发起解析,如果解析成功则进行转发,否则仍然产生一个黑洞路由将去往该地址的报文丢弃。这种方式能够有效地防止IP报文的攻击,减轻CPU的负担。

ARP报文限速功能简介

ARP报文限速功能是指对上送CPU的ARP报文进行限速,可以防止大量ARP报文对CPU进行冲击。例如,在配置了ARP Detection功能后,设备会将收到的ARP

报文重定向到CPU进行检查,这样引入了新的问题:如果攻击者恶意构造大量ARP报文发往设备,会导致设备的CPU负担过重,从而造成其他功能无法正常运行甚至设备瘫痪,这个时候可以启用ARP报文限速功能来控制上送CPU的ARP

报文的速率。

推荐用户在配置了ARP Detection、ARP Snooping、ARP快速应答、MFF,或者发现有ARP泛洪攻击的情况下,使用ARP报文限速功能。

源MAC地址固定的ARP攻击检测功能简介

本特性根据ARP报文的源MAC地址进行统计,在5秒内,如果收到同一源MAC

地址的ARP报文超过一定的阈值,则认为存在攻击,系统会将此MAC地址添加到攻击检测表项中。在该攻击检测表项老化之前,如果设置的检查模式为过滤模式,则会打印告警信息并且将该源MAC地址发送的ARP报文过滤掉;如果设置的模式为监控模式,则只打印告警信息,不会将该源MAC地址发送的ARP报文过滤掉。

对于网关或一些重要的服务器,可能会发送大量ARP报文,为了使这些ARP报文不被过滤掉,可以将这类设备的MAC地址配置成保护MAC,这样,即使该MAC存在攻击也不会被检测过滤。

只对上送CPU的ARP报文进行统计。

ARP报文源MAC一致性检查功能简介

ARP报文源MAC一致性检查功能主要应用于网关设备上,防御以太网数据帧首部中的源MAC地址和ARP报文中的源MAC地址不同的ARP攻击。

配置本特性后,网关设备在进行ARP学习前将对ARP报文进行检查。如果以太网数据帧首部中的源MAC地址和ARP报文中的源MAC地址不同,则认为是攻击报文,将其丢弃;否则,继续进行ARP学习。

ARP主动确认功能简介

ARP的主动确认功能主要应用于网关设备上,防止攻击者仿冒用户欺骗网关设备。

启用ARP主动确认功能后,设备在新建或更新ARP表项前需进行主动确认,防止产生错误的ARP表项。关于工作原理的详细介绍请参见“ARP攻击防范技术白皮书”。

授权ARP功能简介

所谓授权ARP(Authorized ARP),就是根据DHCP服务器生成的租约或者DHCP 中继生成的安全表项同步生成ARP表项。

使能接口的授权ARP功能后:

系统会启动接口下授权ARP表项的老化探测功能,可以检测用户的非正常下线;

系统会禁止该接口学习动态ARP表项,可以防止用户仿冒其他用户的IP地址或MAC地址对网络进行攻击,保证只有合法的用户才能使用网络资源,增加了网络的安全性。

ARP Detection功能简介

ARP Detection功能主要应用于接入设备上,对于合法用户的ARP报文进行正常转发,否则直接丢弃,从而防止仿冒用户、仿冒网关的攻击。

ARP Detection包含三个功能:ARP报文有效性检查、用户合法性检查、ARP报文强制转发。

ARP报文有效性检查

对于ARP信任端口,不进行报文有效性检查;对于ARP非信任端口,需要根据配置对MAC地址和IP地址不合法的报文进行过滤。可以选择配置源MAC地址、目的MAC地址或IP地址检查模式。

对于源MAC地址的检查模式,会检查ARP报文中的源MAC地址和以太网报文头中的源MAC地址是否一致,一致认为有效,否则丢弃;

对于目的MAC地址的检查模式(只针对ARP应答报文),会检查ARP应答报文中的目的MAC地址是否为全0或者全1,是否和以太网报文头中的目的MAC地址一致。全0、全1、不一致的报文都是无效的,无效的报文需要被丢弃;

对于IP地址检查模式,会检查ARP报文中的源IP和目的IP地址,全0、全1、或者组播IP地址都是不合法的,需要丢弃。对于ARP应答报文,源IP和目的IP地址都进行检查;对于ARP请求报文,只检查源IP地址。

用户合法性检查

对于ARP信任端口,不进行用户合法性检查;对于ARP非信任端口,需要进行用户合法性检查,以防止仿冒用户的攻击。

用户合法性检查是根据ARP报文中源IP地址和源MAC地址检查用户是否是所属VLAN所在端口上的合法用户,包括基于IP Source Guard静态绑定表项的检查、基于DHCP Snooping安全表项的检查、基于802.1X安全表项的检查和OUI MAC 地址的检查。

首先进行基于IP Source Guard静态绑定表项检查。如果找到了对应源IP地址和源MAC地址的静态绑定表项,认为该ARP报文合法,进行转发。如果找到了对应源IP地址的静态绑定表项但源MAC地址不符,认为该ARP报文非法,进行丢弃。如果没有找到对应源IP地址的静态绑定表项,继续进行DHCP Snooping安全表项、802.1X安全表项和OUI MAC地址检查。

在基于IP Source Guard静态绑定表项检查之后进行基于DHCP Snooping安全表项、802.1X安全表项和OUI MAC地址检查,只要符合三者中任何一个,就认为该ARP报文合法,进行转发。其中,OUI MAC地址检查指的是,只要ARP报文的源MAC地址为OUI MAC地址,并且使能了Voice VLAN功能,就认为是合法报文,检查通过。

如果所有检查都没有找到匹配的表项,则认为是非法报文,直接丢弃。ARP报文强制转发

ARP报文强制转发功能是将ARP非信任端口接收到的已经通过用户合法性检查的ARP报文,按照一定的规则进行转发的防攻击功能,此功能不对ARP信任端口接收到的通过用户合法性检查的ARP报文进行限制。

对于从ARP非信任端口收到的已经通过用户合法性检查的合法ARP报文的处理过程如下:

对于ARP请求报文,通过信任端口进行转发;

对于ARP应答报文,首先按照报文中的以太网目的MAC地址进行转发,若在MAC 地址表中没有查到目的MAC地址对应的表项,则将此ARP应答报文通过信任端口进行转发。

ARP自动扫描、固化功能简介

ARP自动扫描功能一般与ARP固化功能配合使用:

启用ARP自动扫描功能后,设备会对局域网内的邻居自动进行扫描(向邻居发送ARP请求报文,获取邻居的MAC地址,从而建立动态ARP表项)。

ARP固化功能用来将当前的ARP动态表项(包括ARP自动扫描生成的动态ARP表项)转换为静态ARP表项。通过对动态ARP表项的固化,可以有效的防止攻击者修改ARP表项。

推荐在网吧这种环境稳定的小型网络中使用这两个功能。

ARP网关保护功能简介

在设备上不与网关相连的端口上配置此功能,可以防止伪造网关攻击。

在端口配置此功能后,当端口收到ARP报文时,将检查ARP报文的源IP地址是否和配置的被保护网关的IP地址相同。如果相同,则认为此报文非法,将其丢弃;否则,认为此报文合法,继续进行后续处理。

ARP过滤保护功能简介

本功能用来限制端口下允许通过的ARP报文,可以防止仿冒网关和仿冒用户的攻击。

在端口配置此功能后,当端口收到ARP报文时,将检查ARP报文的源IP地址和源MAC地址是否和允许通过的IP地址和MAC地址相同:

如果相同,则认为此报文合法,继续进行后续处理;

如果不相同,则认为此报文非法,将其丢弃。

ARP欺骗:

其实,此起彼伏的瞬间掉线或大面积的断网大都是ARP欺骗在作怪。ARP欺骗攻击已经成了破坏网吧经营的罪魁祸首,是网吧老板和网管员的心腹大患。从影响网络连接通畅的方式来看,

ARP欺骗分为二种:

一种是对路由器ARP表的欺骗;

另一种是对内网PC的网关欺骗。

第一种ARP欺骗的原理是——截获网关数据。它通知路由器一系列错误的内网MAC地址,并按照一定的频率不断进行,使真实的地址信息无法通过更新保存在路由器中,结果路由器的所有数据只能发送给错误的MAC地址,造成正常PC无法收到信息。

第二种ARP欺骗的原理是——伪造网关。它的原理是建立假网关,让被它欺骗的PC向假网关发数据,而不是通过正常的路由器途径上网。在PC看来,就是上不了网了,“网络掉线了”。

一般来说,ARP欺骗攻击的后果非常严重,大多数情况下会造成大面积掉

线。有些网管员对此不甚了解,出现故障时,认为PC没有问题,交换机没掉线的“本事”,电信也不承认宽带故障。而且如果第一种ARP欺骗发生时,只要重启路由器,网络就能全面恢复,那问题一定是在路由器了。为此,宽带路由器背了不少“黑锅”。

作为网吧路由器的厂家,对防范ARP欺骗不得已做了不少份内、份外的工作。一、在宽带路由器中把所有PC的IP-MAC输入到一个静态表中,这叫路由器IP-MAC绑定。二、力劝网管员在内网所有PC上设置网关的静态ARP信息,这叫PC机IP-MAC绑定。一般厂家要求两个工作都要做,称其为IP-MAC双向绑定。

遭受ARP攻击后现象

ARP欺骗木马的中毒现象表现为:使用局域网时会突然掉线,过一段时间后又会恢复正常。比如客户端状态频频变红,用户频繁断网,IE浏览器频繁出错,以及一些常用软件出现故障等。如果局域网中是通过身份认证上网的,会突然出现可认证,但不能上网的现象(无法ping通网关),重启机器或在MS-DOS窗口下运行命令arp -d后,又可恢复上网。

ARP欺骗木马只需成功感染一台电脑,就可能导致整个局域网都无法上网,严重的甚至可能带来整个网络的瘫痪。该木马发作时除了会导致同一局域网内的其他用户上网出现时断时续的现象外,还会窃取用户密码。如盗取QQ密码、盗取各种网络游戏密码和账号去做金钱交易,盗窃网上银行账号来做非法交易活动等,这是木马的惯用伎俩,给用户造成了很大的不便和巨大的经济损失。

常用的维护方法

搜索网上,目前对于ARP攻击防护问题出现最多是绑定IP和MAC和使用ARP防护软件,也出现了具有ARP防护功能的路由器。呵呵,我们来了解下这三种方法。

静态绑定

最常用的方法就是做IP和MAC静态绑定,在网内把主机和网关都做IP 和MAC绑定。

欺骗是通过ARP的动态实时的规则欺骗内网机器,所以我们把ARP全部设置为静态可以解决对内网PC的欺骗,同时在网关也要进行IP和MAC

的静态绑定,这样双向绑定才比较保险。

方法:

对每台主机进行IP和MAC地址静态绑定。

通过命令,arp -s可以实现“arp –s IP MAC地址”。

例如:“arp –s 192.168.10.1 AA-AA-AA-AA-AA-AA”。

如果设置成功会在PC上面通过执行 arp -a 可以看到相关的提示:

ARP协议分析实验报告

计算机网络 实 验 报 告 学院软件学院 年级2013 班级4班 学号3013218158 姓名闫文雄 2015 年 6 月17 日

目录 实验名称----------------------------------------------------------------------------------- 1 实验目标----------------------------------------------------------------------------------- 1 实验内容----------------------------------------------------------------------------------- 1 实验步骤----------------------------------------------------------------------------------- 1 实验遇到的问题及其解决方法-------------------------------------------------------- 1 实验结论----------------------------------------------------------------------------------- 1

一、实验名称 ARP协议分析 二、实验目标 熟悉ARP命令的使用,理解ARP的工作过程,理解ARP报文协议格式 三、实验内容以及实验步骤: (局域网中某台计算机,以下称为A计算机) ARP(地址解析协议): 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP 请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。 ARP是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP 命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议 1、在DOS窗口中运行ARP命令,参照ARP命令给出的帮助,解释下列命令的用 途;: ARP -s inet_addr eth_addr [if_addr] 用“arp -s”可以手动在ARP表中指定IP地址与MAC地址的对应,类型为static(静态),此项存在硬盘中,而不是缓存表,计算机重新启动后仍然存在,且遵循静态优于动态的原则,所以这个设置不对,可能导致无法上网. ARP -d inet_addr [if_addr] 删除指定的 IP 地址项,此处的 inet_addr 代表 IP 地址。对于指定的接口,要删除表中的某项,请使用 if_addr 参数,此处的 if_addr 代表指派给该接口的 IP 地址。要删除所有项,请使用星号 (*) 通配符代替 inet_addr。

arp协议实现的功能是什么

arp协议实现的功能是什么 地址解析协议,即ARP(Address Resolu TI on Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。那么ARP协议有什么作用且工作原理如何呢? arp协议的作用: 主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP 应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。 ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。

arp协议的工作原理: 首先,每台主机都会在自己的ARP缓冲区中建立一个 ARP列表,以表示IP地址和MAC地址的对应关系。当源主机需要将一个数据包要发送到目的主机时,会首先检查自己 ARP列表中是否存在该 IP地址对应的MAC地址,如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP 请求的广播包,查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。 网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个 ARP响应数据包,告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP响应数据包后,将得到的

arp协议实现的功能是什么

ARP (地址解析协议) 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,局域网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP 缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。 功能 地址解析协议由互联网工程任务组(IETF)在1982年11月发布的RFC 826中描述制定。 [1]地址解析协议是IPv4中必不可少的协议,而IPv4是使用较为广泛的互联网协议版本(IPv6仍处在部署的初期)。 OSI模型把网络工作分为七层,IP地址在OSI模型的第三层,MAC地址在第二层,彼此不直接打交道。在通过以太网发送IP数据包时,需要先封装第三层(32位IP地址)、第二层(48位MAC地址)的报头,但由于发送时只知道目标IP地址,不知道其MAC地址,又不能跨第二、三层,所以需要使用地址解析协议。使用地址解析协议,可根据网络层IP 数据包包头中的IP地址信息解析出目标硬件地址(MAC地址)信息,以保证通信的顺利进行。

arp协议栈

竭诚为您提供优质文档/双击可除 arp协议栈 篇一:实验2地址解析协议aRp 实验2地址解析协议(aRp) 【实验目的】 1.掌握aRp协议的报文格式 2.掌握aRp协议的工作原理 3.理解aRp高速缓存的作用 4.掌握aRp请求和应答的实现方法 5.掌握aRp缓存表的维护过程 【学时分配】 2学时 【实验环境】 该实验采用网络结构二 【实验原理】 一、物理地址与逻辑地址 1.物理地址 物理地址是节点的地址,由它所在的局域网或广域网定义。物理地址包含在数据链路层的帧中。物理地址是最低一

级的地址。 物理地址的长度和格式是可变的,取决于具体的网络。以太网使用写在网络接口卡(nic)上的6字节的标识作为 物理地址。 物理地址可以是单播地址(一个接收者)、多播地址(一组接收者)或广播地址(由网络中的所有主机接收)。有些 网络不支持多播或广播地址,当需要把帧发送给一组主机或所有主机时,多播地址或广播地址就需要用单播地址来模拟。 2.逻辑地址 在互联网的环境中仅使用物理地址是不合适的,因为不同网络可以使用不同的地址格式。因此,需要一种通用的编址系统,用来惟一地标识每一台主机,而不管底层使用什么样的物理网络。 逻辑地址就是为此目的而设计的。目前internet上的 逻辑地址是32位地址,通常称为ip地址,可以用来标识连接在internet上的每一台主机。在internet上没有两个主机具有同样的ip地址。 逻辑地址可以是单播地址、多播地址和广播地址。其中广播地址有一些局限性。在实验三中将详细介绍这三种类型的地址。 二、aRp协议简介 internet是由各种各样的物理网络通过使用诸如路由

0_ARP协议简介---------------------非常经典的ARP协议介绍

ARP简介 我们知道,当我们在浏览器里面输入网址时,DNS服务器会自动把它解析为IP地址,浏览器实际上查找的是IP地址而不是网址。那么IP地址是如何转换为第二层物理地址(即MAC地址)的呢?在局域网中,这是通过ARP协议来完成的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。所以网管们应深入理解ARP协议。 一、什么是ARP协议 ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。 编辑本段二、ARP协议的工作原理 在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如附表所示。附表: 我们以主机A(192.168.1.5)向主机B(192.168.1.1)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC 地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应

的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.1.1的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.1.1的MAC地址是00-aa-00-62-c6-09”。这样,主机A就知道了主机B的MAC 地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B 发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。 ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP 通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP 缓存中的IP-MAC条目,造成网络中断或中间人攻击。 ARP攻击主要是存在于局域网网络中,局域网中若有一个人感染ARP木马,则感染该ARP 木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。 二、RARP的工作原理: 1. 发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址; 2. 本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址; 3. 如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用; 4. 如果不存在,RARP服务器对此不做任何的响应; 5. 源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。 三、ARP和RARP报头结构 ARP和RARP使用相同的报头结构,如图所示。

实验1 ARP协议分析实验

《计算机网络》实验指导书 实验1 ARP协议分析实验 一、实验目的 ●理解IP地址与MAC地址的对应关系; ●理解ARP协议报文格式; ●理解ARP协议的工作原理与通信过程。 二、实验内容 ●ARP请求报文与应答报文格式; ●同一子网内两台机器间的ARP协议的工作过程; ●不同子网上的两台机器间的ARP协议工作过程。 三、实验原理、方法和手段 (1) ARP请求报文与应答报文格式 操作类型:1—ARP 请求;2—ARP 响应;3-- RARP请求;4—RARP 响应; 四、实验条件 (1)报文捕获工具

Wireshark协议分析软件; (2)应用协议环境 每个学生的PC机(安装Windows xp或者Windows 2000 操作系统)处于同一个LAN,主机A为本人机器,主机B为你邻座同学机器,另外有一个服务器(学校的WEB服务器,地址:210.44.144.44)处于另外一个网络。 五、实验步骤 (1)同一子网内两台机器间的ARP协议的工作过程 ●主机A(IP地址为A.A.A.A)与主机B(IP地址为B.B.B.B)属于同一个子 网; ●在主机A上的DOS命令提示符下运行arp –d命令,清空主机A的ARP 高速缓存; ●在主机A上的DOS命令提示符下运行arp –a命令,检查主机A的ARP 高速缓存区,此时ARP缓存区应为空; ●在主机A上启动Wireshark抓包工具准备捕获A与B之间的数据通信报 文,然后在主机A上的DOS命令提示符下运行:Ping B.B.B.B,并做 如下工作: 1、在捕获的报文中找出主机A和主机B之间通讯的ARP询问请求报文 和应答报文;

面试之ARP协议原理

ARP协议工作原理 每台主机都设有一个ARP高速缓存(ARP cache),里面有本局域网上各主机和路由器的IP地址和硬件地址的映射表,这些都是该主机目前知道的一些地址。 当主机A要向本局域网上的某个主机B发送IP数据报时,先在其ARP高速缓存中查看是否有主机B的IP地址。如果有,就在ARP高速缓存中查出其对应的硬件地址,再把这个硬件地址写入MAC帧,然后通过局域网把该MAC帧发往此硬件地址。也有可能查不到主机B的IP地址的项目。这可能是主机B才入网,也可能是主机A刚刚加电,其高速缓存还是空的。在这种情况下,主机A就自动运行ARP,然后按以下步骤找到主机B的硬件地址: 实现地址解析的第一步是产生ARP请求帧。在ARP帧数据部分的相应字段写入本地主机的物理地址、IP地址、待侦测的目的IP地址,在目的物理地址字段写入0,并在操作类型字段写入1,用以表示本数据帧是一个ARP请求数据帧。该ARP请求帧以本地网络适配器的物理地址作为源地址,以物理广播地址(FF-FF-FF-FF-FF-FF)作为目的地址,通过物理层发送出去。由于采用了广播地址,因此网段内所有的主机或设备都能够接收到该数据帧。除了目的主机外,所有接收到该ARP请求帧的主机和设备都会丢弃该ARP请求帧,因为目的主机能够识别ARP消息中的IP地址是否与本机相同。 与目的IP地址匹配的主机构造ARP应答帧。在ARP应答帧中,以请求分组中源物理地址、源IP地址作为其目的物理地址、目的IP地址,并将自身的物理地址、IP地址填入应答帧的源物理地址、源IP地址字段,并在操作字段中写入2,表示本ARP数据帧是一个应答数据帧。该分组通过数据链路层直接发给源主机。 源主机接收到ARP应答帧后,获得目的主机的物理地址,并将它作为一条新记录加入到ARP 高速缓存表。此外,如果源主机没有发送ARP请求而收到其他主机的ARP响应数据帧,源主机也会在本地ARP缓冲区中缓存该主机物理地址和IP地址的对应关系。 ARP高速缓存是非常有用的。如果不使用ARP高速缓存,那么任何一个主机只要进行一次通信,就必须在网络上用广播的方式发送ARP请求分组,这会使网络上的通信量大大增加。ARP把保存在高速缓存中的每一个映射地址项目都设置生存时间,超过生存时间的项目就从高速缓存中删除掉。 注意:ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。

实验二:理解子网掩码、网关和ARP协议的作用

实验二:理解子网掩码、网关和ARP协议的作用 一、实验目的 理解上述知识点所涉及的基本概念与原理并能运用于分析实际网络,达到对数据包的传送过程深入理解。 二、实验内容 在实验中,利用ping命令来检验主机间能否进行正常的双向通信。在"ping"的过程中,源主机向目标主机发送ICMP的Echo Request报文,目标主机收到后,向源主机发回ICMP 的Echo Reply报文,从而可以验证源与目标主机能否进行正确的双向通信。 实验的拓扑结构:如图(1)所示。 202.192.31.235/20 A与B为实验用的PC机,使用Windows操作系统。 步骤1:设置主机的IP地址与子网掩码: A(1号机): 202.192.31.机号 255.255.248.0 B(2号机): 202.192.30.机号 255.255.248.0 两台主机均不设置缺省网关。 用arp -d命令清除两台主机上的ARP表,然后在A与B上分别用ping命令与对方通信,记录实验显示结果。 用arp -a命令可以在两台PC上分别看到对方的MAC地址,记录A、B的MAC地址。 分析实验结果。 步骤2:将A的子网掩码改为:255.255.255.0,其他设置保持不变。 操作1:用arp -d命令清除两台主机上的ARP表,然后在A上"ping"B,记录显示结果。 用arp -a命令能否看到对方的MAC地址。 分析操作1的实验结果。 操作2:接着在B上"ping"A,记录B上显示的结果 此时用arp -a命令能否看到对方的MAC地址。 分析操作2的实验结果。 步骤3:在前面实验的基础上,把A的缺省网关设为:202.192.31.235 在A与B上分别用ping命令与对方通信,记录各自的显示结果 在A与B上分别用tracert命令追踪数据的传输路径,记录结果

网络基础 地址解析(ARP)协议

网络基础地址解析(ARP)协议 地址解析协议(Address Resolution Protocol,ARP)是一种能够实现IP地址到物理地址转化的协议。在计算机网络中,通过物理地址来识别网络上的各个主机,IP地址只是以符号地址的形式对目的主机进行编址。通过ARP协议将网络传输的数据报目的IP地址进行解析,将其转化为目的主机的物理地址,数据报才能够被目的主机正确接收。 实现IP地址到物理地址的映射在网络数据传输中是非常重要的,任何一次从互联网层及互联网层以上层发起的数据传输都使用IP地址,一旦使用IP地址,必须涉及IP地址到物理地址的映射,否则网络将不能识别地址信息,无法进行数据传输。 IP地址到物理地址的映射包括表格方式和非表格方式两种。其中,表格方式是事先在各主机中建立一张IP地址、物理地址映射表。这种方式很简单,但是映射表需要人工建立及人工维护,由于人工建立维护比较麻烦,并且速度较慢,因此该方式不适应大规模和长距离网络或映射关系变化频繁的网络。而非表格方式采用全自动技术,地址映射完全由设备自动完成。根据物理地址类型的不同,非表格方式有分为直接映射和动态联编两种方式。1.直接映射 物理地址分为固定物理地址和可自由配置的物理地址两类,对于可自由配置的物理地址,经过配置后,可以将其编入IP地址码中,这样物理地址的解析就变的非常简单,即将它从IP地址的主机号部分取出来便是,这种方式就是直接映射。直接映射方式比较简单,但适用范围有限,当IP地址中主机号部分不能容纳物理地址时,这种方式将失去作用。另外,以太网的物理地址都是固定的,一旦网络接口更改,物理地址也随之改变,采用直接映射将会出现问题。 2.动态联编 由于以太网具有广播能力和物理地址是固定的特点,通常使用动态联编方式来进行IP 地址到物理地址的解析。动态联编ARP方式的原理是,在广播型网络中,一台计算机A欲解析另一台计算机B的IP地址,计算机A首先广播一个ARP请求报文,请求计算机B回答其物理地址。网络上所有主机都将接收到该ARP请求,但只有计算机B识别出自己的IP 地址,并做出应答,向计算机A发回一个ARP响应,回答自己的物理地址。 为提高地址解析效率,ARP使用了高速缓存技术,即在每台使用ARP的主机中,都保留一个专用的高速缓存,存放最近获得的IP地址-物理地址联编信息。当收到ARP应答报文时,主机就将信宿机的IP地址和物理地址存入缓存。在发送报文时,首先在缓存中查找相应的地址联编信息,若不存在相应的地址联编信息,再利用ARP进行地址解析。这样不必每发一个报文都进行动态联编,提高地址解析效率,从而使网络性能得到提高。 另外,还有一种在无盘工作站中常用的反向地址解析协议(RARP),它可以实现物理地址到IP地址的转换。在无盘工作站启动时,首先以广播方式发出RARP请求,网络上的RARP服务器会根据RARP请求中的物理地址为该工作站分配一个IP地址,生成一个RARP 响应报文发送回去。然后,无盘工作站接收到RARP响应报文,便获得自己的IP地址,就能够和服务器进行通信。

arp协议的主要功能

竭诚为您提供优质文档/双击可除arp协议的主要功能 篇一:实验二:理解子网掩码、网关和aRp协议的作用实验二:理解子网掩码、网关和aRp协议的作用 一、实验目的 理解上述知识点所涉及的基本概念与原理并能运用于分析实际网络,达到对数据包的传送过程深入理解。 二、实验内容 在实验中,利用ping命令来检验主机间能否进行正常的双向通信。在"ping"的过程中,源主机向目标主机发送icmp的echoRequest报文,目标主机收到后,向源主机发回icmp的echoReply报文,从而可以验证源与目标主机能否进行正确的双向通信。 实验的拓扑结构:如图(1)所示。 202.192.31.235/20 a与b为实验用的pc机,使用windows操作系统。 步骤1:设置主机的ip地址与子网掩码: a(1号机):202.192.31.机号255.255.248.0b(2号机):202.192.30.机号255.255.248.0两台主机均不设置缺

省网关。 用arp-d命令清除两台主机上的aRp表,然后在a与b 上分别用ping命令与对方通信,记录实验显示结果。 用arp-a命令可以在两台pc上分别看到对方的mac地址,记录a、b的mac地址。 分析实验结果。 步骤2:将a的子网掩码改为:255.255.255.0,其他设置保持不变。 操作1:用arp-d命令清除两台主机上的aRp表,然后在a上"ping"b,记录显示结果。用arp-a命令能否看到对方的mac地址。分析操作1的实验结果。 操作2:接着在b上"ping"a,记录b上显示的结果 此时用arp-a命令能否看到对方的mac地址。分析操作2的实验结果。 步骤3:在前面实验的基础上,把a的缺省网关设为:202.192.31.235 在a与b上分别用ping命令与对方通信,记录各自的显示结果在a与b上分别用tracert命令追踪数据的传输路径,记录结果 分析(3)的实验结果。 步骤4:(不用做)用arp-d命令清除a中的aRp表,在a上ping一台外网段的主机,如广大的wwwserver,再用

ARP协议

unsigned long arp_tpa; /*目标的协议地址*/ }ARPHDR,*PARPHDR; 为了解释ARP协议的作用,就必须理解数据在网络上的传输过程。这里举一个简单的PING例子。 假设我们的计算机IP地址是192.168.1.1,要执行这个命令: ping192.168.1.2。该命令会通过ICMP协议发送ICMP数据包。该过程需要经过下面的步骤: 1、应用程序构造数据包,该示例是产生ICMP包,被提交给内核(网络驱动程序); 2、内核检查是否能够转化该IP地址为MAC地址,也就是在本地的ARP 缓存中查看IP-MAC对应表[1]; 3、如果存在该IP-MAC对应关系,那么跳到步骤7;如果不存在该IP-MAC 对应关系,那么接续下面的步骤; 4、内核进行ARP广播,目的地的MAC地址是FF-FF-FF-FF-FF-FF,ARP 命令类型为REQUEST(1),其中包含有自己的MAC地址; 5、当192.168.1.2主机接收到该ARP请求后,就发送一个ARP的REPLY (2)命令,其中包含自己的MAC地址; 6、本地获得192.168.1.2主机的IP-MAC地址对应关系,并保存到ARP 缓存中; 7、内核将把IP转化为MAC地址,然后封装在以太网头结构中,再把数据发送出去; 使用arp-a命令就可以查看本地的ARP缓存内容,所以,执行一个本地的PING命令后,ARP缓存就会存在一个目的IP的记录了。当然,如果你的数据包是发送到不同网段的目的地,那么就一定存在一条网关的IP-MAC 地址对应的记录。 知道了ARP协议的作用,就能够很清楚地知道,数据包的向外传输很依靠ARP协议,当然,也就是依赖ARP缓存。要知道,ARP协议的所有操作都是内核自动完成的,同其他的应用程序没有任何关系。同时需要注意的是,ARP协议只使用于本网络。 2.ARP协议的利用和相关原理介绍。 一、交换网络的嗅探 ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP 和MAC地址存储在ARP缓存中。因此,在上面的假设网络中,B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是 192.168.10.3(C的IP地址),MAC地址是DD-DD-DD-DD-DD-DD(C的MAC 地址本来应该是CC-CC-CC-CC-CC-CC,这里被伪造了)。当A接收到B伪造

ARP协议分析实验报告

APR协议分析实验报告 实验目的:1熟悉ARP的工作过程 2熟悉APR的数据包结构 实验步骤: 由于实验中出现了一些状况先在此说明: 在这个实验中我担任的主机D的角色。 但是在实验过程中发现主机D接收不到主机A发送的ARP请求,主机A在ping主机D的时候总是显示time out。但是主机D 能收到主机C发送来的ARP请求并且在主机Cping主机D之后,主机D的APR缓存表能找到主机C的IP地址与物理地址的映射。

于是我跟使用主机A的同学换了一组电脑,由于实验只涉及主机A与主机D还有中间连接的主机B因此我们只开了三台电脑。 以下为正常情况下的实验过程及结果: 练习一

1.ARP高速缓存表有哪几项组成? 高速缓存表用项目数组来实现,每个项目包括以下字段: 状态:表示项目的状态.其值为FREE(已超时),PENDING(已发送请求但未应答)或RESOLVED(已经应答). 硬件类型,协议类型,硬件地址长度,协议地址长度:与ARP分组中的相应字段相同. 接口号:对应路由器的不同接口. 队列号:ARP使用不同的队列将等待地址解析的分组进行排队.发往同一个目的 地的分组通常放在同一个队列中. 尝试:表示这个项目发送出了多少次的ARP请求. 超时:表示一个项目以秒为单位的寿命. 硬件地址:目的硬件地址,应答返回前保持为空. 协议地址:目的高层协议地址如IP地址 2主机A、B、C、D启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ARP、ICMP)

下图为设置过滤选项完成后的截图 3主机A、B、C、D在命令行下运行“arp -d”命令,清空ARP 高速缓存。 4.主机A ping 主机D(172.16.1.4)。这里我的主机D的IP地 址为169.254.209.191 5.主机A、B、C、D停止捕获数据,并立即在命令行下运行“arp -a”命令察看ARP 捕获数据后的图如下:

ARP协议概述

ARP 一、ARP协议概述 IP数据包常通过以太网发送。以太网设备并不识别32位IP地址:它们是以48位以太网地址传输以太网数据包的。因此,IP驱动器必须把IP目的地址转换成以太网网目的地址。在这两种地址之间存在着某种静态的或算法的映射,常常需要查看一张表。地址解析协议(Address Resolution Protocol,ARP)就是用来确定这些映象的协议。 ARP工作时,送出一个含有所希望的IP地址的以太网广播数据包。目的地主机,或另一个代表该主机的系统,以一个含有IP和以太网地址对的数据包作为应答。发送者将这个地址对高速缓存起来,以节约不必要的ARP通信。 如果有一个不被信任的节点对本地网络具有写访问许可权,那么也会有某种风险。这样一台机器可以发布虚假的ARP报文并将所有通信都转向它自己,然后它就可以扮演某些机器,或者顺便对数据流进行简单的修改。ARP机制常常是自动起作用的。在特别安全的网络上, ARP映射可以用固件,并且具有自动抑制协议达到防止干扰的目的。 二、ARP分组格式 ARP分组直接封装在数据链路帧中。 下图是ARP分组的格式:

ARP分组具有如下的一些字段: 硬件类型:这是一个16比特字段。用来定义运行ARP的网络的类型。例如,以太网类型是1。 协议类型:这是一个16比特字段。标识发送设备所使用的协议类型。例如,对IPv4协议,这个字段的值是080016。 硬件长度:这是一个8比特字段。数据报中硬件地址以字节为单位的长度。例如,对以太网这个值是6。 协议长度:这是一个8比特字段。数据报中所用协议地址以字节为单位的长度。例如,对IPv4这个值是4。 操作码:这是一个16比特字段。操作码指明数据报是A R P请求还是A R P应答,假如是A R P请求,此值为1;假如数据报是A R P 应答,此值为2。 发送站硬件地址:这是一个可变长度字段。用来定义发送方设备的硬件地址。例如,对以太网这个字段是6字节长。 发送站协议地址:这是一个可变长度字段。用来定义发送方设备

实验二理解子网掩码、网关和arp协议的作用

实验二理解子网掩码、网关和ARP协议的作用 一、实验目的和要求 理解子网掩码、网管和ARP协议的基本概念和作用,并通过实验加深理解其原理,将其运用于分析实际网络,了解数据包的传送过程。 二、主要仪器设备 环境: WindowsXP或者Windows7 三、主要概念 (1)子网掩码(Subnet Mask) 子网掩码的主要功能是告知网络设备,一个特定的IP地址的哪一部分是包含网络地址与子网地址,哪一部分是主机地址。网络的路由设备只要识别出目的地址的网络号与子网号即可作出路由寻址决策,IP地址的主机部分不参与路由器的路由寻址操作,只用于在网段中唯一标识一个网络设备的接口。本来,如果网络系统中只使用A、B、C这三种主类地址,而不对这三种主类地址作子网划分或者进行主类地址的汇聚,则网络设备根据IP地址的第一个字节的数值范围即可判断它属于A、B、C中的哪一个主类网,进而可确定该IP地址的网络部分和主机部分,不需要子网掩码的辅助。 但是在实际网络规划中,他们并不利于有效地分配有限的地址空间。对于A,B类地址,很少有这么大规模的公司能够使用,对于C类地址所容纳的主机数又相对太少。所以有类别的IP地址并不适用于网络规划。同时随着加入互联网的网络越来越多,路由寻经表急剧膨胀,这样不仅会降低网关寻径效率(甚至可能使寻径表溢出,从而造成寻径故障),更重要的是将增加内外部路径刷新时的开销,从而加重网络负担。 为了提高IP地址使用效率及路由效率,在基础的IP地址分类上对IP编址进行了相应改进。但为了使系统在对A、B、C这三种主类网进行了子网的划分,或者采用无类别的域间选路技术CIDR对网段进行汇聚的情况下,也能对IP地址的网络及子网部分与主机部分作正确的区分,就必须依赖于子网掩码的帮助。 子网掩码使用与IP相同的编址格式,子网掩码为1的部分对应于IP地址的网络与子网部分,子网掩码为0的部分对应于IP地址的主机部分。将子网掩码和IP地址作"与"操作后,IP地址的主机部分将被丢弃,剩余的是网络地址和子网地址。例如,一个IP分组的目的IP 地址为:10.2.2.1,若子网掩码为:,与之作"与"运算得:,则网络设备认为该IP地址的网络号与子网号为:。 (2)网关(Gateway) 在Internet中的网关一般是指用于连接两个或者两个以上网段的网络设备,通常使用路由器(Router)作为网关。在TCP/IP网络体系中,网关的基本作用是根据目的IP地址的网络号与子网号,选择最佳的出口对IP分组进行转发,实现跨网段的数据通信。 (3)ARP协议(Address Resolution Protocol) 在以太网(Ethernet)中,一个网络设备要和另一个网络设备进行直接通信,除了知道目标设备的网络层逻辑地址(如IP地址)外,还要知道目标设备的第二层物理地址(MAC 地址)。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

ARP协议分析

计算机网络实验报告 学院计算机与通信工程学院专业软件工程班级1604班 学号201616080412 姓名杜江荣实验时间:2018.04.09 一、实验名称: ARP协议分析实验 二、实验目的: 分析ARP协议的格式,理解ARP协议的解析过程。 三、实验环境: 实验室局域网中任意两台主机PC1,PC2。 四、实验步骤及结果: 步骤1:查看实验室PC1和PC2的IP地址并记录 PC1: 10.64.53.8 PC2: 10.64.53.7 步骤2:在PC1和PC2两台计算机上执行如下命令,清除ARP缓存。 ARP -d 步骤3:在PC1,PC2两台计算机上执行如下指令,查看高速缓存中的ARP 地址映射表的内容。 ARP -a 步骤4:在PC1和PC2上运行Wireshark捕获数据包,为了捕获和实验内容有关的数据包,Wireshark的Capture Filter设置为默认方式;

步骤5:在主机PC1上执行Ping命令向PC2发送数据包; 步骤6:执行完毕,保存截获的报文并命名为arp1-学号-姓名; 步骤7:在PC1,PC2两台计算机上再次执行ARP –a命令,查看高速缓存中的ARP地址映射表的内容: (1)这次看到的内容和步骤3的内容相同吗?结合两次看到的结果,理解ARP 高速缓存的作用。 不相同 因为第二次直接利用了高速缓存 (2)把这次看到的高速缓存中的ARP地址映射表写出来。 10.64.53.7 44-87-fc-9b-be-12 10.64.53.254 00-d0-f8-ac-f2-ed 步骤8:重复步骤4-5,将此结果保存为arp2-学号-姓名; 步骤9:打开arp1-学号-姓名,完成以下各题: 1)在捕获的数据包中有几个ARP数据包?在以太帧中,ARP协议类型的代码值是什么? 2个 Ip(0X0800) 2)打开arp2-学号-姓名,比较两次截获的报文有何区别?分析其原因。 在arp2中没有arp报文,这位是因为在第一次操作时,已经将路由信息存入ARP高速缓存中,不用通过ARP广播请求消息来获的路由信息。3)分析arp1-学号-姓名中ARP报文的结构,完成表1.3。

计算机网络应用 ARP协议

计算机网络应用ARP协议 地址解析协议(Address Resolution Protocol,ARP)是一种能够实现IP地址到物理地址转化的协议。在计算机网络中,通过物理地址来识别网络上的各个主机,IP地址只是以符号地址的形式对目的主机进行编址。通过ARP协议将网络传输的数据报目的IP地址进行解析,将其转化为目的主机的物理地址,数据报才能够被目的主机正确接收。 实现IP地址到物理地址的映射在网络数据传输中是非常重要的,任何一次从互联网层及互联网层以上层发起的数据传输都使用IP地址,一旦使用IP地址,必须涉及IP地址到物理地址的映射,否则网络将不能识别地址信息,无法进行数据传输。 IP地址到物理地址的映射包括表格方式和非表格方式两种。其中,表格方式是事先在各主机中建立一张IP地址、物理地址映射表。这种方式很简单,但是映射表需要人工建立及人工维护,由于人工建立维护比较麻烦,并且速度较慢,因此该方式不适应大规模和长距离网络或映射关系变化频繁的网络。而非表格方式采用全自动技术,地址映射完全由设备自动完成。根据物理地址类型的不同,非表格方式有分为直接映射和动态联编两种方式。 1.直接映射 物理地址分为固定物理地址和可自由配置的物理地址两类,对于可自由配置的物理地址,经过配置后,可以将其编入IP地址码中,这样物理地址的解析就变的非常简单,即将它从IP地址的主机号部分取出来便是,这种方式就是直接映射。直接映射方式比较简单,但适用范围有限,当IP地址中主机号部分不能容纳物理地址时,这种方式将失去作用。另外,以太网的物理地址都是固定的,一旦网络接口更改,物理地址也随之改变,采用直接映射将会出现问题。 2.动态联编 由于以太网具有广播能力和物理地址是固定的特点,通常使用动态联编方式来进行IP 地址到物理地址的解析。动态联编ARP方式的原理是,在广播型网络中,一台计算机A欲解析另一台计算机B的IP地址,计算机A首先广播一个ARP请求报文,请求计算机B回答其物理地址。网络上所有主机都将接收到该ARP请求,但只有计算机B识别出自己的IP地址,并做出应答,向计算机A发回一个ARP响应,回答自己的物理地址。 为提高地址解析效率,ARP使用了高速缓存技术,即在每台使用ARP的主机中,都保留一个专用的高速缓存,存放最近获得的IP地址-物理地址联编信息。当收到ARP应答报文时,主机就将信宿机的IP地址和物理地址存入缓存。在发送报文时,首先在缓存中查找相应的地址联编信息,若不存在相应的地址联编信息,再利用ARP进行地址解析。这样不必每发一个报文都进行动态联编,提高地址解析效率,从而使网络性能得到提高。 另外,还有一种在无盘工作站中常用的反向地址解析协议(RARP),它可以实现物理地址到IP地址的转换。在无盘工作站启动时,首先以广播方式发出RARP请求,网络上的RARP 服务器会根据RARP请求中的物理地址为该工作站分配一个IP地址,生成一个RARP响应报文发送回去。然后,无盘工作站接收到RARP响应报文,便获得自己的IP地址,就能够和服务器进行通信。

ARP协议分析

ARP协议分析 14020310090 张振宇1.实验内容 使用Wireshark抓包软件,捕获ARP信息并分析。 2.实验原理 ARP协议的原理:当我们在访问某个网络或者ping某个网址如:ping https://www.doczj.com/doc/5c4406815.html,时候,DNS需要解析https://www.doczj.com/doc/5c4406815.html, 成为IP地址,但是在网络中数据传输是以帧的形式进行传输,而帧中有目标主机的MAC地址,本地主机在向目标主机发送帧前,要将目标主机IP地址解析成为MAC地址,这就是通过APR协议来完成的。 假设有两台主机A,B在互相通信,假设A(192.168.1.2),B(192.168.1.4)双方都知道对方的IP地址,如果A主机要向B主机发送“hello”,那么A主机,首先要在网络上发送广播,广播信息类似于“192.168.1.4的MAC地址是什么”,如果B主机听见了,那么B主机就会发送“192.168.1.4的MAC地址是“。。。。。。”,MAC地址一般都是6Byte 48bit 的格式,如“04-a3-e3-3a”,这样A主机就知道B 主机的MAC地址,所以发送数据帧时,加上MAC地址就不怕找不到目标主机的了。完成广播后,A主机会将MAC地址加入到ARP缓存表(所谓ARP缓存表就是一张实现IP和MAC地址进行一一对应的表,并且存储起来),以备下次再使用。ARP帧结构如图6-13所示。 图6-13 ARP帧结构 (1)两个字节长的以太网帧类型表示后面数据的类型。对于ARP请求或应答来说,该字段的值为0X0806。 (2)硬件类型字段:指明了发送方想知道的硬件地址的类型,以太网的值为1。 (3)协议类型字段:表示要映射的协议地址类型,IP为0X0800。 (4)硬件地址长度和协议地址长度:指明了硬件地址和高层协议地址的长度,这样ARP帧就可以在任意硬件和任意协议的网络中使用。对于以太网上IP 地址的ARP请求或应答来说,它们的值分别为6和4。 (5)操作字段:用来表示这个报文的类型,ARP请求为1,ARP响应为2,RARP请求为3,RARP响应为4。 (6)发送端的以太网地址:源主机硬件地址,6个字节。 (7)发送端IP地址:发送端的协议地址(IP地址),4个字节。

ARP协议的漏洞

ARP协议的缺陷分析 ARP主要是利用伪造的IP/MAC映射关系来骗取其他主机的信任.从而达到非法截获网络内其他主机之间的通信数据。 ARP协议的安全漏洞来源于协议自身设计上的不足.ARP协议被设计成一种可信任协议。缺乏合法性验证手段。 ARP协议是一个高效的数据链路层协议.但是设计初衷是方便数据的传输.设计前提是网络绝对安全的情况.ARP协议是建立在局域网主机相互信任的基础之上.ARP具有广播性、无状态性、无认证性、无关性和动态性等一系列的安全缺陷。 (1)ARP协议寻找MAC地址是广播方式的。攻击者可以应答错误的MAC地址.同时攻击者也可以不问断地广播ARP请求包.造成网络的缓慢甚至网络阻塞; (2)ARP协议是无状态和动态的。任意主机都可以在没有请求的情况下进行应答.且任何主机只要收到网络内正确的ARP应答包.不管它本身是否有ARP 请求。都会无条件的动态更新缓存表; (3)ARP协议是无认证的。ARP协议默认情况下是信任网络内的所有节点.只要是存在ARP缓存表里的IP/MAC映射以及接收到的ARP应答中的IP/MAC 映射关系.ARP都认为是可信任的.并没有对IP/MAC映射的真实性,有效性进行检验.也没有维护映射的一致性。 详细分析: ARP实现分析 ARP的整个工作还有一些其它的一些函数,这些函数与本文的研究关系不大,因此不作说明。在ARP的工作过程中有以下几个方面安全问题值得关注: (1)如果有一个伪造的ARP分组(这个分组中的发送者IP地址不是本机的IP地址,但发送者硬件地址是本机的,它伪造了一个IP—MAC映射),以太网接口输出处理函数只是构造一个以太首部封装此分组并把它放到输出队列,不判断该分组中的发送者IP—MAC映射是否与本机信息相符,因此,这个伪造分组不会被作为非法分组丢弃,从而可能造成伪造ARP 分组顺利发送,而伪造ARP分组会影响网络的运行和安全。当然,如果进行ARP分组的检查,则势必影响通信速度,在早期的可信网络中这种做法是多余的,所以ARP设计上没有

ARP协议的作用

前言:ARP协议的作用: 1. 什么是ARP? ARP (Address Resolution Protocol) 是个地址解析协议。最直白的说法是:在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供该节点的MAC地址。 2为什么要有ARP? OSI 模式把网络工作分为七层,彼此不直接打交道,只通过接口(layre interface). IP地址在第三层, MAC地址在第二层。 协议在发生数据包时,首先要封装第三层(IP地址)和第二层(MAC地址)的报头, 但协议只知道目的节点的IP地址,不知道其物理地址,又不能跨第二、三层,所以得用ARP的服务。 详细说明: ? 在网络通讯时,源主机的应用程序知道目的主机的IP地址和端口号,却不知道目的主机的硬件地址,而数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃。因此在通讯前必须获得目的主机的硬件地址。ARP协议就起到这个作用 ? 当一台主机把以太网数据帧发送到位于同一局域网上的另一台主机时,是根据48位的以太网地址来确定目的接口的,设备驱动程序从不检查IP数据报中的目的IP地址。ARP(地址解析)模块的功能为这两种不同的地址形式提供映射:32位的IP地址和48位的以太网地址 一.ARP报文各字段含义: ARP报文字段总共有28个字节 1.硬件类型:占2个字节,表明ARP实现在何种类型的网络上。 ? 值为1:表示以太网。 2.协议类型:占2个字节表示要映射的协议地址类型。 ? IP:0800 3.硬件地址长度:占1个字节,表示MAC地址长度,其值为6个字节。 4.协议地址长度:占1个字节,表示IP地址长度,此处值4个字节 5.操作类型:占2个字节,表示ARP数据包类型。 ? 值为1表示ARP请求。

相关主题
文本预览
相关文档 最新文档