使用jpcap实现网络嗅探器Sniffer:烟台大学计算机网络课程设计
需积分: 17 160 浏览量
更新于2024-07-17
收藏 340KB DOC 举报
"这篇文档是关于烟台大学计算机网络课程设计的一个项目,主题是创建一个简单的网络嗅探器(Sniffer),使用了wincap环境和jpcap.jar库。该项目由王承乾同学完成,指导教师为赵金东,时间是2019年1月。"
在这个课程设计中,学生的目标是深入理解TCP/IP协议,并实现一个基本的网络嗅探器。Sniffer的主要任务是监控网络性能和使用情况,它能监听并解析网络上的数据包,提供网络流量的详细信息。
首先,项目要求实现Sniffer的基本功能,包括选择监听的网卡,因为一台机器可能有多个网络接口。此外,Sniffer需要捕获并解析所有通过选定网卡的数据包,包括ICMP、IP、TCP和UDP协议的数据包。对于IP头部,Sniffer应能显示如版本、头长度、服务类型、总长度、标识、DF/MF标志、段偏移、生存时间、协议类型、源和目标IP地址等关键字段。数据内容部分应以ASCII形式展示,以便理解。
其次,Sniffer还必须能够针对特定IP地址进行监听,无论是来源IP还是目标IP,以便捕获和显示TCP和UDP数据包的完整内容。考虑到TCP或UDP包可能被分割成多个IP包传输,Sniffer需要有能力重组这些分片以恢复原始数据。
此外,功能还包括过滤特定协议类型,如只监听ICMP或同时监听ICMP和UDP。为了验证其正确性,Sniffer需在运行时与其他标准网络应用(如Ping、Telnet或Web浏览)并行工作,并能显示预期的结果。数据包还可以保存为可读文件,以便后续分析。文件重组功能允许Sniffer从经过本地网络的多个TCP包中恢复出原始文件。最后,Sniffer提供了一个查询功能,可以查找并集中显示包含特定关键词(如“password”)的数据包。
这个课程设计涵盖了网络协议解析、数据包捕获、网络监控、协议过滤、文件重组以及数据包搜索等多个关键领域,旨在提升学生在计算机网络领域的实践能力。
2015-01-20 上传
2018-06-20 上传
2009-10-20 上传
2008-10-20 上传
2012-05-07 上传
2011-12-03 上传
2024-10-25 上传
314 浏览量
幼儿园小班班长
- 粉丝: 15
- 资源: 12
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析