![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
pcap
文章平均质量分 86
viktor
这个作者很懒,什么都没留下…
展开
-
libpcap steps (2) 简单的抓包实现。
用libpcap抓包的简单流程:1. 获得设备名:pcap_findalldevs列出所有设备——选择列出的网络设备,在链表中找到。得到设备名以后把链表释放。或者直接存在字符串里2. pcap_open_live用设备名打开设备(另一个函数是pcap_open_dead,略猎奇)3. pcap_loop开始抓包。这里没有使用混杂模式。(第二个参数是0)4. 利用回调函数处理捕获原创 2012-03-15 23:18:09 · 1668 阅读 · 0 评论 -
libpcap steps (1) 使用pcap_findalldevs列出设备
libpcap版本1.3.0-PRE-GIT#include #include #include #define __USE_BSD#include #include #define Debug(format, ...) fprintf(stderr, "%s:%d: "format "\n", __FILE__, __LINE__, ##__VA_ARGS__)原创 2012-03-15 13:08:17 · 3724 阅读 · 0 评论 -
libpcap steps (3) pcap内存映射分析
结论: pcap默认使用mmap方式读取包。所以不需要过多的去考虑抓包的效率问题。内部已经做得很完美了。ref: http://www.diybl.com/course/3_program/c++/cppxl/20100408/202002_3.html在libpcap-1.0.0中引入了zerocopy BPF,那么这个zerocopy BPF又是什么呢?PACKET_MMAP原创 2012-03-16 10:23:33 · 1996 阅读 · 0 评论