ARP协议原理入门

网络 网络管理
无论你是一个网络管理者还是一个网络使用者,对于ARP协议你都需要了解。在网络之中,有关于这个协议的方方面面一直都被我们“津津乐道”,那么你怎么还能不认识它呢?

ARP协议的相关知识虽然是老生常谈,但是由于它是网络攻击中重要的一刻,所以关于它的基础知识我们一直都是再三强调的。那么接下来还是从它的基本概念说起,这个协议的来头是什么呢?

ARP协议简介

ARP(Address Resolution Protocol)是地址解析协议,是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(也就是相当于OSI的第三层)地址解析为数据链路层(也就是相当于OSI的第二层)的物理地址(注:此处物理地址并不一定指MAC地址)。

ARP原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后,就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。

网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。

ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的IP和MAC地址存储在ARP缓存中。因此,当局域网中的某台机器B向A发送一个自己伪造的ARP应答,而如果这个应答是B冒充C伪造来的,即IP地址为C的IP,而MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,而它的MAC地址已经不是原来那个了。

由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。所以,那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址,这样就会造成网络不通,导致A不能Ping通C!这就是一个简单的ARP欺骗。

ARP协议的工作原理

在每台装有TCP IP协议的电脑里都有一个ARP缓存表,表里的ip地址与mac地址是一一对应的。

arp缓存表以主机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地址是什么呀?"网络上的其他主机并不回应这一询问,只有主机B接受到这个帧时才向A作出回应:“192.168.1.1的mac地址是00-aa-0-62-c6-09。(如上表)"这样,主机A就知道了主机B的mac地址,就可以向主机B发送信息了。

同时,它还更新了自己的ARP缓存表,下次再向B发送数据时,直接在ARP缓存表找就可以了。ARP缓存表采用老化的机制,在一段时间里表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询的速度。

责任编辑:佟健 来源: IT168
相关推荐

2023-03-30 08:26:31

DNSTCPUDP

2023-03-31 08:16:39

CDN网络数据

2014-06-11 13:25:14

IPARPRARP

2019-10-31 08:43:43

ICMPARP协议ARP欺骗

2011-04-13 09:53:20

2010-06-28 16:12:43

ARP协议

2010-06-12 17:53:14

ARP协议

2010-06-13 13:55:21

ARP协议

2012-04-06 10:04:21

2020-12-03 08:37:38

TCPIPARP协议

2010-06-13 14:31:28

2009-09-23 11:37:31

Hibernate S

2010-06-12 17:44:19

ARP协议

2010-07-06 16:22:01

2011-07-20 10:20:04

2010-06-12 18:00:16

ARP协议

2010-06-13 14:36:20

RARP协议

2023-12-17 14:43:17

2010-06-12 18:06:09

无为ARP协议

2010-06-17 17:53:28

点赞
收藏

51CTO技术栈公众号