我们的主机会对整个局域网发送出ARP数据包,对方接收到ARP数据包后就会返回它的MAC给我们,我们就知道对方所在的网卡,接下来就能够开始传递数据了
如果每次要传送都需要重新来一遍这个ARP协议就会非常麻烦,因此使用ARP协议取得目标IP与它的网卡卡号后,就会计入到我们的ARP table中(这是内存中的数据),记录20分钟
ARP table中的信息都是动态更新的(一般保留20分钟更新一次)

一、简介
arp: Address Resolution Protocol,地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议;
arp命令用于操作主机的arp缓冲区,可以用来显示arp缓冲区中的所有条目、删除指定的条目或者添加静态的ip地址与MAC地址对应关系。

二、语法

-a<主机>:显示arp缓冲区的所有条目;
-H<地址类型>:指定arp指令使用的地址类型;
-d<主机>:从arp缓冲区中删除指定主机的arp条目;
-D:使用指定接口的硬件地址;
-e:以Linux的显示风格显示arp缓冲区中的条目;
-i<接口>:指定要操作arp缓冲区的网络接口;
-s<主机><MAC地址>:设置指定的主机的IP地址与MAC地址的静态映射;
-n:以数字方式显示arp缓冲区中的条目;
-v:显示详细的arp缓冲区条目,包括缓冲区条目的统计信息;
-f<文件>:设置主机的IP地址与MAC地址的静态映射。

三、实例
1)查看arp缓存
arp -nv

2)添加arp缓存条目
arp -s 10.1.1.1 00:11:22:33:44:55:66

3)删除arp缓存条目
arp -d 10.1.10.118

4)指定回复的MAC地址
arp -i eth0 -Ds 10.0.0.2 eth1 pub
提示:当eth0收到IP地址为10.0.0.2的请求时,用eth1的MAC地址应答

5)添加静态映射
[root@localhost ~]# arp -i eth0 -s 192.168.1.6 ff:ee:ee:ee:ee:ee //将目标ip地址映射固定mac