APP下载

巧用Vbs实现网络接入精确控制

2014-03-18朱西讲

中国教育网络 2014年10期
关键词:广域学生公寓脚本

文/朱西讲

巧用Vbs实现网络接入精确控制

文/朱西讲

学校要求对Internet网络接入进行分时段控制,传统的基于时间的访问控制列表ACL技术能够满足这一需求,但缺乏灵活性,不能实现网络接入的自动化与精确化。本文结合Windows任务计划,通过Vbs脚本程序自动登录网络设备,利用Vlan过滤技术,实现了对Internet网络接入的自动精确控制。

因为教学管理的需要,学校决定对学生公寓的Internet接入进行时段控制。要求除周末与国家法定假日外,工作日(周一至周五)的凌晨0∶00--5∶30禁止学生公寓接入Internet,只允许连接校园网。

校园网络拓朴简略图如图1所示。网络出口通过S12508核心交换机与电信运营商连接,校内所有网络用户采用PPPoE客户端拨号方式接入Internet,学生公寓用户Vlan Id占用501-700。

根据要求,我们首先使用基于时间的ACL访问控制列表Time-range对Internet访问进行自动化的技术管制,Time-range能够实现每周一至周五工作时段或周末休息时段的控制,但在运行过程中发现这种方法缺乏灵活性,且不能实现自动精确地控制。因为遇到国家法定假日调休或者学校工作临时性调休,就会出现周末上班或周一至周五某时间段休息的状况,这些情况下Time-range就不能自动灵活地做出调整,Internet接入控制就会出现偏差。如何更好地自动精确地实现这一网络接入控制的要求呢?几经探索,我们结合Windows任务计划,通过Vbs脚本程序自动登录网络设备,利用Vlan过滤技术,实现了对Internet网络接入的自动精确控制。

图2 Except.txt公休日日期

图1 校园网拓朴简略图

建立公休日数据文本文件except.txt

对照校历,按服务器操作系统的不同,用记事本将本学期所有公休日的日期按“yyyy/ m/d”或“yyyy-m-d”格式输入文本文件except.txt,要求每个日期占用一行,最末一行以“end”文本结束,存盘后供下面的Vbs脚本程序读取调用。在Win7、Win8及Win 2008操作系统下,except.txt中的日期格式为“yyyy/m/d”格式;在WinXP、Win 2003及Win 2000操作系统下,except.txt中的日期格式则是“yyyy-m-d”格式。如图2所示。

编写Vbs脚本程序

编写Close.vbs、Open.vbs两个Vbs脚本程序,分别实现自动登录S12508核心交换机,执行相关指令关闭与接通Internet的功能。其中,Close.vbs脚本程序内容如下:

rz1=".log"+cstr(year(date))+cstr(month(date))+ cstr(day(date))+"_01.txt"

rz2=".log"+cstr(year(date))+cstr(month(date))+ cstr(day(date))+"_02.txt"

set zxj=wscript.createObject("wscript.shell")

set fso=wscript.createobject("scripting. filesystemobject")

set ff=fso.opentextfile("except.txt",1)

rqnow=cstr(date)

do while not atendofstream=true

rqnr=ff.readline

if rqnow=rqnr or rqnr="end" then

if rqnr="end" then

bz="A"

elsebz="B"

end if

exit do

end if

loop

if bz="A" then

zxj.run "telnet 10.255.255.254"

wscript.sleep 1000

zxj.sendKeys "zxj{+}12508{ENTER}"

wscript.sleep 1000

zxj.sendKeys "sys{ENTER}"

wscript.sleep 1000

zxj.sendKeys "int b 4{ENTER}"

wscript.sleep 1000

zxj.sendKeys "undo port trunk permit vlan 501 to 700{ENTER}"

wscript.sleep 1000

zxj.sendKeys "quit{ENTER}"

wscript.sleep 1000

zxj.sendKeys "^z"

wscript.sleep 1000

zxj.sendKeys "quit{ENTER}"

wscript.sleep 1000

zxj.sendKeys "{ENTER}{ENTER}"

wscript.sleep 1000

end if

脚本程序说明:

1. 定义两个系统运行日志记录文件的变量rz1、rz2,程序运行后会在log文件夹下生成名如“yyyymd_01.txt、yyyymd_02. txt”的日志文件。

2.引用对象wscript.shell、filesystemobject并赋予变量zxj与fso;用fso对象以只读方式打开except.txt文件,并赋予变量ff。

