为了预防 ARP 病毒的攻击,一般都建议 Windows 用户把本机和网关实现 IP 与物理地址的绑定。
Windows 下的绑定命令格式为: ARP -s [IP地址] [MAC地址]
尽管命令很简单,但是对于初级用户仍然是一件困难的事情,特别是还要通过运行 ipconfig.exe、ping、arp -a 等命令获取网关和本机的 MAC 地址就更是一件难事。即使是有经验的网管,敲这些命令,再获取数据,再完成绑定,也是一件单调乏味的事情。为了简化操作、提高效率,有必要发挥程序的作 用,写一段代码来完成这项工作。那些 VC++、Delphi、C# 之流的大型编程自然能完成编程任务,但是总给人大动干戈的味道。其实,充分发挥 DOS 批处理的威力,只用写一些“脚本”就可以完成这些事情了。
只要把以下代码保存成一个扩展名为 .bat 的批处理文件,需要的时候用鼠标双击一下,一切事情就全部搞定了。
程序的流程如下:
带参数 /all 运行 ipconfig.exe 程序,运行结果保存到生成的 ipconfig.txt 文本文件里。
运行 find.exe 程序,在 ipconfig.txt 文件里搜索字符串 "Physical Address"。find.exe 程序的运行结果,保存到生成的文本文件 phyaddr.txt 里。在我的机器上,phyaddr.txt 内容为(实际文件没有行号):
1,
2,---------- IPCONFIG.TXT
3, Physical Address. . . . . . . . . : 00-00-E2-89-9E-BD
4,
语句 for /f "skip=2 tokens=12" %%M in (phyaddr.txt) do set Mac=%%M 是取得本地物理 MAC 地址的语句,结果临时保存在 %Mac% 变量里。“for ...”语句的意思是,phyaddr.txt 文件的内容,跳过前面 2 行,余下的行取第 12 列,每列之间的分隔符为默认的"空格"。注意本行的列包括单词和所有的“.”字母。这样 Mac=00-00-E2-89-9E-BD,就是本机网卡的物理地址了。
下面取本机 IP 地址的道理也类似。绑定命令是 arp -s %IP% %Mac%。
再后面获取网关的 MAC 和 IP 地址的方法也与前边类似。注意运行一次 ping %GateIP% -n 1 命令,是为了取得网关 Arp 信息在本机的缓存,确保 arp -a %GateIP% 命令能取得网关的信息,否则只能得到文本:No ARP Entries Found。
然后生成 GateMac.txt 文件,从中取到网关的 MAC 地址。最终网关也获得了 arp 绑定。
注意以冒号“:”开头的语句是批处理文件的注释语句。批处理脚本的语句(例如 for 语句)的更多信息,请在网上搜索相关资料。
从这里可以看到,DOS 命令行程序,包括批处理文件,并不是作为摆设存在的,更没有过时,合理利用,作用还是非常大的。譬如 NET、NETSH、NETASAT 等等命令,在网管工作中都是经常用到的,可以完成几乎所有图形界面程序能完成的工作,但有时更方便一些。
附:
@echo off
:::读取本机Mac地址
if exist ipconfig.txt del ipconfig.txt
ipconfig /all >ipconfig.txt
if exist phyaddr.txt del phyaddr.txt
find "Physical Address" ipconfig.txt >phyaddr.txt
for /f "skip=2 tokens=12" %%M in (phyaddr.txt) do set Mac=%%M
:::读取本机ip地址
if exist IPAddr.txt del IPaddr.txt
find "IP Address" ipconfig.txt >IPAddr.txt
for /f "skip=2 tokens=15" %%I in (IPAddr.txt) do set IP=%%I
:::绑定本机IP地址和MAC地址
arp -s %IP% %Mac%
:::读取网关地址
if exist GateIP.txt del GateIP.txt
find "Default Gateway" ipconfig.txt >GateIP.txt
for /f "skip=2 tokens=13" %%G in (GateIP.txt) do set GateIP=%%G
ping %GateIP% -n 1
:::读取网关Mac地址
if exist GateMac.txt del GateMac.txt
arp -a %GateIP% >GateMac.txt
for /f "skip=3 tokens=2" %%H in (GateMac.txt) do set GateMac=%%H
:::绑定网关Mac和IP
arp -s %GateIP% %GateMac%
:::删除临时文件
del GateIP.txt
del GateMac.txt
del IPAddr.txt
del ipconfig.txt
del phyaddr.txt
:::测试绑定结果
arp -a
:::exit
分享到:
相关推荐
ARP 绑定 DOS 批处理程序。文件名arp_bind.bat。
支持所有操作系统,支持批量
批处理绑定工作站服务器,可以防止ARP欺骗,工作站断网
ARP绑定批处理工具 ARP绑定批处理工具
局域网arp绑定工具完美版 局域网arp绑定工具完美版
arp绑定工具arp绑定工具arp绑定工具arp绑定工具arp绑定工具
arp 绑定 工具arp 绑定 工具arp 绑定 工具arp 绑定 工具arp 绑定 工具arp 绑定 工具fsdfdsfsd 方法撒地方的释放地方
ARP静态绑定批处理文件脚本bat. 绑定本地mac和ip
批处理防止arp病毒 方法: 删除、替换winpcap组件,并阻止新文件生成。 作用: 电脑中arp病毒以后使病毒不能起作用,不过不能防止电脑中病毒。
"ARP绑定"="c:\\ARP绑定[url=file://_arp_.exe/]\\_arp_.exe[/url]"( S* X$ L5 ?8 C" u( ?/ o6 u 1 A0 A$ q4 n- H* E" _ 大家一看就明白,将"c:\\ARP绑定[url=file://\\_arp_.exe]\\_arp_.exe[/url]"换成你自己的...
用arp 绑定IP和MAC地址用arp 绑定IP和MAC地址用arp 绑定IP和MAC地址用arp 绑定IP和MAC地址用arp 绑定IP和MAC地址
局域网ARP静态绑定批处理文件,可自动获取网关地址,自动绑定。在xp下单网卡测试通过。适合局域网网管发布,供用户获取执行。 对批处理比较明白的人一看就知道了,所以不做过多解释!
电脑防止arp攻击绑定路由器物理地址批处理
简易MAC与IP绑定(自动生成并运行bat文件的arp绑定工具)适用局域网共享上网及网吧受arp欺骗病毒攻击,无法上网或上网速度慢时。1.软件为绿色软件,短小精悍。把文件解压到需绑定的目录后再运行;软件只需运行一次。...
自己写写的arp绑定 用来防止局域网ARP攻击的 主要是可以让自己少打几个命令 别的也没多少技术含量 懒人首选
在客户端使用一个简单的批处理就可以对付ARP攻击造成的断线问题。
通过扫描发现内网电脑的IP和MAC地址,并自动生成arp绑定脚本,只需拷贝到各台电脑上做成启动脚本就可实现IP、MAC地址静态绑定。同时提供全能绑定程序,可对windows 98以上所有操作系统做IP、MAC地址绑定。 2、文件...
ARP双向绑定脚本 vbs的脚本 ARP双向绑定脚本
50个常用的P处理包括各种网络类的arp绑定 系统优化 注册表锁定 显示隐藏文件等
用批处理解决ARP病毒,可能在网关的那个IP要改下