项目报告
局域网监听软件的设计与开发
网络监听软件是提供给网络安全管理人员进行安全管理的工具,可以用来监
视网络的状态、数据流动情况以及网络上传输的信息,以获取有用信息。作为黑
客来说,通过网络监听可以获取其所需信息(比如密码等);对黑客活动和其他
网络犯罪进行侦察、取证时,可以使用网络监听技术来获取必要的信息。因此,
在目前研究和使用网络监听技术及相关工具,对于防护网络安全、打击网络犯罪
具有重要的现实意义。
本局域网监听软件主要利用 Winpcap 和 Jpcap 等工具进行开发,使用 Java
语言在 Eclipse 环境下进行开发。软件主要实现了对网络上的数据进行监听,
并分析出每一协议层的传输数据和协议层上主要字段的数据,然后将其显示出来,
同时进行动态更新;另外,添加了一些附加功能(指定对象监听、饼状图显示、
界面选择等)。经过测试与分析,说明了该软件运行稳定、可靠,具有一定的实
际应用价值。
局域网;网络监听;协议层;数据传输;对象监听
Design and Development of LAN Monitoring Software
Abstract
Network-monitoring software is a secure management tool providing for the
network security administrator. It can obtain useful information which monitors the
network status, data flowing and information of network transmitting. Hackers can get
the necessary information (such as password and so on) by means of network
-monitoring. Hacker may gain the information which its needs (for instance password
and so on) through the network-monitoring; Carrying on taking the reconnaissance
and collecting the evidences about the hacker activity and other network crime, we
may use the network monitor technology to gain the essential information. Therefore,
studying and using network-monitoring technology and the correlate tool in present, it
is important and practical significance for protecting network security and attacking
network crime.
This local area network-monitoring software mainly is developed by using of
Winpcap, Jpcap, the Java language and so on in the Eclipse 3.2 environment. This
software mainly realizes monitoring the network data, analyzes the transmission data
and the main field data on each protocol layer, and then demonstrates it, carries on the
dynamic renewal. Simultaneously, this software increases some attachment functions
(such as assigning object monitor, demonstrating of cake shape, the choice of surface
etc.). After testing and the analyzing, which shows that this software is stable, reliable,
and having the certain practical application value.
Key words: LAN; Network Monitoring; Protocol Layer; Data Transmission;
Object Monitoring
目 录
总页数:33 页
1 引言................................................................................................................................................1
1.1 课题背景 .................................................................................................................................1
1.2 本课题研究的意义 .................................................................................................................1
1.3 本课题的研究方法 .................................................................................................................1
1.4 本论文主要工作 .....................................................................................................................2
2 需求分析........................................................................................................................................2
2.1 需求分析概述 .........................................................................................................................2
2.2 本软件的需求分析..................................................................................................................3
2.2.1 本软件实现的目标..........................................................................................................3
2.2.2 本软件的运行环境要求..................................................................................................3
2.2.3 本软件的功能要求..........................................................................................................4
2.2.4 本软件功能的扩充..........................................................................................................4
3 理论基础与相关工具介绍............................................................................................................4
3.1 网络监听原理介绍 .................................................................................................................4
3.2 TCP/IP 的层次结构.................................................................................................................5
3.2.1 OSI 与 TCP/IP 体系结构的比较 .....................................................................................5
3.2.2 TCP/IP 四层协议的表示方法举例..................................................................................7
3.2.3 使用 TCP/IP 进行通信的示意图....................................................................................7
3.3 Winpcap 简介 ..........................................................................................................................8
3.4 Jpcap 简介................................................................................................................................9
4 设计思路......................................................................................................................................10
4.1 设计框架图 ...........................................................................................................................10
4.2 设计步骤 ...............................................................................................................................11
4.2.1 整体规划........................................................................................................................11
4.2.2 程序运行流程................................................................................................................11
5 具体实现步骤..............................................................................................................................12
5.1 使用 Eclipse 3.2 创建项目....................................................................................................12
5.1.1 创建项目........................................................................................................................12
5.1.2 创建包............................................................................................................................13
5.1.3 创建类............................................................................................................................14
5.2 analyzer 包的设计 .................................................................................................................14
5.2.1 analyzer 包的作用 ..........................................................................................................14
5.2.2 analyzer 包中各个类的作用与实现方式 ......................................................................15
5.3 stat 包的设计 .........................................................................................................................17
5.3.1 stat 包的作用 ..................................................................................................................17
5.3.2 stat 包中各个类的作用与实现方式 ..............................................................................17
5.4 ui 包的设计............................................................................................................................18
5.4.1 ui 包的作用.....................................................................................................................18
5.4.2 ui 包中各个类的作用与实现方式.................................................................................19
5.4.3 ui 包中 graph 包的作用 .................................................................................................22
5.5 外部类的设计 .......................................................................................................................22
5.5.1 外部类在整个程序中的作用........................................................................................22
5.5.2 外部各个类的作用与实现方式....................................................................................22
6 测试与分析..................................................................................................................................23
6.1 测试的目的 ...........................................................................................................................23
6.2 测试的步骤 ...........................................................................................................................23
6.3 测试分析 ...............................................................................................................................25
7 用户使用手册..............................................................................................................................26
7.1 系统配置要求 .......................................................................................................................26
7.2 系统环境配置 .......................................................................................................................26
7.3 执行程序步骤 .......................................................................................................................26
结 论..........................................................................................................................................30
参考文献..........................................................................................................................................31
致 谢..........................................................................................................................................32
声 明..........................................................................................................................................33
第 1 页 共 33 页
1 引言
1.1 课题背景
网络监听,在网络安全上一直是一个比较敏感的话题,作为一种发展比较成
熟的技术,网络监听在协助网络管理员监测网络传输数据,排除网络故障等方面
具有不可替代的作用,因而一直倍受网络管理员的青睐。然而,在另一方面网络
监听也给以太网安全带来了极大的隐患,许多的网络入侵往往都伴随着以太网内
网络监听行为,从而造成口令失窃,敏感数据被截获等等连锁性安全事件。
随着互联网技术的迅猛发展,网络给人们带来了很多便利,但是网络在给人
们带来许多便利的同时,也给人们带来了最担忧的网络安全问题。保证网络及应
用系统的安全也成了人们最为关心的问题。
网络监听技术就是提供给网络安全管理人员进行管理的工具,可以用来监视
网络的状态、数据流动情况以及网络上传输的信息,以获取有用的信息。作为黑
客来说,通过网络监听可以获取其所需的信息(比如密码等);对黑客活动和其
他网络犯罪进行侦察、取证时,可以使用网络监听技术来获取必要的信息。因此,
在目前研究和使用网络监听技术及相关工具,对于防护网络安全、打击网络犯罪
具有重要的现实意义。
1.2 本课题研究的意义
我国的网络正在快速发展中,相应的问题也就显现出来,网络管理及相应的
应用自然将越发重要,而监听技术正是网络管理和应用的基础,其意义当然重要,
放眼当前相关工具,Linux 有 snort tcpdump ,snift 等,window 有 nexray, sniffer
等无一不是国外软件,随着中国网络的发展,网络监听系统必将大有用武之地,
因此监听技术的研究已是时事的要求。
中国入世,各种针对盗版的打击力度和对于正版软件的保护力度都将大大加
强,windows 的盗版软件随处可见的现象将会一去不返,面对这样的情况,大部
分的公司只有两种选择:要么花大价钱向微软购买正版软件,要么是用开元操作
系统 Linux,特别是重要部门,如国家机关,政府部门,难道要把自己的办公系
统操纵在国外大公司手里?北京的政府办公系统已经转用红旗 Linux,而且
Linux 的界面也在不但的改进,更加友好,易操作,有理由相信 Linux 将在我国
大有作为,这也是研究 Linux 下网络监听的原因。
1.3 本课题的研究方法
本毕业设计的目的主要是为了检查对以前所学知识(包括以前所学的一些关
于网络技术、编程技术、网络与信息安全等知识)综合运用的能力,设计开发一
个局域网监听软件。
在本系统的开发使用 Eclipse 3.2 开发工具,利用 Java 语言来编写一个具备