目录
1引言1
1.1课题背景1
1.2研究现状2
2网络监听技术综述3
2.1网络监听概念3
2.2以太网监听的原理3
2.3WinPcap的原理4
2.4综述7
3相关网络协议的分析7
3.1网络的原理体系结构7
3.2网络协议的分析与实现8
3.2.1链路层8
3.2.2网络层9
3.2.3传输层12
3.3小结16
4局域网监听系统的设计及实现16
4.1局域网监听系统的设计17
4.1.1功能设计17
4.1.2模块设计17
4.2局域网监听系统程序的实现19
4.2.1数据包的捕获19
4.2.2数据包的分析21
4.2.3数据流量的统计23
4.2.4实现过程中的难点和解决24
4.3系统程序运行25
结论27
参考文献27
致谢29
摘要
随着计算机网络技术的迅速发展,网络的安全问题也显得越发重要。网络监听技术是系统安全领域内一个非常敏感的话题,也是一项重要的技术,具有很强的现实应用背景。网络监听是网络监测、负载分析等管理活动常用的方法,同时也是黑客非法窃取信息的手段。网络监听工具通过网络传输介质的共享特性实现抓包,获得当前网络的使用状况,为网络管理员对网络中的信息进行实时的监测、分析提供一个合适的工具;同时也让黑客截获本网段的一些敏感信息,威胁网络安全。
数据包捕获技术是设计网络分析软件的基础,而WinPcap则是Windows系统中实现的一个优秀的包捕获架构。文中结合该软件包的结构与功能对包捕获原理进行了详细的分析,并介绍了其在网络安全监控系统中的应用。该系统的基本原理是通过调用WinPcap库捕获本地网络上的所有数据包,然后对数据包进行协议分析,从而可以实时地监控网络。
关键词:网络监听;WinPcap;包捕获;协议分析
4.2局域网监听系统程序的实现
本监听程序可以分为两大部分:驱动程序部分和应用程序部分。驱动程序部分工作在核心态,负责网络数据的接收和发送;应用程序部分工作在用户态,除了与驱动程序进行正确的通讯外,还要将有关信息显示出来,并提供存盘,过滤等操作。缓冲区由应用程序动态分配。在具体的实现过程中根据程序流程图将监听系统程序简化为以下几个步骤:
4.2.1数据包的捕获
根据系统总体设计的思路,利用WinPcap的采集数据技术对底层数据进行捕获。为了在Windows平台实现网络数据包的捕获功能,首先是把网卡设置成混杂模式,以监听整个网段的数据。数据包捕获功能的实现是基于WinPcap所提供的API接口函数实现的,它可以直接从链路层获取数据帧。进一步的分析、处理工作可交由数据分析处理程序完成。
数据包捕获的实现步骤:
1)获得适配器列表并统计网卡个数:
if(pcap_findalldevs_ex(PCAP_SRC_IF_STRING,NULL,