arp -a 是用于显示本地机器的 ARP 缓存表 的命令。ARP(Address Resolution Protocol)是一个网络协议,用于将网络层(如 IPv4 地址)转换为链路层(如 MAC 地址)地址。

命令解释

  • arp:表示 ARP 命令。
  • -a:这个选项告诉 arp 命令显示当前 ARP 缓存中的所有条目。

ARP 缓存表

ARP 缓存表存储了 IP 地址与对应的 MAC 地址的映射。在局域网中,当一个设备想要与另一个设备通信时,它需要知道目标设备的 MAC 地址。如果目标 IP 地址在 ARP 缓存表中存在,设备可以直接使用缓存中的 MAC 地址;如果不存在,则会发送 ARP 请求广播,请求目标设备回应其 MAC 地址。

执行 arp -a 时输出的内容

运行 arp -a 后,你会看到类似下面的输出(这取决于你的网络配置):

Interface: 192.168.1.2 --- 0x7
  Internet Address      Physical Address      Type
  192.168.1.1          00-14-22-01-23-45     dynamic
  192.168.1.3          00-14-22-01-23-46     dynamic
  192.168.1.4          00-14-22-01-23-47     dynamic

字段说明

  • Internet Address:显示目标设备的 IP 地址。
  • Physical Address:显示目标设备的 MAC 地址(通常是 6 字节长,使用十六进制表示)。
  • Type:ARP 条目的类型。通常有两种类型:
    • dynamic:表示该条目是动态生成的,通常是通过 ARP 请求和响应获得的。
    • static:表示该条目是静态配置的,不会过期。

常见用途

  • 查看网络设备:你可以查看当前与计算机通信的设备列表及其 MAC 地址。
  • 诊断网络问题:如果 ARP 表中没有目标设备的 MAC 地址,或者出现不一致的 IP-MAC 映射,可能会影响网络通信。
  • 清除 ARP 缓存:可以使用 arp -d 命令删除某个条目,或者 arp -d * 删除所有缓存条目,迫使设备重新进行 ARP 请求。

常见操作

  1. 查看 ARP 缓存表arp -a
  2. 删除某个 ARP 缓存条目arp -d 192.168.1.1
  3. 删除所有 ARP 缓存条目arp -d *

总结

arp -a 是一个有用的命令,它允许你查看设备的 ARP 缓存,帮助诊断网络连接问题。