APP下载

基于C#和VB语言的机房网络控制软件设计与开发

2018-12-05陈庆亮吴国华

电脑与电信 2018年9期
关键词:域名IP地址防火墙

陈庆亮 吴国华*

(广东省财政职业技术学校,广东 广州 510445)

[关键字] C#;VB;机房;网络控制软件;设计;开发

1 引言

随着国家对职业教育的大力发展,职业院校高度重视职业教育的现代化水平与创新能力,计算机类实训机房成为了各专业教学实践的重要场所。为了提供更多的教学实践场所,计算机逐步进入教室,传统的教室也变成了网络机房。然而,随着机房与网络使用频率的不断增加,如何更好地管理内外网的开放,加强网络管理的安全性和教师对网络控制的自主性成为了任课教师、机房管理员和网络管理员共同的问题[1]。因此,笔者利用C#和VB语言,设计与开发出一款C/S机房网络控制软件,给任课教师提供网络控制权,以解决职业院校机房的网络控制问题。

2 现状分析

职业院校机房配置主要以台式计算机为主,一般每个机房约50-80台计算机、1台教师、1台作业服务器,安装系统为w indowsxp、w indows2003和w in7等。机房的网络配置以B类地址的私有地址为例,如机房一的IP地址为172.16.11.0网段,子网掩码为255.255.255.0,其中学生IP按顺序为172.16.11.1-80,教师机的IP地址为172.16.11.88;机房二IP地址为172.16.12.0网段,子网掩码为255.255.255.0,其中学生IP按顺序为172.16.12.1-60,教师机的IP地址为172.16.12.88,其他机房以此类推。

根据教学需求,机房中计算机上内网和外网需要通过DNS域名服务器和硬件防火墙进行控制。机房的计算机通过设置DNS服务器,解析域名后可访问校内所有服务器,即可连接内网。在DNS域名服务器解析后,通过出口防火墙的NAT转换技术,把私有IP地址转化为合法IP的地址,即可连接外网[2]。

3 需求分析

根据教学与实训需求,为任课教师提供自主控制每一个计算机机房的网络访问权限。教师通过机房教师机的软件客户端进行网络设置,通过按键开放学生上校园内网、外网,同时禁止访问校内网和互联网等功能[3]。教师不需要输入任何网络指令,只需要通过软件按钮开关轻松完成网络控制,既增强了网络控制的时效性和地域性,又降低了网络管理员与机房管理员的工作难度,提高了教学质量与效率。

为了更有效地管理网络,在每次课前DNS服务器将定时设置为关闭网络,任课教师根据需求使用网络控制软件进行开通操作。为了防止学生拷贝客户端软件到学生计算机中控制网络,客户端软件会自动检测本机IP的主机号是否教师机,以判定可否执行[4]。

4 机房网络控制软件的设计原理

4.1 同时访问内外网

正常开启DNS域名服务和硬件防火墙的NAT地址转换可实现同时访问内外网。

4.2 只允许访问内网,禁止访问外网

以机房一为例,为此机房的DNS域名服务器的操作系统防火墙设置一条入站规则——禁止访问UDP协议的53端口“stopDns”。UDP协议的53端口是DNS解析端口,此规则的作用域远程IP设置为172.16.11.1-87和172.16.89-254,即本网段除教师机计算机的所有IP,当启用此规则后,只有教师计算机不受限制,本网段其他计算机无法通过DNS服务器解析域名。同时,在出口防火墙设置本网段禁止访问其他DNS服务器,以防止学生修改DNS服务器进行解析。其他机房以此类推。

4.3 同时禁止访问内外网

在禁止访问UDP协议的规则上,再加上一条入站规则——禁止访问本机的TCP协议80端口“stopHttp”。TCP协议80端口为网站服务端口,禁止后可限制访问本机网站服务。以机房一为例,在DNS域名服务器所连接的防火墙设置此规则,作用域的远程IP设置为172.16.11.1-87和172.16.11.89-254,即本网段除教师计算机的所有IP,当启用此规则后,只有教师计算机不受限制,本网段其他计算机无法访问本机网站服务。

4.4 网络控制软件规则设计

