第一章 需求分析

1.1 设计目的

1.1.1 基本要求

完成一个基于Libpcap的网络数据包解析软件,具有易用、美观的界面。

1.1.2 具体要求

  • 能够解析本地或局域网的数据包,例如TCP包,UDP包,工CMP包等,能分析报头以及数据包内容
  • 能分析数据包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源’p地址和目的工p地址等内容。并将上述解析结果规范显示
  • 能解析每个数据包的内容(如果为加密信息不能解析则备注不能解析)
  • 能在制定时间段内解析数据包,当程序解析停止时,能分类统计在这段时间内解析的各类数据包的数量
  • 能够图形化显示数据包统计结果

1.2 功能要求

1.2.1 功能概况

本次设计参考计算机网络基础知识,设计实现一个能够对本地局域网数据包进行捕获和分析的程序,并利用此程序实现网络监控和其他实用性功能。

1.2.2 获取数据包功能

利用Libcap,扫描设备网卡,选取不同网卡类型(WiFi/以太)进行对局域网数据包的监听和捕获,设计两种模式:混杂模式和非混杂模式,简单来说就是是否要过滤掉不是发送给自己的数据包,如果设置为混杂模式,则会收到整个局域网内的所有数据包并进行分析。

1.2.3 分析数据包功能

程序能够对捕获的数据包进行分类整理,并提取数据包中内容进行分析,包括数据包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源’P地址和目的’P地址等内容,并将上述解析结果规范显示。对于HTTP., ARP等报文,可以对其内容进行解析。

1.2.4 图形化显示功能

利用表格组件,将获取到的数据包信息以表格形式直观地显示出来,并且加以交换牛可以查看深层内容。

1.2.5 数据包统计分析功能

可以对一段时间获取的数据包进行统计整理,并根据数据包类型进行分类,如:数据包版本类型(IPv4/IPv6)、数据包协议类型(TCP/UDP/ARP等),并以饼图直观显示;对于TCP、UDP、ICMP数据包,用直方图统计其最大、最小、平均生存期和数据包大小,可以直观显示。

1.2.6 数据包清空功能

可以清空之前获取的所有数据包。

1.2.7 Ping功能

调用终端相应,实现Ping操作,可以用来测试与目标主机的连通性。

1.2.8 TraceRoute功能

调用终端相应,实现traceroute操作,通过traceroute我们可以知道信息从本计算机到互联网另一端的主机是走的什么路径。

1.2.9 ARP-Attack功能

本程序可实现局域网内ARP攻击,经测试可以对指定’P地址的主机实现断网攻击,基本原理同上,是欺骗目标机器局域网网关地址,使得该机器ARP缓存表中记录的网关IP -MAC对应错误,从而无法把数据包发送给真正的网关,导致网络连接失败,如果将欺骗的MAC地址设置为自己的MAC地址,则会截获目标机器发送的数据包。

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1430.html

