什么是ARP协议,如何配置静态ARP
什么是ARP协议,如何配置静态ARP
ARP(Address Resolution Protocol)即地址解析协议,是用来将对方IP地址解析为MAC地址的一种协议。
在局域网通信中,当PC或其它网络设备有数据要发送给另一个主机或设备时,它必须知道对方的IP地址。但仅有IP地址是不够的,因为IP数据报文必须封装成帧才能通过物理网络发送,因此发送方PC还必须有接收方的物理地址(MAC地址)才可以,ARP就是实现将对方IP地址解析为MAC地址这个功能的协议。
ARP的基本概念和功能
ARP的主要功能是通过目标设备的IP地址查询其MAC地址,从而完成从IP地址到MAC地址的映射。在网络通信中,IP地址用于网络层寻址,而MAC地址则用于数据链路层识别网络设备。ARP解决了IP地址与MAC地址之间的转换问题,确保数据能够准确无误地到达目标设备。
ARP的工作原理
当一台主机需要向另一台主机发送数据时,它会首先检查自己的ARP缓存中是否有目标主机的IP地址对应的MAC地址。如果没有,它会在局域网内广播一个ARP请求数据包,询问目标IP地址的MAC地址。局域网内的其他主机接收到这个请求后,会检查请求中的目标IP地址是否是自己的。如果是,则会向发送方回复一个ARP响应数据包,包含自己的MAC地址。发送方收到响应后,将目标主机的MAC地址存储到自己的ARP缓存中,以便后续通信使用。
ARP的类型
- 动态ARP:通过ARP报文自动生成和维护,可以被老化或更新。适用于拓扑结构复杂、通信实时性要求高的网络。
- 静态ARP:由网络管理员手工建立IP地址和MAC地址之间的固定映射关系,不会被老化或更新。常用于特殊网络环境,如防止ARP攻击,实现安全可靠的网络环境。
ARP的应用场景和重要性
ARP在局域网中至关重要,因为它解决了IP地址与MAC地址之间的转换问题,确保数据能够准确无误地到达目标设备。在IPv4网络中,ARP是网络层通信的基础设施之一,尽管在IPv6中已被NDP替代,但其基本原理和重要性仍然值得了解和应用。
ARP表项可分为动态ARP静态ARP两种类型。
动态ARP,是由ARP协议通过ARP报文自动生成和维护,可以被老化,可以被新的ARP报文更新,可以被静态ARP表项覆盖。当到达老化时间、接口Down时会删除相应的动态ARP表项。
静态ARP,是指IP地址和MAC地址之间有固定的映射关系,是由手动配置生成。
如图所示,PC2、PC3、PC4处于同一局域网中,并为相同网段。
现PC2要和PC4进行通信,首先,PC2查看自己的ARP表,确定其中是否包含有PC4对应的ARP表项。如果找到了PC4对应的MAC地址,则PC2直接利用ARP表中PC4对应的MAC地址和IP地址,对IP数据包进行帧封装后,将数据包发送给PC4。
如果PC2在本地ARP表中找不到PC4对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为PC2的IP地址和MAC地址,目标IP地址为PC4的IP地址,目标MAC地址为全f的MAC地址。
注意:因为ARP请求报文是以广播方式发送,该网段上的所有主机(PC3也能收到)都可以接收到该请求,但只有被请求的主机PC4会对该请求进行处理和响应回复。
PC4在收到PC2发送的ARP请求报文后,也会比较自己的IP地址和ARP请求报文中的目标IP地址,发现和自己的IP地址相同,则进行如下处理:将ARP请求报文中的发送端PC2的IP地址和MAC地址存入自己的ARP表中。然后以单播方式发送ARP响应报文给PC2,其中包含了自己的MAC地址。如下图所示,PC4向PC2发出一个包含其MAC地址的ARP响应报文。
分别在PC2和PC4是查看arp表项,可看到PC2和PC4分别生成了对方的arp表
上述PC2和PC4上的arp表项都是动态生成的,若一段时间后没有更新,便会自动删除。
配置静态arp
静态ARP表项通过手工配置和维护,不会被老化,不会被动态ARP表项覆盖,所以配置静态ARP表项可以增加通信的安全性。
静态ARP表项可以限制和指定IP地址的设备通信时只使用指定的MAC地址,使得攻击报文无法修改此表项的IP地址和MAC地址的映射关系,从而保护了本设备和指定设备间的正常通信。
如上图,在路由器R1上为PC2配置静态ARP表项,防止PC2的ARP表项被ARP攻击报文修改,确保局域网内主机能正常访问PC2。
使用命令在R1上配置PC2的的静态arp。
[R1]arp static 10.1.1.2 5489-982B-3EBC
使用display arp all查看arp表项
=============================================================================
附:
缺省情况下,动态ARP表项的老化超时时间为1200秒,即20分钟,可使用命令arp expire-time expire-time,设置动态ARP表项的老化超时时间。
2.可使用reset arp ?来重置arp表项
reset arp ?
all Reset static and dynamic ARP entry
dynamic Reset dynamic ARP entry
interface Reset ARP entry by interface
packet ARP packet
static Reset static ARP entry