由于ARP协议的缺陷,导致任一台主机在收到ARP包时,没有任何验证就更新自己的ARP缓存,在ARP欺骗发生的时候,更是会发生随意更改自己的网关的IP+MAC的指向,从而导致了掉线的发生。
解决的思路就是,摒弃这种动态更新ARP缓存的方式,改用由管理员静态指定的方式。在一个局域网中要实现正常的上网行为,就必须要保证两个方面通信正常,(1)主机(电脑)上的指向本地网关的IP+MAC正确;(2)网关(通常是路由)上,指向本地电脑的IP+MAC正确。根据上面两个原则,我们就可以保证所有主机和路由器的通信正常,就可以防止被欺骗而引起掉线。解决方案就是要做双向绑定;在本地所有电脑上绑定路由器的IP+MAC地址;在网关(路由器)上绑定所有电脑的IP+MAC地址。
1、如何在路由器上绑定所有主机(电脑)的IP+MAC地址;通常的,在路由器上绑定所有的主机的IP+MAC地址比较简单,艾泰科技甚至提供出了一键绑定所有主机IP+MAC地址的功能,只需要点击“全部绑定”就可以一次性绑定所有电脑的IP+MAC地址,如下图:
2、如何在主机上绑定网关(路由器)的IP+MAC地址;
1)首先,获得路由器的内网的MAC地址(例如HiPER网关地址192.168.16.254的MAC地址为0022aa0022aa)。
2)打开记事本,编写一个批处理文件rarp.bat,保存后缀名为.bat,内容如下:
@echo off
arp -d
arp -s 192.168.16.254 00-22-aa-00-22-aa
注意:将文件中的网关IP地址和MAC地址更改为您自己的网关IP地址和MAC地址。
3)将这个批处理软件拖到“windows--开始--程序--启动”中,保证Windows每次开机都可以执行这个批处理文件。
3、做完上面两个步骤后,双向绑定就已经完成了。但是在实际中发现,在电脑上绑定网关(路由器)的IP+MAC地址后,有一些变种的ARP欺骗病毒会将电脑上的绑定会删除掉,只删掉一台电脑的绑定后还无关紧要,但当这种病毒在局域网中开始蔓延,感染了大部分主机(电脑)的时候,上述做的双向绑定实质上已经失效了。此时在局域网中依旧会出现大面积的掉线情况,针对此种情况,我们推荐用户采用下面的方法对步骤2进行增强:
1)跳过上述步骤2
2)安装AntiARP防火墙单机版,下载地址:
http://www.antiarp.com/download.htm 。该软件为了防止主机(电脑)上的静态绑定被删除,会每隔一个时间段自动检查,如果发现被删除会重新进行绑定。
3)在网关的IP/MAC处,手动设置网关的IP地址和MAC地址,输入你局域网的网关的IP+MAC地址,确定
4)保持该软件随电脑启动而启动,即可。
4、如何查看当前主机的静态绑定是否生效。
在命令行中输入arp –a,如果对应的静态绑定的类型(Type)为static,说明已经生效;如果类型(Type)为dynamic,则说明绑定没有生效。