局域网抓包分析工具_[源码和文档分享]基于Libpcap实现的局域网嗅探抓包发包解析工具...相关推荐

  1. java记事本技术参数_[源码和文档分享]基于JAVA的记事本

    一.绪论 现如今,电脑已经成为了每家每户甚至是每个人手头都必有的一种实用性工具,它改变了人们的生活,大大提高了人们的工作效率.在此基础上,电脑端的记事本应用一直是每台电脑所必备的实用性应用,不管是在台 ...

  2. java rpg对战_[源码和文档分享]基于java的RPG回合制游戏

    一.工作积累总结 该项目是一个回合制RPG游戏,讲述了动物主角对抗人类,自逃出动物园开始,一路与人类对抗,提升能力,并寻找新队友组成团体,逼得人类不得不与之谈判,最终与人类达成了和平协议的故事.玩家可 ...

  3. java lr分析表建立程序_[源码和文档分享]基于Java实现的LR(1)分析法语法分析程序...

    一 需求分析 自行定义文法, 运用语法分析方法对输入语句进行语法分析并输出结果,加深对语法分析过程的理解. 二 程序设计 2.1 总体思路 此次实验使用java编写.程序读取输入的token序列(如i ...

  4. qt 三方源码 画饼图_[源码和文档分享]基于VC++和QT实现的图的可视化工具

    一.开发环境 OS Windows 7 Ultimate 64 Bit IDE Visual Studio 2012 Premium (MSVC++ 11.0) Qt5 Visual Studio A ...

  5. java 仿qq庅_[源码和文档分享]基于java 的仿QQ聊天工具

    一 需求分析 本系统是基于java开发的聊天室.有用户注册.用户登陆.修改密码.忘记密码.添加好友.用户聊天.群聊功能.如果服务器还没有启动,则客户端是不可以登陆.注册.忘记密码,如果在运行过程中,服 ...

  6. java pop邮件 源码_[源码和文档分享]基于JavaMail的邮件收发系统

    摘 要 电子邮件在当今社会中扮演了一个很重要的角色.越来越多的人在使用它.而且用它的人数势必会继续增加.本文介绍了Javamail邮件收发系统的开发背景,对国内外现有的多种成熟的电子邮件系统进行分析和 ...

  7. javamail 解码 base64 html格式邮件_[源码和文档分享]基于JavaMail的邮件收发系统

    摘 要 电子邮件在当今社会中扮演了一个很重要的角色.越来越多的人在使用它.而且用它的人数势必会继续增加.本文介绍了Javamail邮件收发系统的开发背景,对国内外现有的多种成熟的电子邮件系统进行分析和 ...

  8. [源码和文档分享]基于C语言的局域网飞鸽传书软件设计与实现

    摘 要 网络通讯在当今已经不算新鲜事物,但大多数网络通讯都需要借助Internet上的服务器,这就给那些具有大规模内部网络的用户造成了许多问题,如浪费网络资源.遭遇到网络攻击.传播的病毒.破坏防御系统 ...

  9. 和java通信_[源码和文档分享]基于JAVA的即时通信软件

    一.设计任务书 1.1 设计任务 本文设计的是一个简单的即时通信软件,利用 Java Socket 进行点到点通信,其工作机制模仿即时通信软件的基本功能,已实现的功能有:客户端登录 客户端退出 群组成 ...

最新文章

  1. mysql cmd常用命令
  2. 文件监视器——Filemon
  3. 用C#实现计算机图形学算法
  4. [Machine Learning] Random Forest 随机森林
  5. 阿里巴巴的云原生应用开源探索与实践
  6. html布局(盒子)
  7. 文献阅读6-Entity-Relation Extraction as Multi-turn Question Answering(实体关系联合抽取,层次标签依赖关系,multi-turn QA)
  8. linux接收数据并保存到环形缓冲区,自定义print函数缓存打印数据到环形缓冲区...
  9. 【报告分享】2022全面数字化发展下的消费市场洞察.pdf(附下载链接)
  10. js导出变量 vue_Vue+Element前端导入导出Excel
  11. 鸿蒙汽车电动尾门工厂,汽车智能电动尾门为什么能成为汽车电子行业“新宠”?...
  12. 清华大学计算机与科学系张荷花简历,清华大学软件学院
  13. 本地数据库迁移至服务器数据库的教程
  14. 新零售mysql设计 订单表 订单详情表
  15. listview增大条目间距
  16. win11家庭版如何彻底关闭病毒实时保护
  17. (详细)华为NOVA3i INE-TL00的usb调试模式在哪里开启的流程
  18. 国产M0核风机量产程序开发方案… FOC电机控制开发方案…3电阻采样
  19. Markdown编辑器推荐与语法教程--图片版
  20. 计算机专业高级知识,高级选择_电脑基础知识_IT计算机_专业资料

热门文章

  1. python解释器运行代码-python解释器怎么运行
  2. python绘制雷达图-使用Python绘制雷达图
  3. python数据类型-Python语言基本数据类型
  4. python入门到实践-看完Python从入门到实践后该看什么书?
  5. python读取文件某一行-python计算文件的行数和读取某一行内容的实现方法
  6. python入门教程共四本书籍-关于 Python 的经典入门书籍有哪些?
  7. python列表按照指定顺序排序-pandas中的DataFrame按指定顺序输出所有列的方法
  8. windows或Ubuntu中请求github.com请求超时,或在下载GitHub文件出现:<urlopen error [Errno 110] Connection timed out>
  9. dup and dup2的剖析
  10. $Django 中间件 csrf