![]() ![]()
ARP的分析与解决.
如果您的网络出现,整体突然掉线,或者有不定时的部分机器掉线,再或者出现一台一台机器的掉线.而且一般情况下几种掉线都会自动恢复.那就是ARP欺骗. ARP欺骗原理: 在同一NET内的所以机器是通过MAC地址通讯。方法为,PC和另一台设备通讯,PC会先寻找对方的IP地址,然后在通过ARP表(ARP表里面有所以可以通讯IP和IP所对应的MAC地址)调出相应的MAC地址。通过MAC地址与对方通讯。也就是说在内网中各设备互相寻找和用来通讯的地址是MAC地址,而不是IP地址。 但是当初ARP方式的设计没有考虑到过多的安全问题。给ARP留下很多的隐患,ARP欺骗就是其中一个例子。 网内的任何一台机器都可以轻松的发送ARP广播,来宣称自己的IP和自己的MAC。这样收到的机器都会在自己的ARP表格中建立一个他的ARP项,记录他的IP和MAC地址。如果这个广播是错误的其他机器也会接受。例如: 192。168。1。11机器MAC是 00:00:00:11:11:11,他在内网广播自己的IP地址是192。168。1。254(其实是路由器的IP),MAC地址是00:00:00:11:11:11(他自己的真实MAC).这样大家会把给192。168。1。254的信息和发给00:00:00:11:11:11.也就是192。168。1。11..。 有了这个方法欺骗者只需要做一个软件,就可以在内网想骗谁就骗谁.而且软件网上到处都是,随便DWON随便用.要多随便有多随便啊... 基于原理,ARP在技术上面又分为,对PC的欺骗和对路由的欺骗.他们的区别在后面的ARP解决里面仔细阐 症状: 整个局域网中,计算机的网络速度很慢.打开一个网页时,IE状态栏中会闪现莫名其妙网址. 使用杀毒软件都没有效果, 原因: 通常情况下,因为局域网内某一台计算件感染了ARP病毒,然后***整个局域网中的计算机. 解决方法: 掉线时内网是互通的,计算机却不能上网。方法是在能上网时,进入MS-DOS窗口,输入命令:arp –a查看网关IP对应的正确MAC地址,将其记录,如果已不能上网,则先运行一次命令arp –d将arp缓存中的内容删空,计算机可暂时恢复上网,一旦能上网就立即将网络断掉,禁用网卡或拔掉网线,再运行arp –a。 如已有网关的正确MAC地址,在不能上网时,手工将网关IP和正确MAC绑定,可确保计算机不再被***影响。可在MS-DOS窗口下运行以下命令:arp –s 网关IP 网关MAC。如被***,用该命令查看,会发现该MAC已经被替换成***机器的MAC,将该MAC记录,以备查找。找出病毒计算机:如果已有病毒计算机的MAC地址,可使用NBTSCAN软件找出网段内与该MAC地址对应的IP,即病毒计算机的IP地址。 一、双相ARP绑定的方法 在局域网中,通信前必须通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗,对网络的正常传输和安全都是一个很严峻的考验。 “又掉线了!!!”每当听到客户的抱怨声一片响起,网管员就坐立不安。其实,此起彼伏的瞬间掉线或大面积的断网大都是ARP欺骗在作怪。ARP欺骗***已经成了破坏网吧经营的罪魁祸首,是网吧老板和网管员的心腹大患。 目前知道的带有ARP欺骗功能的软件有“QQ第六感”、“网络执法官”、“P2P终结者”、“网吧传奇杀手”等,这些软件中,有些是人为手工操作来破坏网络的,有些是做为病毒或者***出现,使用者可能根本不知道它的存在,所以更加扩大了ARP***的杀伤力。 从影响网络连接通畅的方式来看,ARP欺骗一般有两种***可能,一种是对路由器ARP表的欺骗;另一种是对内网电脑ARP表的欺骗,当然也可能两种***同时进行。不管理怎么样,欺骗发送后,电脑和路由器之间发送的数据可能就被送到错误的MAC地址上,从表面上来看,就是“上不了网”,“访问不了路由器”,“路由器死机了”,因为一重启路由器,ARP表会重建,如果ARP***不是一直存在,就会表现为网络正常,所以网吧业主会更加确定是路由器“死机”了,而不会想到其他原因。为此,宽带路由器背了不少“黑锅”,但实际上应该ARP协议本身的问题。好了,其他话就不多说,让我们来看看如何来防止ARP的欺骗吧。 上面也已经说了,欺骗形式一般有欺骗路由器ARP表和欺骗电脑ARP两种,我们的防护当然也是两个方面的,首先在路由器上进行设置,来防止路由器的ARP表被恶意的ARP数据包更改;其次,我们也会在电脑上进行一下设置,来防止电脑的ARP表受恶意更改。两个方面的设置都是必须的,不然,如果您只设置了路由器的防止ARP欺骗功能而没有设置电脑,电脑被欺骗后就不会把数据包发送到路由器上,而是发送到一个错误的地方,当然无法上网和访问路由器了。 一、设置前准备 当使用了防止ARP欺骗功能(IP和MAC绑定功能)后,最好是不要使用动态IP,因为电脑可能获取到和IP与MAC绑定条目不同的IP,这时候可能会无法上网,通过下面的步骤来避免这一情况发生吧。 1. 把路由器的DHCP功能关闭。 2. 2.给电脑手工指定IP地址、网关、DNS服务器地址。 二、设置路由器 这里以TP-link490路由器和Routeros2.96为例, 首先是TP-link490,升级固件后得到“IP与MAC绑定”功能 打开“静态ARP绑定设置” 打开“ARP映射表” 这是路由器动态学习到的ARP表,可以看到状态这一栏显示为“未绑定”。如果确认这一个动态学习的表没有错误(如果网络是正常运行的,而且不同IP对应的MAC不一样,一般就没有错误)。我们把这一个表进行绑定,并且保存为静态表,这样路由器重启后这些条目都会存在,达到一劳永逸的效果。 点击“全部绑定” 可以看到状态中已经为已绑定,这时候,路由器已经具备了防止ARP欺骗的功能,上面的示范中只有三个条目,如果您的电脑多,操作过程也是类似的。有些条目如果没有添加,也可以下次补充上去。除了这种利用动态学习到的ARP表来导入外,也可以使用手工添加的方式,只要知道电脑的MAC地址,手工添加相应条目就可。 为了让下一次路由器重新启动后这些条目仍然存在,我们点击了“全部导入”,然后再次打开“静态ARP绑定设置”窗口 可以看到静态条目已经添加,而且在绑定这一栏已经打上勾,表示启用相应条目的绑定。到此,我们已经成功设置路由器来防止192.168.1.111、192.168.1.112、222.77.77.1这三个IP受ARP欺骗的***,如果有更多的电脑,只是条目数不同,设置过程当然是一样的,不是很难吧? 三、设置电脑防止ARP欺骗 路由器已经设置了防止ARP欺骗功能,接下来我们就来设置电脑的防止ARP欺骗了。微软的操作系统中都带有ARP这一命令行程序,我们可以在windows的命令行界面来使用它。打开windows的命令行提示符如下: 通过“arp-s +路由器IP如192.168.1.1+路由器的MAC地址”这一条命令来实现对路由器的ARP条目的静态绑定,可以看到在arp -a 命令的输出中,已经有了我们刚才添加的条目,Type类型为static表示是静态添加的。至此,我们也已经设置了电脑的静态ARP条目,这样电脑发送到路由器的数据包就不会发送到错误的地方去了。 怎么知道路由器的MAC地址是多少呢?可以打开路由器的管理界面,进入“网络参数”->“LAN口设置”: LAN口的MAC地址就是电脑的网关的MAC地址。 细心的人可能已经发现了,如果使用上面的方法,电脑每次在重启后都需要输入上面的命令来实现防止ARP欺骗,有没有更简单的方法自动来完成,不用手工输入呢?有! 我们可以新建一个批处理文件如static_arp.bat,注意后缀名为bat。编辑它,在里面加入我们刚才的命令: 保存就可以了,以后可以通过双击它来执行这条命令,还可以把它放置到系统的启动目录下来实现启动时自己执行。打开电脑“开始”->“程序”,双击“启动”打开启动的文件夹目录,把刚才建立的static_arp.bat复制到里面去: 双向绑定就完成了。 Routeros2.96的IP、MAC绑定方法: 用winbox登陆Routeros,选择IP—ARP, IP前面带“D”的,表示dymanic,动态的意思,双击这个IP, 选择:“COPY”, 单击“OK”, 前面的D标准就消失了,然后关闭这个窗口,选择Interfaces----你的LAN网卡— arp属性这里选择“reply-only”(不再学习),这样只有帮定过的IP才可以通过路由上网 OK。完成路由器上的绑定,客户机批处理操作与上面一样。 |
转载于:https://blog.51cto.com/longxinjian/204320