网络数据包分析工具的设计与开发
摘 要
当前,随着信息化发展,网络安全问题日渐突出,网络攻击日益泛滥,所以网络信息安全就变的非常重要。网络主机必须有足够的安全措施,否则网络的价值就会贬值。本系统的开发就是为了给网络使用者提供一个有用的网络数据包分析工具。本系统有四个主要功能:数据包的捕获、数据包解析、数据包信息分析和数据包信息的显示。为了实现系统功能,本系统选择在ubuntu(Linux)、libpcap、apache、mysql和php的平台上开发,操作系统和软件开发包全部为开源免费的软件,这也是本系统的一个重要特点。本系统首先用libpcap捕获数据包,然后用C语言,并以TCP/IP协议为理论基础解析数据包,解析得到的信息存储到mysql数据库中。数据包信息分析模块从mysql数据库中读取数据,对信息进行统计分析,并对网络信息状况进行安全描述。最后通过apache和php技术来显示数据库信息。通过测试本系统实现了数据包捕获、解析、信息分析、信息显示,为使用者了解当前的网络数据包状况提供了很好的参考。
关键词:网络数据包;TCP/IP;数据包解析;数据包信息分析;攻击特征
目 录
1 引言 1
1.1 课题背景 1
1.2 国内外研究现状 1
1.3 本课题研究的意义 1
1.4 本课题的理论基础 1
2 网络数据包分析系统概述 2
2.1 网络数据包分析的意义 2
2.2 网络数据包分析的核心技术基础 2
2.3 网络数据包分析系统的主要功能 2
3 网络数据包分析系统的设计 3
3.1 系统模块划分 3
3.2 数据包捕获模块设计 4
3.3 数据包解析存储模块设计 4
3.4 数据包信息分析模块设计 5
3.5 数据包信息显示模块设计 6
4 网络数据包分析系统的解决方案 6
4.1 数据包捕获模块的解决方案 7
4.2 数据包解析及存储模块解决方案 7
4.3 数据包信息分析模块解决方案 8
4.4 数据显示模块解决方案 8
5 网络数据包分析系统的实现 8
5.1 系统控制模块实现 9
5.2 数据包捕获模块实现 10
5.3 数据包解析及存储模块实现 12
5.4 数据包信息分析模块实现 14
5.5 数据包信息显示模块实现 15
6 网络数据包分析系统的测试分析 17
6.1 测试方案与测试环境 17
6.2 测试结果 17
6.2.1 数据包捕获 17
6.2.2 数据包解析及存储 17
6.2.3 数据包信息简单分析 18
6.2.4 数据包信息显示 19
结 论 20
参考文献 21
致 谢 22
声 明 23
附 录 24
1.1 课题背景
如今,网络的飞速发展是有目共睹的,但是在这个飞速发展的过程中,也出现不安全的因素。网络攻击、病毒传播等迅速增长,利用网络进行盗窃、诈骗、敲诈勒索、窃密等案件逐年上升,严重影响了网络的正常秩序,严重损害了网络使用者的利益;面对网络安全的严峻形势,如何判断连入网络的主机是否安全就变的十分重要。选题的目的是积极认识当前网络安全的形式,对常见网络协议数据包进行解析,设计一个可以对网络数据包进行捕获、解析,并可查看数据包信息和进行数据统计分析的工具,深入理解网络协议及安全知识!
1.2 国内外研究现状
典型的网络数据包分析器能捕获数据包,解码各种不同协议,并提供人们易读的结果格式。大多数比较完善的分析器还包括一些统计报告功能。通过查看网络信息分布,了解网络利用以及接收连接动态等一系列行为,管理员可以很容易地判断引起故障的工作站点及其产生原因。
1.3 本课题研究的意义
网络安全问题已经不再是一个新鲜的课题了,也已不再是一个高深的课题了,对于网络数据包的分析,也已经有了比较成熟的结构设计,例如数据包的捕获,解析,提供易于查看的格式和简单的统计报告。但是网络的发展日新月异,安全要求也不断发展,论文主要进行个模块的紧密联系,并使用MySQL数据库加强了统计报告模块的功能。