arp
命令(Address Resolution Protocol)用于管理和查看系统的 ARP 缓存,ARP 是一种网络协议,它将网络层(IP 地址)转换为链路层(MAC 地址),以便在同一局域网(LAN)内的设备之间进行通信。通过 arp
命令,用户可以查看、添加和删除 ARP 缓存中的条目。
基本语法
arp [选项] [主机]
[主机]
:可选参数,指定想要查询的主机 IP 地址或名称。
常用选项
-a
或--all
: 显示所有接口上的 ARP 表项,不带此选项时,默认只显示默认接口的信息。-n
或--numeric
: 以数字形式显示主机地址而非尝试 DNS 解析。-s
或--set
: 添加一条静态 ARP 条目到 ARP 表中。-d
或--delete
: 删除 ARP 表中的某个条目。-v
或--verbose
: 显示详细的处理信息。-i <接口>
: 指定网络接口(如 eth0)。
示例
-
查看所有 ARP 缓存条目:
arp -a
这个命令会列出所有接口上的 ARP 表项,包括 IP 地址、对应的 MAC 地址以及网络接口名称。
-
查看特定主机的 ARP 条目:
如果知道特定主机的 IP 地址,并想查看其对应的 MAC 地址,可以使用:arp -n 192.168.1.1
-
添加静态 ARP 条目:
为了在网络中添加一个静态 ARP 条目,可以这样做:sudo arp -s 192.168.1.10 00:1A:2B:3C:4D:5E
这将在 ARP 缓存中添加一个条目,将 IP 地址
192.168.1.10
绑定到 MAC 地址00:1A:2B:3C:4D:5E
。 -
删除 ARP 条目:
若要从 ARP 缓存中删除某个条目,可以使用如下命令:sudo arp -d 192.168.1.10
-
详细模式查看 ARP 缓存:
要获得更详细的输出信息,可以使用-v
选项:arp -av
-
指定网络接口
arp -i eth0 -a
- 显示
eth0
接口的 ARP 缓存。
- 显示