客户端上网故障自动化解决方案

2018-07-28 07:18曾宇廖伟杨灿唐静
电脑知识与技术 2018年15期
关键词:自动化客户端故障

曾宇 廖伟 杨灿 唐静

摘要:通过自建局域网联到互联网的单位,一般是用客户端登录或PORT认证的方式实现实名上网。即针对客户端登录过程中出现的故障,提出上网故障自动化解决的方案。首先搜集了用户在使用客户端登录过程中遇到的所有故障,并将故障进行分类,然后对自动化解决故障进行了详细的功能设计,最后将每个故障的自动化解决方案编成代码绑定到按钮上,方便用户操作。完成后的上网故障自动化解决软件被用于实际的故障解决中,得到了很好的反应。用户通过此软件即可快速即时的解决其因客户端上网的故障,大大减轻了技术部门的维护工作量。此软件还可推广到所有使用客户端上网的用户。

关键词:客户端;故障;自动化

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2018)15-0030-03

Automation Solution of Client Log-On Trouble

ZENG Yu, LIAO Wei, YANG Chan, TANG Jing

(School of Computer Science, Leshan Normal University, Leshan 614000, China)

Abstract: The company that is connected to the Internet by self-built LAN generally realizes real name on the Internet by means of client log-on or PORT authentication. In this paper, aiming at the malfunctions occurred in the process of client log-on, we propose an automatic solution to resolve “Internet Trouble” occurred in the process of client log-on. First of all, we collected all the faults encountered by the user in the process of client log-on, sorted out the troubles, and then carried out the detailed functional design of the automation solution. Finally, the automation solution of each trouble was coded into the button to facilitate user operation. The completed “Internet Fault Automation Solution Software” is used in the actual troubleshooting, and it is well received. Through the software, users can solve the problem of the client's Internet connection quickly and promptly, which greatly reduces the maintenance workload of the technical department. The software can also be extended to the users who login to the internet by the client.

Key words: client; malfunctions; automation

1 背景

互聯网已成为现代人日常生活的重要组成部分。在我国网络的发展过程中,出于成本和单位利益的考虑,大多数是单位自建了局域网,再连接到互联网上的使用方式。这样有效地保障了单位利益并满足了用户对网络的使用需求。自建局域网一般是通过客户端或PORT认证[1]的方式实现实名制,不论是哪种接入认证的方式,都会遇到或多或少的问题,而绝大部分的普通网络用户对计算机上网的了解还只停留在一般的操作水平,缺乏对计算机系统的深入了解和应用,因此,普通用户对解决登录过程中出现的故障问题存在较大困难。以学校为例,没有专业知识的学生使用校园网客户端登录不上校园网时,即使是最简单的故障,也不能自行处理,常常对此无计可施,只能寻求学校技术部门的技术支持。这不仅使得用户的用网体验变差,而且一定数量级的用户的问题也极大地增加了网络技术管理部门的工作负担。

目前用户在手动解决客户端登录故障时主要有两种方法:①查阅资料,按照步骤手动修改系统设置;②寻找针对解决某一故障的脚本。而手动解决故障主要存在以下缺陷:①登录故障提示信息难以理解;②解决登录故障对普通用户的技术水平要求高;③登录故障多样,普通用户难以自主进行问题排查。④问题排查速度慢,效率低,解决方案没有针对性。寻找解决故障的脚本存在以下缺陷:①常见故障才有解决的脚本;②脚本解决登录故障的可靠性未知;③脚本的安全性未知。

针对上述在手动解决客户端登录问题中存在的缺陷,提出了自动化解决方案,设计并实现了客户端登录故障排查软件:客户端助手。文章首先列举并分析了所有已知的登录故障问题,设计出软件功能界面;再逐一进行功能设计和实现,最后形成了自动化解决客户端上网问题的软件;并将此软件投入了实际应用中。

2 客户端上网故障及分析

对于网线未连接故障,只有在排除了网卡所有故障后,提示用户检查网线、网线插口和交换机解决。而对于其他所有故障,都可以通过修改网卡或系统设置解决。

在客户端登录失败后,会给出错误信息,根据错误信息修改客户端配置或系统环境。简单的设置修改可以利用系统提供的可视化界面,主要手段是依靠网络适配器修改客户端的运行环境。

其中,修改系统设置不仅要求用户具有较高的系统操作素养,而且有些设置选项不容易找到,选项繁多复杂,用户难以判断。在客户端再次出现同样的故障时,需要重复之前的操作。使用批处理脚本,就能有效避免修改设置的重复性操作,对用户的技术要求也不高。但是,编写批处理脚本要求用户具备一定的编程知识,如果简单地从网上查阅到资料,写出批处理语句,其安全性、有效性未知,很有可能造成一些不可挽回的误操作,使得故障更加严重。而且,在一些特定功能故障的设置上,即使用户拥有一定的编程素养,也无法编写出有针对性的处理脚本。

3 自动化解决方案的设计

基于上述问题,我们设计并实现了可自动化解决客户端登录故障的软件-客户端助手。

3.1 客户端助手的概要设计

该解决方案提供了一种建立在Windows平台之上、给普通用户快速解决登录故障的软件,由一键配置和按需配置两部分组成。一键配置部分将用户经常遇见的登录故障的解决方案编为一组,当用户使用客户端登录不上时,可以选择调用这一组操作,快速解决登录故障。按需配置部分列举出所有客户端登录故障,供用户遇到具体故障时使用其对应的解决方案。在解决故障的同时,在窗体上显示处理进度,以及在处理完成后显示处理结果。客户端助手界面如图1所示。