3. 以文件指针变量atendofstream作循环条件,如果指针没有到达文件尾,则逐行循环读取except.txt中的日期文本行,并将其与当前日期进行比较。

4. 若except.txt中没有日期行与当前日期一致,即当前日期为工作日,则执行关闭网络指令;反之,执行开通网络指令。

5. 运行引用对象的run函数,telnet登录核心交换机,在校园网络出口链路接口Bridge-Aggregation 4上将学生公寓网络vlan501-vlan700执行过滤操作。

6. 用Sendkeys函数发送键盘按键字符到Win窗口,用sleep函数使程序暂停片刻,以便给指令执行留出足够时间。

7. 最后显示网络出口接口上放行的Vlan信息并将其存放入日志文件,以便于日后查看脚本程序运行的结果。

8. 脚本程序Open.vbs与Close.vbs两者内容几乎完全一样,主要差别仅仅是在出口链路接口执行vlan501--vlan700的过滤动作的不同,即非undo与undo,在此不再赘述。

建立Windows任务计划

将本程序所有文件拷贝到服务器,分别建立两个名称为“自动断网”、“自动通网”的任务计划。“自动断网”在每天0∶00运行Close.vbs脚本程序,“自动通网”在每天5∶30运行Open.vbs脚本程序。最后,特别说明一点,千万不要对服务器进行锁定屏幕操作。

至此,一个自动灵活精确的网络接入控制系统部署完毕,经过几个月的运行证实,这一方法是稳定可靠的。(由于版面限制,在不影响程序运行效果的情况下对文中脚本程序代码作了适当删减,如有需要完整程序者可向本文作者联系QQ∶364877475)

(作者单位为重庆师范大学信息技术中心)

2014年华为企业IP技术年会 诠释敏捷广域方案

本刊讯 9月23日在北京举办“创新与实践”——2014年华为企业IP技术年会(IP Technology Gala China),与国内各行业200多位专家及技术精英,围绕“创新与实践”,就IP网络业务、演进、运维等方面的技术创新和SDN商业实践成果进行了广泛研讨,并诠释“敏捷广域”解决方案,助力企业从容应对云时代挑战。

在此次企业IP技术年会上,华为企业BG CTO梁永健先生为听众勾勒出未来IP网络的全景。通信技术专家、前中国科学院秘书长侯自强先生和ONF北向接口工作组副主席邹婷女士,与大家分享了SDN技术的发展与最新技术研究成果。大会还邀请了中国教育和科研计算机网CERNET主要技术负责人,清华大学李星教授向大家介绍了全球最大的教育科研网面向未来网络创新方面的进展及对IP发展趋势的思考。

华为路由器产品线总裁盖刚先生在致辞中表示:面对前所未有的变革,华为公司与行业专家多次研讨,充分分析广域网络发展趋势,探讨IP创新解决方案应对变革需求。华为凭借在IP领域18年持续投入,不仅在技术上持续创新,如率先推出业界领先的400G/1T路由器平台;实现路由器关键芯片全部自研;掌握SDN关键技术并实现产品化等,而且还具备丰富的网络部署经验,为政府、大企业、电力、金融、交通、互联网、教育等行业提供大中型骨干网规划、建设及维护服务。

针对企业广域网络面临的带宽利用效率、可靠性、安全性、业务部署管理复杂、业务隔离等问题,华为提出了 “敏捷广域”的解决方案。相对传统广域网,敏捷广域拉近了网络与业务的距离,传统IP网络仅作为管道承载业务,敏捷广域与业务深度耦合,全面提升企业业务效率和体验。敏捷广域三个核心亮点是——业务敏捷、演进敏捷和运维敏捷,通过业务快速发放、流量调优、IP硬管道、运维可视化、带宽持续演进等技术与企业客户需求相结合,实现企业IP网络更智慧和高效地为业务服务。

猜你喜欢

广域学生公寓脚本
酒驾
广域电磁法在福建洪塘镇地热勘查中的应用
航天技术落地交通大场景广域雷达
安奇奇与小cool 龙(第二回)
让思想政治工作回归学生现实生活——评《高校党建进学生公寓理论与实践》
学生公寓思想政治教育建设模式探析——以湖北大学知行学院学生公寓为例
广域雷达信息采集系统应用
快乐假期
小编的新年愿望
被动成像广域空中监视系统综述