0、Linux下C语言 编写简单的网络嗅探器: 前言
需要掌握的部分知识
- 一定的Linux基础( 常用命令 gcc 、vim、ping、whois等)
- C语言、socket编程
- QT等图形库( 编写一个GUI的界面)
- 计算机网络( 各种常见的协议, 五层模型)
推荐书籍
《TCPIP 网络实验程序篇》
《linux就该这么学》
…
基本思路
- 程序运行后 , 创建socket , 进入while(1)循环,抓取每一个数据包
- 读取一个数据包后对包进行具体的分析
- 最后再实现图形化功能
在《TCPIP 网络实验程序篇》 的实例程序的流程图也比较详细
准备的东西
- 代码编辑器(VS code )
- 安装一个虚拟机( 跑测试代码用的, 后面贴出来的代码在Kali、centos、Ubuntu下可以运行 其他没有测试)
2020/10/20目前卡在分析应用层数据包阶段, 写一下博客记录学习过程