0x00 ARP概述
中文名: 地址解析协议(英语:Address Resolution Protocol,缩写:ARP)是通过解析网络层地址(IPv4,IPv6)来寻找数据链路层地址的一个在网络中非常重要的传输协议。用简单明了的话就是实现从IP地址到MAC地址的映射,即询问目标IP对应的MAC地址。
0x01 基本功能
在以太网协议中规定,同一局域网中的一台主机A要和另一台主机B进行直接通信,那么主机A必须要知道主机B的MAC地址。而在TCP/IP协议中,网络层和传输层只关心目标主机的IP地址。这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。
0x02 ARP报文格式
正式开讲之前先让我们了解一些相关内容。
●ARP缓存
ARP高速缓存(即ARP缓存表)是ARP地址解析协议能高效运行的关键(如果有多次ARP响应时,以最后一次响应为准)。ARP给IP地址和MAC地址中间做了动态映射,也就是说缓存了一个ARP表,将得 到的IP地址和MAC地址对应起来,如果表中没有查到IP地址对应的MAC地址,才会发广播去找。
ARP缓存表采用老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可减少缓存表的长度,加快查询速度,各设备的老化时间不一想了解的小伙伴可自行上网查询。