由以太网交换机的通信原理可以知道,主机之间通信必须知道对方的MAC地址,这样交换机才能帮助转发数据帧,ARP协议就是通过IP地址查找对应MAC地址的一种协议。为了避免短时间重复查找,会将查找后的结果暂时存放在ARP 缓存中,下次需要通过ARP协议查找某个IP对应的MAC地址前将先在缓存中查找,如果没有再通过ARP协议查询。在命令提示符中输入“arp”命令可以查看它的命令格式及参数。
最经常用到的参数是“-a”或者“-g”,它们的功能相同,都是将本机的ARP缓存中的内容显示出来。要查询另外一台主机的MAC地址时,可以先“ping”一下对方主机的IP地址,如果能够“ping”通,那么缓存中就会出现那台主机的MAC地址,然后可以在本机使用“arp-a”命令进行查看。需要注意的是这种方法只能查询同一网段的主机的MAC地址,因为ARP请求数据包使用广播发送,路由器会隔离广播报文,所以ARP请求数据包只能到达同一网段的主机,只有这些主机才会发送ARP响应数据包。
上面的输出结果中最后一列的类型字段显示ARP缓存中的记录有静态与动态两种类型。动态类型就是通过ARP协议查询出来后自动添加在缓存中的记录,一段时间后将会失效并删除。用户可以向ARP缓存中手工添加记录,添加进去的是静态类型,永久生效。
在Windows7中使用“arp-s”命令添加静态ARP记录将会提示拒绝访问的错误(见图1-24)。
(www.xing528.com)
图1-24 使用arp–s添加静态记录
使用下面2条指令可以添加ARP静态记录。
(1)使用指令“netsh interface ipv4 show interfaces”查询网卡的Idx编号。
(2)使用指令“netsh-c interface ipv4 add neighbors 18 10.22.4.254 58-69-6c-a5-9a-4b”添加IP地址与MAC的绑定记录。其中的18就是第1步查询出来的活动网卡对应的Idx。
删除刚刚添加的ARP记录可以使用指令“netsh-cii delete neighbors 18”。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。