如何防范ARP欺骗技术

arp是一种将ip转化成以ip对应的网卡的物理地址的一种协议,或者说ARP协议是一种将ip地址转化成MAC地址的一种协议。它靠维持在内存中保存的一张表来使ip得以在网络上被目标机器应答。 为什么要将ip转化成mac呢?简单的说,这是因为在tcp网络环境下,一个ip包走到哪里,要怎么走是靠路由表定义。但是,当ip包到达该网络后,哪台机器响应这个ip包却是靠该ip包中所包含的mac地址来识别。也就是说,只有机器的mac地址和该ip包中的mac地址相同的机器才会应答这个ip包。因为在网络中,每一台主机都会有发送ip包的时候。所以,在每台主机的内存中,都有一个 arp–> mac 的转换表。通常是动态的转换表(注意在路由中,该arp表可以被设置成静态)。也就是说,该对应表会被主机在需要的时候刷新。这是由于以太网在子网层上的传输是靠48位的mac地址而决定的。

假设有2台机器a、b,网关为192。168。1。1 mac为00-14-78-C9-0C-66
b装了arp工具或者中了arp病毒,他向a发一个Ip包声称自己是192.168.1.1,mac为00-16-46-41-07-4a
这时,a的动态路由表就刷新了,定义192.168.1.1的mac为00-16-46-41-07-4a
这样,当a上网时向网关发一个包,这个包就被送到了b,而不是真正的网关,b则把这个包处理后转发给网关,而网关则认为这个包就是a发的,网关响应的包则直接发给a。
这样,b就得到了a发送出去的ip包,他可以对此包内的信息进行解读,如果你的信息里包含帐户密码的话,那就危险了!b可以不转发a的包,这样a就上不了网,或者有选择的抛弃,这样就可以限BT等流量和a的网速。

那如何来防范呢?
我们只需要把机器里的路由表绑定成静态的即可,这样,arp欺骗包过来我们就不会理会他了。
编辑一个批处理
@echo off
arp -d
arp -s 192.168.1.1 00-14-78-C9-0C-66
其中,ip和mac为你网关的ip和mac。
把文件放在你的启动菜单里,机器启动的时候自动执行就OK了!
可以防范arp病毒的攻击以及p2p终结者,网络执法官等软件的攻击。但是他本身不能阻止你中arp病毒。

如何得到正确地网关mac?
在能上网时,进入MS-DOS窗口,输入命令:arp –a 查看网关IP对应的正确MAC地址,将其记录下来。当然,如果已经遭受攻击了,这个可能就不准了。那么看下面:
如果已经不能上网,则先运行一次命令arp –d将arp缓存中的内容删空,计算机可暂时恢复上网(攻击如果不停止的话),一旦能上网就立即将网络断掉(禁用网卡或拔掉网线),再运行arp –a。
运行后会得到如下:
C:\Documents and Settings>arp -a
Interface: 192.168.1.100 — 0x2
Internet Address Physical Address Type
192.168.1.1 00-14-78-C9-0C-66 dynamic
最后一行就是网关的地址,注意是动态的dynamic
这时,如果你进行arp -s 进行绑定的话
那就变成:
C:\Documents and Settings>arp -a
Interface: 192.168.1.100 — 0x2
Internet Address Physical Address Type
192.168.1.1 00-14-78-C9-0C-66 static
静态的了。

[ 本帖最后由 nonamed 于 2006-11-16 04:54 编辑 ]

多谢
以后也请多发哦

支持。多发点。:victory:

:victory: :victory: :victory:

谢谢,表客气

不用那么麻烦
有个反ARP欺骗的软件可以用
我就是用它才能上网的