交换机
园区网交换机
数据中心与云计算交换机
行业精选交换系列
工业交换机
意图网络指挥官
无线
放装型无线接入点
墙面型无线接入点
智分无线接入点
室外无线接入点
场景化无线
无线控制器
行业精选无线系列
物联网
统一运维
身份管理
服务产品
运营商
政府
金融
互联网
制造业
医疗卫生
交通
公共安全
首页 >服务与支持 >常见问题 >ARP掌握这几点就够了!
ARP协议是网络技术绕不开的一个协议,它是网络通信的基础,但由于一般不需要额外配置,因此大家一般实际用的不多,
以下总结ARP的几个关键点:
ARP叫做地址解析协议,有些同学会将解析的IP地址还是MAC地址混淆了。
由于在网络通信过程中源IP和目的IP是实现就知道的,且在行进过程中是不会发生变化的(NAT场景除外)。所以IP地址不用再解析了,所以在这里解析的是目标IP的MAC地址。
2、那为何要ARP解析目标IP的MAC地址呢?
由于数据包在发送时,需要对二、三层进行数据包封装,三层是IP地址,二层是MAC地址。如果不知道目标IP的MAC地址,那么主机在发送数据时,是没办法完成数据包发送的。所以要在组装数据包之前,主机是要知道目标IP的MAC地址的。
3、ARP协议报文除了解析到目标IP的MAC地址外,还可以做什么呢?
1、对于终端(电脑、路由器)等三层接口来说,ARP协议报文主要是用来获取目标IP的MAC地址,用于封装数据包;
2、对于交换机、透明模式的防火墙等二层作用的设备来说,ARP协议报文还可以用来做这些设备的MAC地址表的刷新。
比如在VRRP主备切换场景,当备设备切换到主设备时,会主动发送一个免费ARP。当交换机收到这个免费ARP时,就会更新其MAC表项,访问vrrp虚ip时,从就原来的A接口变化为B接口。此时交换机才能将报文从B接口发出去,在交换机这一环节完成“vrrp的路径切换”
4、访问任何IP地址之前,如果没有其对应MAC地址,设备都会发送ARP请求报文吗?
答案是不一定的。
1)如果访问的目标ip和自己是同网段的,如果设备上没有对应ARP表的话,就会发送ARP请求报文;
2)如果访问的目标ip和自己且不是同网段的,在有配置下一跳ip的默认路由的情况下,即有自己网关ip的arp时,此时就不用再发送ARP请求报文了。因为默认就使用网关的mac地址作为目标ip的mac地址了,一定程度上也避免了网络中arp报文“泛滥成灾”。(如果默认路由配置的是出接口而非下一跳ip,那么还是会请求arp报文的)
5、代理ARP是做什么用的?
代理指的是“中间人”的角色。当请求一个非同网段ip的mac地址时,由于arp报文是不能跨网段的,所以肯定是无法跨网段请求真正ip的mac地址。同时由于网络是三层“逐跳”传输的,只要能将报文发送到我的下一跳路由器即可。基于此,三层接口只要收到非自己接口ip网段的arp请求,且自己有目标地址的路由的情况下,此时就会把自己当做这个中间人,行使了arp代答的职责,代替目标ip地址进行arp应答。所以代理ARP应该用更完整的叫法:ARP应答代理。默认情况下,三层接口的arp代理应答功能是打开的。如果要关闭,可通过在接口下配置以下命令:R1(config-if-GigabitEthernet 0/1)#no ip proxy-arp