ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
ARP(AddressResolutionProtocol)地址解析协议用于将计算机的网络地址(IP地址32位)转化为物理地址(MAC地址48位)[RFC826]。ARP协议是属于链路层的协议,在以太网中的数据帧从一个主机到达网内的另一台主机是根据48位的以太网地址(硬件地址)来确定接口的,而不是根据32位的IP地址。内核(如驱动)必须知道目的端的硬件地址才能发送数据。当然,点对点的连接是不需要ARP协议的。
为了解释ARP协议的作用,就必须理解数据在网络上的传输过程。这里举一个简单的PING例子。
假设我们的计算机IP地址是19216811,要执行这个命令:ping19216812。该命令会通过ICMP协议发送ICMP数据包。该过程需要经过下面的步骤:
1、应用程序构造数据包,该示例是产生ICMP包,被提交给内核(网络驱动程序);
2、内核检查是否能够转化该IP地址为MAC地址,也就是在本地的ARP缓存中查看IP-MAC对应表;
3、如果存在该IP-MAC对应关系,那么跳到步骤9;如果不存在该IP-MAC对应关系,那么接续下面的步骤;
4、内核进行ARP广播,目的地的MAC地址是FF-FF-FF-FF-FF-FF,ARP命令类型为REQUEST(1),其中包含有自己的MAC地址;
5、当19216812主机接收到该ARP请求后,就发送一个ARP的REPLY(2)命令,其中包含自己的MAC地址;
6、本地获得19216812主机的IP-MAC地址对应关系,并保存到ARP缓存中;
7、内核将把IP转化为MAC地址,然后封装在以太网头结构中,再把数据发送出去;
使用arp-a命令就可以查看本地的ARP缓存内容,所以,执行一个本地的PING命令后,ARP缓存就会存在一个目的IP的记录了。当然,如果你的数据包是发送到不同网段的目的地,那么就一定存在一条网关的IP-MAC地址对应的记录。
知道了ARP协议的作用,就能够很清楚地知道,数据包的向外传输很依靠ARP协议,当然,也就是依赖ARP缓存。要知道,ARP协议的所有 *** 作都是内核自动完成的,同其他的应用程序没有任何关系。同时需要注意的是,ARP协议只使用于本网络。
ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。其作用是在以太网环境中,数据的传输所依懒的是MAC地址而非IP地址,而将已知IP地址转换为MAC地址的工作是由ARP协议来完成的。
在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
1静态映射
静态映射的意思是要手动创建一张ARP表,把逻辑(IP)地址和物理地址关联起来。这个ARP表储存在网络中的每一台机器上。例如,知道其机器的IP地址但不知道其物理地址的机器就可以通过查ARP表找出对应的物理地址。这样做有一定的局限性,因为物理地址可能发生变化:
(1)机器可能更换NIC(网络适配器),结果变成一个新的物理地址。
(2)在某些局域网中,每当计算机加电时,他的物理地址都要改变一次。
(3)移动电脑可以从一个物理网络转移到另一个物理网络,这样会时物理地址改变。
要避免这些问题出现,必须定期维护更新ARP表,此类比较麻烦而且会影响网络性能。
2动态映射
动态映射时,每次只要机器知道另一台机器的逻辑(IP)地址,就可以使用协议找出相对应的物理地址。已经设计出的实现了动态映射协议的有ARP和RARP两种。ARP把逻辑(IP)地址映射为物理地址。RARP把物理地址映射为逻辑(IP)地址。
3ARP原理及流程
在任何时候,一台主机有IP数据报文发送给另一台主机,它都要知道接收方的逻辑(IP)地址。但是IP地址必须封装成帧才能通过物理网络。这就意味着发送方必须有接收方的物理(MAC)地址,因此需要完成逻辑地址到物理地址的映射。而ARP协议可以接收来自IP协议的逻辑地址,将其映射为相应的物理地址,然后把物理地址递交给数据链路层。
部分路由器ARP绑定选项中,有静态和唯一两种状态可供选择
1如果路由器ARP绑定设置为静态后,设备将在DHCP中分配时,将按照绑定表中对应的IP分配到对应的MAC。
需要注意的是,设置静态ARP绑定后,如果用户的IP或者MAC错误,电脑依然可以上网,只是设备日志会记录。
2如果绑定设置为唯一,那么绑定后,对于不是列表对应的IP或者MAC将不允许通过,并且电脑的IP和MAC不对应的也无法访问到路由器。
3如果是针对多个用户的情况下路由器ARP绑定,我们可以在ARP管理--ARP列表里面选择——将所有未绑定的设为“静态”或者:将所有未绑定的设为“唯一”。
arp攻击的防护
1 ARP 高速缓存超时设置
在ARP高速缓存中的表项一般都要设置超时值,缩短这个这个超时值能够有用的避免ARP表的溢出。
2 IP+MAC访问 *** 控 -----推荐使用
单纯依托IP或MAC来树立信赖联系是不安全,抱负的安全联系树立在IP+MAC的根底上,这也是咱们校园网上网有必要绑定IP和MAC的因素之一。
3 静态ARP缓存表
每台主机都有一个暂时寄存IP-MAC的对应表ARP攻击就经过更改这个缓存来到达诈骗的意图,运用静态的ARP来绑定正确的MAC是一个有用的办法,在命令行下运用arp -a能够检查当时的ARP缓存表。
地址解析协议(arp)
基本功能
在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。
另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的某个端口的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为ARP代理(ARP Proxy)。
工作原理
在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的。以主机A(19216815)向主机B(19216811)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到目标IP地址,主机A就会在网络上发送一个广播,A主机MAC地址是“主机A的MAC地址”,这表示向同一网段内的所有主机发出这样的询问:“我是19216815,我的硬件地址是
地址解析协议APR是将“IP地址”解析成为“物理地址”
在每个主机的APR高速缓存中,都有一个从IP地址到硬件地址的映射表,这个表是经常更新的。当主机A要向本局域网主机B发送数据时,就查自己的表有无目的主机IP地址,若有,就在APR高速缓存中查出硬件地址,再将硬件地址写入MAC帧完成传输
逆地址解析协议RAPR就是将“物理地址”解析为“IP地址”
对于只知道自己硬件地址的主机姐可以通过RARP协议知道自己的IP地址
以上就是关于ARP协议的作用及工作原理全部的内容,包括:ARP协议的作用及工作原理、ARP协议以及日常应用、1、 ARP协议的功能是什么它是如何进行地址解释的。(等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)