一、问题的提出
校园网建成后,要求在服务器端把网内各工作站的MAC地址和分配的静态IP地址进行绑定,以方便统一管理,减小安全隐患。无论是在终端获取MAC地址后再在服务器端进行绑定,还是利用“MAC扫描器”远程批量获取MAC地址,对于网管员来说工作量都非常大。有没有更加方便快捷的方法呢?
二、解决问题思路
笔者经过摸索,发现组合使用“MAC扫描器”和Excel 2000可以很好地解决这个问题。思路如下:
1. 运行“MAC扫描器”(下载地址:http://www.chinaccna.com/Soft/ShowSoft.asp?SoftID=713),扫描完成后,点击[保存]按钮,将扫描的结果保存为文本文件,如Mac.txt(内容见图1)。
图1
2. 利用Excel强大的数据处理功能,将文本文件中的MAC地址转换成ARP命令要求的格式后,把数据复制粘贴到记事本,保存为批处理文件(内容见图2)。
图2
3. 在服务器端运行这个批处理文件就大功告成了。
三、具体操作步骤
1.将Mac.txt导入Excel工作簿
(1)启动Excel 2000,新建一个工作簿,保存为“MAC地址表.xls”。单击“数据→获取外部数据→导入文本文件”,在弹出的对话框中,选择用“MAC扫描器”获得的文本文件“Mac.txt”,单击[导入]按钮,弹出“文本导入向导”对话框。
(2)在“文本导入向导——3步骤之1”中点击“原始数据类型”,在“请选择最合适的文件类型”单选项下,修改默认的“固定宽度”为“分隔符号”,然后单击[下一步]按钮;进入“文本导入向导——3步骤之2”,在“分隔符号”多选项下,取消“Tab键”,只选中“空格”项,再单击[下一步]按钮;进入“文本导入向导——3步骤之3”,单击[完成]按钮,弹出“导入数据”对话框时,单击[确定],完成数据导入。导入后的工作表如图3所示。
图3
2. 利用Excel处理数据
(1)在A列前插入一列,在A1单元格内输入绑定MAC地址的命令和参数“ARP -S”。
(2)在MAC地址和计算机名两列之间插入7列,列号依次为D、E、F、G、H、I、J。
(3)利用字符串函数分割12位MAC地址为两两一组:
在D1单元格输入“=left(C1,2)”;
在E1单元格输入“=mid(C1,3,2)”;
在F1单元格输入“=mid(C1,5,2)”;
在G1单元格输入“=mid(C1,7,2)”;
在H1单元格输入“=mid(C1,9,2)”;
在I1单元格输入“=right(C1, 2)”。
(4)在J1单元格内把D1~I1单元格的内容合并起来,中间用减号分隔。合并方法:在J1内输入“=D1&&"-"&&E1&&"-"&&F1&&"-"&&G1&&"-"&&H1&&"-"&&I1”。
(5)利用填充法完成A列和D~J列的数据处理(图4)。
图4
(6)隐藏C~I列。
3. 制作批处理文件
(1)复制Excel工作表A、B、J列的数据,粘贴到记事本中。保存工作簿“MAC地址表.xls”,退出Excel。
(2)保存记事本文件为Mac.bat。
4. 批量绑定MAC地址和IP地址
在服务器端DOS模式下运行Mac.bat,即可完成批量MAC地址和IP地址的绑定。