摘 要
网络数据包的捕获对于网络安全有着巨大的作用,为我们更好的分析网络中的数据流提供了帮助。
本论文是基于Windows下开发一个网络监听工具,侧重点在于实现网络数据包的捕获,然后分析并显示捕获到的数据包信息这部分功能的实现,如分析:IP首部协议类型、源IP、目的IP和端口号等。数据包的捕获是实现防火墙、网络协议的分析或者网络监听等等功能的核心内容,一般可以采用Winsock编程、Winpcap或者NDIS网络接口驱动来实现。
采用的是Winpcap(Windows Packet Capture)来实现的抓包功能。Winpcap是Windows平台下一个专业网络数据包捕获开发包,是为Libpcap在Windows平台下实现数据包捕获而设计的。Winpcap功能更加强大,不仅具备了Libpcap的功能,还具有一些其他功能。
通过VC++6.0中MFC编程实现通过一个完整界面来控制调用Winpcap中的函数来实现对网卡信息的捕获和循环捕获数据包,然后通过预先对于IP、TCP、UDP等数据包的定义和TCP/IP等协议来解析其中包含的内容并返回显示捕获到数据包的信息,当然也可以保存捕获到的数据包到指定地点以便进一步分析。
关键词:Winpcap;NPF;VC++6.0;TCP/IP;计算机网络;
目 录
论文总页数:27页
1 引言 1
1.1 课题背景 1
1.2 国内外研究现状 1
1.3 课题研究的意义 1
2 设计理论依据 2
2.1 OSI与协议族 2
2.2 面向对象和可视化编程 4
2.3 WINPCAP开发技术详解 5
2.3.1 Winpcap介绍……………………………………………………………………….5
2.3.2 Winpcap 的组成……………………………………………………………………5
2.3.3 Winpcap 数据结构…………………………………………………………………7
2.3.4 Winpcap 函数………………………………………………………………………8
3 设计方案与系统功能描述 10
3.1 设计方案 10
3.2 功能描述 11
3.3 系统流程图 12
4 编码实现 12
4.1 WINPCAP环境设置 12
4.2 MFC控件相关 14
4.3 定时器和系统时间的获得 15
4.4 捕获并显示本机信息 16
4.5 捕获数据包及相关操作 17
5 软件测试与结果 22
5.1 网卡信息获取 22
5.2 整合到MFC界面中的程序测试 23
结 论 24
参考文献 25
致 谢 26
声 明 27