用户可以按照客户端给出的故障提示信息,选择对应的解决方案。在一键配置中,包含用户遇到频率最高的五个故障的解决方案,供用户快速解决故障,其中自动获取IP地址包含网卡设置为自动获取IP地址和启用DHCP服务。

3.2 客户端助手的详细设计

在关闭网卡共享、禁用WiFi和修改网卡IP地址为自动获取之前,需要在NetworkControl类中调用getNetworkAdapter()方法取得电脑上的网卡适配器。所有处理故障的方法都返回bool类型,供主线程判断故障处理成功与否,进而给用户故障成功解决或处理失败的提示。

4 自动化解决方案的实现

4.1 网络配置自动化解决的软件实现

在排除系统可能存在的故障之前,需要先排查硬件故障,例如网线没有插好,网线损坏等。使用Windows提供的System.Net.NetworkInformation类,可以进行获取网卡的连接状态、修改网卡的设置等操作。

4.1.1关闭网卡共享的软件实现

网卡属性“Internet连接共享”中“允许其他网络用户通过此计算机的Internet连接来连接”复选框[2]为选中时,网卡包含共享属性,此时会出现客户端会登录失败,或在登录成功后幾分钟后被网关强制注销,同时弹出关闭Windows网络共享提示框的情况。客户端助手在这个问题上,实现了主动将网络共享关闭的操作。使用NetSharingManager类来禁用网络共享,代码如下:

NetSharingManager manager = new NetSharingManager();

INetSharingEveryConnectionCollection connections = manager.EnumEveryConnection;

foreach (INetConnection con in connections) {

var sharingcfg = manager.INetSharingConfigurationForINetConnection[con];

sharingcfg.DisableSharing();}

4.2 禁用WIFI软件的软件实现

目前绝大部分大学宿舍都会使用WiFi共享软件来共享有线网络供移动设备使用,而客户端会随时侦测WIFI共享软件,若发现WiFi共享软件运行则立即注销。而客户端只是扫描网卡中是否安装有WiFi共享软件的驱动,所以只需要在网卡中禁用WiFi共享驱动[3]。而通过Windows API发送消息难以获取所需的信息,所以借助于更加方便的AutoHotKey软件编写脚本,再将脚本编译为可执行程序供客户端助手调用,达到禁用WIFI共享软件服务的目的,脚本代码如下:

;WiFi共享软件添加的服务名称,dimArray数组中的服务都将被禁用

dimArray := ["ZK NET Driver", "WifiMaster NAT Driver", "leibao", "360"]

for index, element in listArray

for j, dim in dimArray

if (InStr(element, dim) > 0){

indexArray.Insert(index)

break}

loop %time%{

if(A_Index = time){

;~ ControlGet, ischecked, Checked, , SysListView321, %netPro%

;~ if (ischecked = 1)

ControlSend, SysListView321, {Space}, %netPro%

}else

ControlSend, SysListView321, {Down}, %netPro%

SetKeyDelay, 500, 200}

其中,time是网卡WiFi驱动和dimArray数组中匹配的个数。

5 结束语

在介绍客户端助手的功能结构及系统流程过程中,详细分析了用户与软件之间的交互场景,以及各模块的具体实现方法,并且在真实的登录故障环境下进行了系统地测试。测试结果表明,该软件设计合理,能够简单、有效、快速地解决实际场景中绝大部分的客户端登录故障问题,不需要用户编写任何代码或者脚本,让没有编程基础的计算机用户也能轻松搞定客户端登录问题,而不会因为客户端问题或电脑环境配置不当而上不了网。

在实际的使用过程中,用户表示该软件功能设计合理,涵盖的故障问题广泛,能够有效解决问题。该软件的规模化使用,不仅大大提升了网络用户的体验度,而且在一定程度上减轻网络中心工作人员的工作压力。在禁用WiFi软件时,没有调用Windows原生API,而是使用AutoHotKey软件编写脚本进行属性配置,这一操作有低概率出现操作失败的情况。此项难题将在后续的研发升级过程中进行完善修正。

根据实际用户使用状况及满意度调查显示,77%的使用者表示:功能设计合理,涵盖的故障问题广泛,能够有效解决问题。14%的使用者表示:独立功能按钮介绍不足,界面部分希望更个性化,但整体上令人满意。6%的使用者表示:暂未遇到校园网登录故障,但进行了一些尝试,对软件的功能寄予很大期望,已下载本软件留以待用。3%的用户表示:存在极少数的登录故障,无法使用一键配置进行修复,需要咨询才能解决,希望后续版本继续完善。综上,该软件用户整体满意度为97%,仍需要继续改进。

该软件的设计为没有计算机基础的用户解决登录故障所遇到的困难,对计算机用户解决登录故障有重要的意义,同时可以为同类软件的开发和研究提供一定的参考借鉴作用。

参考文献:

[1] 黄荣. 基于802.1x和Web Portal认证技术的校园网用户端点准入控制系统的设计及应用[J]. 福州大学学报: 自然科学版, 2008(5): 673-676.

[2] 关智. 普通无线网卡实现软AP共享上网功能的研究与探讨[J]. 软件工程师, 2011(5): 42-44.

[3] 张立建. Windows内核关键技术研究及其在内网安全中的应用[D]. 北京: 北京邮电大学, 2013.

猜你喜欢
自动化客户端故障
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
奔驰R320车ABS、ESP故障灯异常点亮
江淮车故障3例
客户端空间数据缓存策略