ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御

时间:2021-11-02 00:44:25

ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御

1.4.3  ARP缓存表的构成

在局域网的任何一台主机中,都有一个ARP缓存表。该缓存表中保存中多个ARP条目。每个ARP条目都是由一个IP地址和一个对应的MAC地址组成。这样多个ARP条目就组成了一个ARP缓存表。当某台主机向局域网中另外的主机发送数据的时候,会根据ARP缓存表里的对应关系进行发送本文选自ARP协议全面实战手册——协议详解、攻击与防御。

1.查看ARP缓存记录本文选自ARP协议全面实战手册——协议详解、攻击与防御

【实例1-6】查看ARP缓存记录。执行命令如下所示:

  • C:\Users\Administrator>arp -a
  • 接口: 192.168.5.4 --- 0xc
  • Internet 地址          物理地址                类型
  • 192.168.5.1            c8-3a-35-84-78-1e         动态
  • 192.168.5.255         ff-ff-ff-ff-ff-ff                             静态
  • 224.0.0.22             01-00-5e-00-00-16         静态
  • 224.0.0.251            01-00-5e-00-00-fb          静态
  • 224.0.0.252            01-00-5e-00-00-fc          静态
  • 239.255.255.250       01-00-5e-7f-ff-fa             静态
  • 255.255.255.255               ff-ff-ff-ff-ff-ff                             静态

输出信息显示了本机接口为192.168.5.4地址的ARP缓存表。每行表示一个ARP条目。

2.手动添加ARP记录

【实例1-7】下面将IP地址192.168.1.1和MAC地址00-aa-00-62-c6-09添加到缓存记录中。执行命令如下所示本文选自ARP协议全面实战手册——协议详解、攻击与防御:

  • C:\Users\Administrator>arp -s 192.168.1.1 00-aa-00-62-c6-09

执行以上命令后没有任何输出信息。如果要想查看添加的ARP缓存记录,可以使用arp -a命令查看。如下所示:

  • C:\Users\Administrator>arp -a
  • 接口: 192.168.5.4 --- 0xc
  • Internet 地址          物理地址                类型
  • 192.168.1.1             00-aa-00-62-c6-09         静态
  • 192.168.5.1            c8-3a-35-84-78-1e         动态
  • 192.168.5.255         ff-ff-ff-ff-ff-ff                             静态
  • 224.0.0.22             01-00-5e-00-00-16         静态
  • 224.0.0.251            01-00-5e-00-00-fb          静态
  • 224.0.0.252            01-00-5e-00-00-fc          静态
  • 239.255.255.250       01-00-5e-7f-ff-fa             静态
  • 255.255.255.255               ff-ff-ff-ff-ff-ff                             静态

从输出的信息中,可以看到手动添加的ARP缓存条目。手动添加的条目默认被添加到第一行,而且手动添加的ARP条目类型为静态。

3.删除ARP记录

【实例1-8】下面删掉IP地址为192.168.1.1的指定的记录。执行命令如下所示:

  • C:\Users\Administrator>arp -d 192.168.1.1

执行以上命令后,接口地址为192.168.1.1的ARP缓存表明将被删除。

【实例1-9】下面清空所有的记录。执行命令如下所示:

  • C:\Users\Administrator>arp -d
  • C:\Users\Administrator>arp -d *

执行以上命令后,整个ARP缓存表将被删除。此时执行arp -a命令查看ARP缓存表,将显示如下所示的信息本文选自ARP协议全面实战手册——协议详解、攻击与防御:

  • C:\Users\Administrator>arp -a
  • 未找到 ARP 项。

输出的信息表示该缓存表中没有任何条目。

注意:使用arp命令在Windows和Linux下删除ARP缓存条目的方法有点区别。在Linux下,删除ARP条目时,必须指定接口地址。在Windows下,可以直接执行arp -d命令删除。在Linux下,如果不指定接口时,将会提示“arp: need host name”信息本文选自ARP协议全面实战手册——协议详解、攻击与防御。