机房教师计算机通过软件发送命令到DNS域名服务器,完成以上三个需求。以机房一为例,通过教师计算机172.16.11.88发送“A”、“B”、“C”三种字符到DNS域名服务器。

当服务器收到“A”时,服务器通过发送方的IP地址识别为机房一,并切换到第一种状态,即禁用两条对机房一的规则,禁用后,不对机房一做任何限制,可访问本机TCP80端口访问校内网和UDP53端口解析域名后访问外网。

当服务器收到“B”时,服务器通过发送方的IP地址识别为机房一,并切换到第二种状态,即只启用机房一“禁用UDP53端口”的规则,启用后,可通过本机TCP80端口访问校内网,但无法访问UDP53端口解析域名,从而限制访问外网。

当服务器收到“C”时,服务器通过发送方的IP地址识别为机房一,并切换到第三种状态,即启用两条对机房一的规则,启用后,不可访问本机TCP80端口访问校内网,也无法访问UDP53端口解析域名,从而限制访问外网。

5 机房网络控制软件的功能开发

5.1 软件开发的程序语言

机房网络控制软件为C/S架构,服务器端需要以管理员身份调用CMD命令启用和停用操作系统防火墙规则,所以开发采用微软公司发布的C#编程语言。C#语言开发的程序功能强大,但需要安装M icrosoft.NET Framework框架,对只有一个服务器需要安装的时候十分合适[5]。

由于机房中的计算机操作系统类型较多,包括w indows xp、w indows 2003和w in7等,因此,客户端软件开发选择VB6.0编程语言。VB6.0语言开发速度快,兼容性强,适用于各种w indows操作系统。

5.2 客户端与服务器之间的数据传送

客户端软件通过VB6.0语言中的w insock控件实现与服务器软件之间的数据传送,具体关键代码如下:

5.3 服务器端接收客户端指令

服务器端软件需要以管理员身份调用CMD命令启用和停用系统防火墙规则,开发采用C#语言,服务器需要安装M icrosoft.NET Framework框架。在建立好防火墙入站规则的情况下,对收到客户端软件所发的命令进行操作。具体关键代码如下:

5.4 网络控制软件规则开发

为每个机房建立一条禁止TCP80端口的入站规则,以机房一为例:规则名称为“stopHttp11”,禁止TCP80端口入站,作用域中远程IP为:172.16.11.1-60,172.16.11.89-254。为每个机房建立一条禁止UDP53端口的入站规则,以机房一为例:规则名称为“stopDns11”禁止UDP53端口入站,作用域中远程IP为:172.16.11.1-60,172.16.11.89-254。通过教师计算机客户端软件发送“A”、“B”、“C”三种不同的字符到DNS域名服务器,设置内外网控制的权限。

Windows2008系统防火墙的启动规则命令格式为:netsh adv firewall set rule name=规则名 new enable=yes,禁用规则命令格式为:netsh adv firewall set rule name=规则名new enable=no。具体规则代码如下:

5.5 服务器端软件执行网络控制程序

当服务器接收到教师计算机客户端软件传送到命令,以管理员身份调用服务器的CMD命令开始执行网络控制程序,从而控制内外网的访问。具体代码如下:

6 结束语

机房网络控制软件投入使用后提高了网络管理的效率,优化了对服务器和防火墙的人为设置,降低了网络管理的难度与风险,提高了教学的质量和效率。随着职业院校计算机类实训机房的日益增加,本软件将根据不同型号的硬件防火墙进行升级开发,保证软件适应不同的硬件和软件设备,为教师的网络控制提供帮助,教学实训的开展提供便利,为职业教育发展提供有力的保障。

猜你喜欢

域名IP地址防火墙
铁路远动系统几种组网方式IP地址的申请和设置
构建防控金融风险“防火墙”
Combosquatting域名抢注的测量研究
IP地址切换器(IPCFG)
如何购买WordPress网站域名及绑定域名
基于SNMP的IP地址管理系统开发与应用
公安网络中IP地址智能管理的研究与思考
在舌尖上筑牢抵御“僵尸肉”的防火墙
下一代防火墙要做的十件事
顶级域名争夺战:ICANN放出1930个通用顶级域名,申请者有上千家