ARP概述
ARP地址解析协议是将IP地址解析到正确的MAC地址。ARP表项分为静态与动态,动态ARP是利用广播报文,动态执行并自动进行IP地址到以太网MAC地址的解析,无需管理员手工处理。静态ARP是建立IP地址和MAC地址之间固定的映射关系,在主机和路由器不能动态调整此映射关系,需网络管理员手工添加。
Proxy ARP也就是代理ARP,当ARP请求是从一台主机发出,用以解析处于同一逻辑三层网络却不在同一物理网段上的另一台主机的硬件地址时,连接它们的具有代理ARP功能的设备就可以应答该请求,使处于不同物理网段的主机可以正常进行通信。
实验拓扑
实验概述:
R1作为出口网关,连接到外网,公司内所有员工使用10.1.0.0/16网段,通过交换机连接到路由器上。
网络管理员通过配置静态ARP防止ARP欺骗攻击,保证通信安全,又由于公司内所有主机都没有配置网关,且分属于不同广播域,造成无法正常通信,网络管理员需要在路由器上配置ARP代理功能,实现网络内所有主机的通信。
实验配置
同理测试PC2,也需要测试PC3与网关的连通性。
测试完后,直连网络连通性正常。
配置静态ARP
ARP工作行为容易被攻击者利用,如攻击者发送伪造的ARP报文,而且报文内里面所通告的IP地址和MAC地址的映射是错误的,则主机或网关会把错误的映射更新到ARP表中。导致主机发送的数据帧无法正确发送给目标MAC。
如果公司内主机感染了ARP病毒,主机对网关R1进行ARP攻击,向网关R1通告含错误映射的ARP通告,导致网关路由器使用不正确的动态ARP映射条目,造成其它主机无法与网关正常通信。
模拟ARP攻击发生时,网络的通信受到了影响,在网关R1上,使用arp static 10.1.1.1 5489-9892-0081命令在路由器上静态添加一条关于PC1的错误ARP映射,假定此映射条目通过一个ARP攻击报文所获得(静态优于动态),所以错误的映射将出现在ARP表项中。
[Huawei]arp static 10.1.1.1 5489-9892-0081
从AR1GE0/0/0接口抓包
如何应对ARP欺骗
应对ARP欺骗攻击,防止其感染路由器ARP表,可通过配置静态ARP表项来实现。
如果IP地址和MAC地址的静态映射出现在ARP表中,则通过动态ARP学来的映射无法进入ARP表。
针对公司网络现状,网络管理员可以在R1上手工配置3条正确的ARP映射,
公司网络中ARP攻击比较常见,防御的办法就是:在ARP表中手工添加ARP映射,优点:操作简单,缺点:所有网络设备都有ARP表项,如果全部映射那工作量太大,如果更换IP或者MAC后,还需要手工更新。(适合小企业),动态ARP协议维护ARP表则更简便。
配置Proxy ARP
公司网络被R1分割为两个独立的广播域,每个路由器对应一个IP网络,分别是10.1.1.0、10.1.2.0
默认情况下,ARP代理功能是关闭的,如果不开启ARP代理,PC1与PC3之间无法互相通信
PC2发出了ARP广播,却一直没有收到ARP响应,原因是PC1与PC3分属两个不同的广播域,PC3发出的APR请求无法跨域中间路由器。
启用R1 G0/0/0接口的ARP代理功能
PC1 ping PC3 ,看抓包现象
PC3想要访问PC所在的广播域也需要开启代理ARP功能
IP网络过大,广播对网络的影响也相对增大,在不改变网络主机配置的情况下,由管理员在网络中透明的插入一台路由器,靠路由器分割出多个广播域,降低了广播对网络的影响。
在当前的IP网络中,此种做法并不多见,其缺点是主机间的通信会因为引入额外的路由器而延迟增大,并存在瓶颈问题,所以一般作为临时解决方案。