Winpcap的网络嗅探器的设计与实现提供大家参考
第24卷 第6期黄 石 理 工 学 院 学 报Vol.24 No.6
2008年12月JOURNALOFHUANGSHIINSTITUTEOFTECHNOLOGYDec
2008
文章编号:1008-8245(2008)06-0022-04
基于Winpcap的网络嗅探器的设计与实现
成 俊 李 芳
(黄石理工学院计算机学院,湖北黄石435003)
3
摘 要:针对网络管理中的安全问题,以Winpcap为开发平台,使用VisualC++为开发工具,设计了一个网络
嗅探器。分析了网络嗅探器的基本工作原理,描述了Winpcap捕获数据包的程序流程,最后给出具体实现的关键函数。结果表明,这种网络嗅探器结构简单,捕获数据快,对网络的安全管理具有重要意义。
关键词:数据包捕获;嗅探;Winpcap中图分类号:TP393.09 文献标识码:A
DesignandImplementationof
NetworkSnifferBasedonWinpcap
CHENGJunI(SchoolofComputerScience,HuangshiI)
Abstract:AimingatrnetwpaperproposesanetworksnifferwithWinpcapasdevelmC
+develtoolWinpcapandvisualC
++
.Thefundamentalprincipleof
thenetworktheprocedureduringwhichWinpcapcapturesthepacketisintroduced.Thekeyfunctionisgiven.Theresultsshowthatthenetworksnifferhassuchadvantagesassimplestructureandfastdatacapture,whichissignifanttothenetworksecurityandmanagement.Keywords:packetcapture;sniffer;Winpcap
随着Internet的迅猛发展,网络已日益成为工作和生活中不可或缺的工具。同时,网络的安全性与可靠性日益受到人们的重视。网络嗅探器可以有效完成对网络上传输数据包的捕获,从而收集与分析网络信息,是网络流量监控和故障检测所必不可少的工具之一,对网络管理与网络安全具有重要的意义。
物,是Win32环境下数据包捕获的开放代码函数库。Winpcap是第一个Win32开放式的捕获包的体系结构,能够支持大多数应用程序的需要。
Winpcap
[1]
包含了一个内核级的数据包过滤
器———NPF(NetgroupPacketFilter)、一个底层动态链接库(Packet.dll)和一个高层的独立于系统的库
(Wpcap.dll)。NPF模块过滤数据包,将数据包不
做任何改动的传递给用户。Packet.dll模块提供
1 Winpcap简介
Winpcap(windowspacketcapture)是Win32平
了Win32平台下的捕获包的驱动接口,基于Pack2
et.dll编写的程序可以不经过重新编译就在各种Win32平台下实现捕获数据包。Wpcap.dll库不
台下强大的、有较好扩展性的底层网络分析体系结构,是UNIX下的lipbcap移植到Windows下的产
收稿日期:2008-11-05
3基金项目:黄石理工学院2008年科研项目(08yjz18B)作者简介:成俊(1980— ),男,湖北大冶人,助教,本科。
依赖于操作系统,且它包含了一些其他高层的函数,如过滤器生成器,用户定义的缓冲区和高层特