首页 > 范文大全 > 正文

无线网络测试仪开发与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇无线网络测试仪开发与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要: 当前,无线局域网应用越来越广泛,用户可以同使用移动电话那样灵活的移动计算机及终端设备的位置,保持网络的连接。但无线局域网安全性相对较差,为了更好的进行无线网络管理,无线网络测试仪是一个很有用的工具。该文介绍的无线网络测试仪在PDA上运行,使用方便,操作简单。其工作原理为将无线网卡设置为混杂模式,捕获无线网络中的数据包,获取无线网络数据的流动及网络上传输的信息,帮助网络管理员实时管理、监视网络。

关键词:WiFi网络;PDA;混杂模式

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2013)35-7911-02

随着便携终端的广泛使用及网络技术的发展,无线局域网(Wireless Local Area Network,缩写为“WLAN”),可以让人们摆脱线缆的束缚,得到越来越多的应用,作为有线网络的有力补充,各类应用产品的不断出现,其应用领域越来越广泛。无线局域网标准也得到越来越细致和有针对性的完善,从 802.1l到如今的802.11n,速率也从最初的IMbps发展到了今天的54Mbps甚至108Mbps,这些都不断证明无线局域网技术越来越受到人们的重视与青睐。

1 无线局域网工作模式

无线局域网的工作模式一般分为两种,基础结构(Infrastructure)和无线自组网(Ad-hoc)。如图1所示,基础结构网络由无线站点STA(station)、无线接入点AP(access point)、分布式系统DS(distribution system)组成[1]。无线接入点有两个功能:一方面,无线站点之间可以通过无线接入点进行无线通信;另一方面,无线接入点连接有线网络,无线站点也可以通过无线接入点访问现有的有线网络。无线站点STA可以是装有无线网卡的PC机或笔记本电脑,无线网卡一般可以使用USB接口的网卡,即插即用,非常方便,笔记本电脑一般都有迅驰模块,可以直接作为无线站点使用。

Ad-hoc工作模式,不连接有线网络,需要互相通讯无线站点ESSID设为同值,即可达到相互连接,资源共享的目的。

目前,无线局域网大部分应用都是将无线网络配置为基础结构模式,通过无线接入点访问有线网络,该文即是在基础结构模式下的无线网络测试仪的开发实现

2 无线局域网MAC工作原理

在基础结构网络模式下,WLAN媒体接入控制与有线网络类似,采用CSMA/CA(载波侦听多址接入/冲突避免)方式共享无线介质,无线站点与无线接入点之间是无线传输,数据包在空中以广播方式传输。 正常工作模式下,无线站点的无线网卡驱动程序,对应OSI模型的数据链路层,提取数据帧头中目的MAC地址,与自己的MAC地址进行比较,判别两个地址是否相同,如果不一致,又不为组播地址和广播地址,将直接丢弃,不再向上传,只有两个地址完全相同,无线站点的协议栈才将数据帧完整接收,一层层往上传.但如果将网卡设为混杂模式,则不再进行MAC地址判别,不管MAC 地址是什么地址,都会接收下来[2],这样,在这台主机上编写应用层处理程序,就可以接收到发往其他主机的数据包了.对捕获的无线帧进行分析和解码,可以实时监视网络的状态、数据的流动及网络上传输的信息,帮助网络管理员实时管理、监视网络。在一台装有基于prism2 D-LINK 120d无线网卡的PC机上,进入Linux系统,安装配置wlan-ng-0.2.20无线网卡驱动程序,对无线网卡进行相应的编译配置在。输入下面的命令,就可将无线网卡设置为混杂模式。

3 无线局域网捕包方法与实现

前面将网卡设为混杂模式后,接下来就需要编写程序,将接收下来的数据包在应用程序中输出显示。这里需要调用Libpcapr捕包库函数,Libpcap中接口函数可以直接与内核驱动程序交互,该程序是由洛仑兹伯克利国家实验室编写的Linux系统下的捕包函数库[3]。在Linux操作系统下加载Libpcap函数库(7.1以上的版本),调用Libpcap库函数进行捕包流程如图2所示,首先,选择监听网络接口,建立监听会话,调用函数pcap_open_live,然后利用pcap_loop捕获并处理数据包,pcap_loop中最要的是回调函数,该函数在每捕获一个数据包后自动被调用,用于对数据包的处理。

4 结束语

无线网络测试仪使用D-LINK 120d网卡,从上面的输出可以看出可以获取无线网络数据传输,对网络进行监控与管理。

参考文献:

[1] 谭思亮.网络与监听[M].北京:人民邮电出版社,2002.

[2] 张威.网络编程教程[M].北京:希望电子出版社,2002.

[3] Jim Geier.无线局域网[M].王群,李馥娟,叶清扬,译.北京:人民邮电出版社,2001:30.

[4] 涛,方滨兴,云晓春.网络监听与反监听[J].计算机工程与应用,2001,37(18):20-22.

[5] Mike Kershaw.kismet-2.8.0源程序代码[BE]. wireless net,2003.

[6] Network Research Group.Libpcap-0.7.2源程序代码[BE],Lawrence Berkeley National Laboratory.2001-2002.

[7] Jouni Malinen.Hostap-0.0.4源程序代码[BE]. SSH Communications Security Corp,2003.

[8] Mark Ciampa.无线局域网设计与实现[M].北京:科学出版社,2003:56.