前言
原创文章欢迎转载,请保留出处。
若有任何疑问建议,欢迎回复。
邮箱:Maxwell_nc@163.com
紧接着上一篇,成功通过tcpdump和wireshark抓包后,试试自己写一个抓包器。这里我们使用libpcap库开发。
创建配置工程
这里我们使用Eclipse for C/C++开发,安装的话只需要到eclipse官方下载解压就可以运行了,这里要注意的是,Eclipse要以root权限启动不然无法抓包。
17年4月4日追加:之前有网友给我发邮件说出现了Segmentation Fault,这是由于没有使用正确的权限导致的,原文中已经注明了,再次提醒下。
首先创建一个空白的C语言项目,工具链选择Linux GCC
添加源文件,起名main.c,首先要配置下,右键点击项目,选择属性,链接pcap,如下图所示:
编写抓包程序
这里我不逐一介绍libpcap的api了,可以参考
http://www.ferrisxu.com/WinPcap/html/group__wpcapfunc.html#g659439bf5aa3988b5a92d31990fbf437
这里我写了一个简单的抓包器,获得80端口的数据包30个:

本文档介绍如何基于libpcap库在Eclipse环境下创建一个抓包程序。首先,以root权限启动Eclipse并创建C语言项目,链接libpcap。然后,编写抓包程序,捕获80端口的前30个数据包。当遇到问题如Segmentation Fault时,检查权限。程序运行后,通过wireshark读取并解析生成的抓包文件,证明其有效性。要改为本地抓包,只需调整设备和过滤规则。

1049

被折叠的 条评论
为什么被折叠?



