- 论坛徽章:
- 0
|
本帖最后由 pdsxw123 于 2010-08-09 20:54 编辑
在论坛里已经有人把pf_ring的原理大概讲述了,在此不再累述。
大家如果想了解或者学习的话,可以直接从官方网站上下载,http://www.ntop.org
最新版本为4.4.0,目录为:
drivers\
drivers\broadcom
drivers\intel
drivers\myricom
kernel/ Kernel related patches
userland/ User space code
userland/lib/ User space library used to manpulate PF_RING
userland/libpcap-XXX-ring/ Libpcap enhanced with PF_RING support
userland/examples/ P(acket)count application (use it for your tests)
1.编译安装之前需要卸载网卡驱动,卸载之前可以使用ethtool -i ethx 查看当前网卡类型和驱动版本。
2.cd 到kernel下,make,然后sudo make install
3.cd 到userland/lib/下,make,然后sudo make install
4.如果需要使用libcap抓包做分析,请先卸载之前装的libcap,然后cd 到userland/libpcap-XXX-ring/
./configure ---> make -----> sudo make install
5.cd 到drivers下,根据ethtool -i ethx 命令看到的网卡驱动和类型,进入指定的目录。
假设你看到如下信息:
driver: e1000e
version: 1.0.2-k2
firmware-version: 0.4-3
bus-info: 0000:00:19.0
cd 到drivers\intel\e1000e-1.0.15下,
make ----> sudo make install
6.开始安装驱动,cd 到 lib/modules/xxx/kernel/net,可以看到有个pf_ring的目录,cd 到pf_ring下
使用命令 sudo insmod pf_ring.ko transparent_mode=1
7.安装网卡驱动,cd到目录lib/modules/xxx/kernel/driver/net下,
使用命令 sudo insmod e1000e.ko
安装完毕,现在我们可以使用命令 dmesg 查看驱动是否安装成功,如果成功的话,可以看到
[PF RING]..................
............................... 信息
pf_ring 会安装一个类型为27的协议簇,可以使用sock(PF_RING,SOCK_RAW,0)打开一个socket
使用libcap的朋友不需要修改程序,需要重新编译,链接的时候请加上libpfring.so.
刚接触pf_ring,主要是冲着能提高libcap的抓包效率去的,感兴趣的朋友可以一起讨论............................... |
|