基于Libpcap和Qt5的嗅探器代码篇
计算机网络的课程设计 |
基于Libpcap实现了一个简单的嗅探器,可分析各层协议并打印结果,实现了简单的流量统计,并将结果实时打印至界面控件中。
抓包与分析的实现部分参考了这位大佬 的系列文章。
具体经验教程之后会写(多么鲜艳的Flag)
开发环境与技术栈
- 开发环境:Ubuntu 18.04、CLion、QtCreator
- 运行须安装配置libpcap和Qt5
运行
项目指路
环境配置完成后,进入build目录下打开终端,运行./Sniffer
即可。
文件功能
- protocol.h:定义各协议结构体
- analyze类:定义各协议解析函数
- widget类:Libpcap抓包函数、以太网数据帧解析(回调函数)、窗口功能
- sniffer类:*面循环抓包实现(是widget的简化版,但运行时不需要)
效果展示
欢迎指正与讨论! |