Linux ,c/c++, web,前端,php,js
分类:
2011-11-11 12:59:09
原文地址:包捕获及包分析之三:使用pf_ring提高包捕获效率 作者:大隐隐于床
pf_ring不再多说,网上有各种评测,以下是如何使用。
一、安装使用pf_ring
1 下载 pf_ring
svn co
2 安装 pf_ring 内核模块
1) cd PF_RING/kernel
2) make 生成 pf_ring.ko
3) insmod pf_ring.ko thansparent_mode=1
注意: thansparent_mode有三种模式, 越高的transparent_mod值,获得报文捕获的速度越快:
0: 缺省,不需要安装任何驱动, 利用标准的Linux接口接收报文, 任何驱动都能使用该模式.
1: 需要安装驱动.
2: 需要安装驱动, pfring以外程序抓不到数据包.
3 安装 pf_ring 库
1) cd PF_RING/userland/lib
2) ./configure --prefix=/usr
3) make; make install
4 安装 pf_ring 版本的 libpcap
1) cd PF_RING/userland/libpcap
2) ./configure --prefix=/usr
3) make; make install
5 在应该程序中宏定义(这一步在makefile中加了 -DHAVE_PF_RING 时可以省略)
#define HAVE_PF_RING
6 修改应用程序Makefile
/* * * * */
objects = /usr/lib/libpcap.so /usr/lib/libpfring.so
libs = -lpcap -lpfring
flag = -D HAVE_PF_RING
edit : $(objects)
gcc $(lib) $(flag) ppacket.c -o ppacket $(objects)
/* * * * */
二、安装pf_ring驱动
1、用ethtool查看你的网卡型号。如,ethtool -i eth0
2、卸载原网卡驱动:如,sodu rmmod e1000e
3、进到驱动目录,/drivers/PF_RING_ware///src:
如,PF_RING-5.4.4/drivers/PF_RING_ware/intel/e1000e/e1000e-2.0.0.1/src
4、make; make install