系统中配置错误或过期的 ARP 缓存条目可能是网络连接问题的原因之一。
您是否知道清除系统的 ARP 缓存可以解决加载问题和连接错误?
本文介绍如何在各种操作系统上检查和清除ARP缓存。
但在那之前…

什么是ARP缓存?
ARP代表地址解析协议,负责发现 MAC 地址并将其映射到 IP 地址,以便与本地网络上的其他系统成功通信。该协议工作在数据链路层和网络层之间。
系统无需每次都询问路由器特定设备的位置及其 MAC 地址,而是使用之前解析的 IP 地址进行连接。
一旦我们的系统使用 ARP 协议找到特定 IP 地址的 MAC 地址,就会将其存储在表中以供将来使用。该表称为 ARP 缓存。它包含已知 IP 地址及其 MAC 地址的列表。
ARP 请求是广播,ARP 响应是单播。
?
当链接到网络的设备的 IP 地址发生更改时,ARP 条目可能会损坏或过期,并且新条目不一定会使数据库中的过期条目失效。
因此,网络性能可能会受到影响,并且可能会出现负载和连接问题。在这种情况下,只需清除 ARP 缓存即可解决问题,因为所有请求都将再次经过整个 ARP 过程。在此过程中,新条目将保存在 ARP 表中。
不建议总是清除ARP缓存,因为重建ARP缓存表时可能会出现错误。或者,您也可以重新启动路由器或系统来解决连接问题。
如何清除ARP缓存?
您可以使用命令行轻松清除任何操作系统上的 ARP 缓存。让我们开始吧。

视窗
步骤 1:打开命令提示符并以管理员身份运行。
步骤 2:要查看 ARP 缓存表,只需输入以下命令:
arp -a此命令显示 IP 地址及其关联的 MAC 地址。
步骤 3:接下来,使用 netsh 实用程序删除缓存表。
netsh interface IP delete arpcache或者你可以使用
arp -d步骤4:如果您想删除缓存中的特定条目而不是整个表。
arp -d <ip-address>示例输出:
C:\WINDOWS\system32>arp -a
Interface: 192.168.29.64 --- 0xd
Internet Address Physical Address Type
192.168.29.1 a8-da-0c-e8-0e-e6 dynamic
224.0.0.22 01-00-5e-00-00-16 static
224.0.0.251 01-00-5e-00-00-fb static
224.0.0.252 01-00-5e-00-00-fc static
Interface: 192.168.56.1 --- 0x14
Internet Address Physical Address Type
224.0.0.22 01-00-5e-00-00-16 static
224.0.0.251 01-00-5e-00-00-fb static
239.255.255.250 01-00-5e-7f-ff-fa static
C:\WINDOWS\system32>netsh interface IP delete arpcache
Ok.
使用 netsh 实用程序清除缓存表会返回“OK”响应。
Linux
步骤 1:打开终端并使用以下 IP 实用程序命令清除整个 ARP 表。
ip -s -s neigh flush all步骤 2:如果要删除特定地址的 ARP 记录,请使用 arp 实用程序。
arp -d <ip-address>步骤3:删除条目后,只需使用以下命令即可在Linux上查看ARP表:
arp -n此命令显示整个 ARP 表。
输出示例:
┌──(root💀kali)-[/home/]
└─# arp -d 10.0.2.1
┌──(root💀kali)-[/home/]
└─# arp -n
Address HWtype HWaddress Flags Mask Interface
10.0.2.1 (incomplete)
10.0.2.2 ether 01:00:5e:00:00:fc C eth0
10.0.2.3 ether a8:da:0c:e8:0e:e6 C eth0在这里您可以看到特定地址的缓存条目已被清除。

苹果
步骤 1:在 Mac 上打开终端并使用以下命令:
步骤2:查看已有的ARP表项。
sudo arp -a步骤 3:清除特定接口的缓存
sudo arp -d 192.168.29.1 ifscope en0 步骤4:清除整个缓存表
sudo arp -a -d输出示例:
$ sudo arp -a
? (192.168.29.1) at 01:00:5e:00:00:fc on en0 ifscope [ethernet]
? (192.168.2.13) at a8:da:0c:e8:0e:e6 on en0 ifscope [ethernet]
? (192.168.1.21) at 01:00:5e:00:0e:16 on en0 ifscope permanent [ethernet]
$ sudo arp -a -d
192.168.29.1 (192.168.29.1) deleted
192.168.2.13 (192.168.2.13) deleted
192.168.1.21 (192.168.1.21) deleted结论
如果同一网络中的某个特定 IP 地址工作正常,但无法 ping 通它,则表明出现了问题。您可能需要再次重建 ARP 缓存表。
我们希望本文能帮助您了解如何清除各种操作系统上的 ARP 缓存。
您可能还想了解如何更改 DNS 服务器以加快浏览速度,或者如何检测 Windows、Linux 和 Mac 上的 Rootkit。




![2021 年如何设置 Raspberry Pi Web 服务器 [指南]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)

