Vitsta操作系统下防范ARP欺骗的办法

我这几天我直住在北京Google公司对面的未名国际青年旅舍里,青年旅舍提供不加密的WIFI网络,可以免费上网,结果遇到ARP欺骗,我用的是Windows Vista Basic,我就用
arp -s 192.168.1.1 00-14-78-D4-DE-F1
来把网关地址改成静态的,想用这个办法来防范ARP欺骗,结果老是提示错误:

C:\Users\zola>arp -s 192.168.1.1 00-14-78-D4-DE-F1
ARP 项添加失败: 5

C:\Users\zola>

用ARP -d也无法成功执行

上网搜索一下,发现这里有一篇BLOG提到这个问题,
http://dawnh.net/windows/247/windows-2008-arp-bug/
我是用这样的办法解决被ARP欺骗的:
先写一个CMD三个字母到一个txt文本中,然后重命名为antiarp.bat
然后右键点击antiarp.bat,选择”以管理员身份运行”
然后输入:
Netsh interface ipv4 show interfaces
可以看到类似这样的内容,从里面找到当前使用的网卡的INDEX,

C:\Windows\system32>Netsh interface ipv4 show interfaces

Idx  Met   MTU   状态          名称
---  ---  -----  -----------  -------------------
  1   50 4294967295  connected    Loopback Pseudo-Interface 1
  9   25   1500  connected    无线网络连接
  8    5   1500  disconnected  本地连接
 14   40   1500  disconnected  本地连接 2

上面的idx就是网卡的编号,可以看到”无线网络连接的idx是9
然后运行

C:\Windows\system32>netsh -c “interface ipv4” add neighbors 9 “192.168.1.1” “00-14-78-D4-DE-F1”

好了,把网关192.168.1.1的网关地址设置为静态的了,这下不怕ARP欺骗了.
我再检查一下

C:\Windows\system32>arp -a

接口: 192.168.1.222 --- 0x9
  Internet 地址         物理地址              类型
  192.168.1.1           00-14-78-d4-de-f1     静态
  192.168.1.255         ff-ff-ff-ff-ff-ff     静态

C:\Windows\system32>

好了,搞定了..
arp -s 不工作,幸好还有netsh -c “interface ipv4” add neighbors 9 “192.168.1.1” “00-14-78-D4-DE-F1″可以工作.
neighbors 9中的9就是我找到的网卡的编号.
00-14-78-D4-DE-F1 是我找到的网关的网卡的物理地址.

使用上面的命令重要的是找出网卡的index和网关的真实MAC地址.

arp -s 和arp -d不工作的原因我还没有找到,谁能告诉我为什么不能工作?真的是Vista 下的ARP命令的BUG吗?

相关文章:《科普:如何防范ARP欺骗http://www.alouz.com/weblog/?p=776
Htts安全证书可以防范通过arp欺骗窃取网站帐号信息

2 thoughts on “Vitsta操作系统下防范ARP欺骗的办法”

  1. 不用”先写一个CMD三个字母到一个txt文本中,然后重命名为antiarp.bat
    “这么麻烦吧.直接”开始”-“所有程序”-“附件”-右键”命令提示符”,选择用管理员权限运行就ok了

    vista下管理员权限控制那个uac导致的cmd问题吧,我之前就有过ipconfig都用不了的问题,直接右键”管理员权限运行”就all done了吧

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据