环境:
  系统:CentOS 6.8
  内核版本:4.4.43
  PF_RING版本:6.9.0

编译PF_RING需要内核源码,由于我的机器上只有4.4.43版本的modules和4.4.43的源码,并没有在该机器上编译这个版本的内核,没有编译的中间文件,尝试编译PF_RING失败了,所以我先编译了一下内核。

Step 1. 编译内核。也许别人并不需要这一步。
    我需要编译的原因是,我把编译内核的中间文件给删除了,也就是 /lib/module/x.x.xx 文件夹里 build 和 source 软连接指向的文件夹给删掉了,所以我要编译一遍内核,把这两个软连接指向我编译的目录。

Step 2. 安装软件包,在编译过程中提示有两个命令找不到 bison、lex,编译前需要先安装 bison flex。

yum -y install bison flex

  是的,安装的软件包是flex,不识别的命令是lex,不是我打错了。

Step 3. 卸载网卡驱动。这一步就比较谨慎了,别人说要先卸载网卡驱动,我不明白为什么这么做。卸载了网卡驱动,该机器的远程连接可能就会断了,我的机器上有两种网卡,e1000e和ixgbe,我需要编译的是ixgbe的驱动,机器接入局域网用的e1000e网卡,所以我远程卸载ixgbe驱动是没有问题的。假使要卸载的网卡驱动是正在使用的,就要去机器边上操作了。卸载libpcap。rpm -qa | grep libpcap查看安装版本, 然后执行rpm -e libpcapXXX卸载。

#查看安装版本
rpm -qa | grep libpcap
#卸载
rpm -e libpcapXXX

Step 4. 编译、安装pf_ring。进入到PF_RING_DEV/kernel/文件夹下,执行 make编译, make install 安装 pf_ring驱动和头文件。这一步就可以获得 pf_ring.ko 了。

Step 5. 进入 userland/lib,把这个文件里和上个文件夹里的 configure 赋予可执行权限 chmod +x configure,执行 ./configure,make,这个时候就可以获得libpfring.a和libpfring.so文件了。

Step 6. 编译pcap库。进入userland/libpcap,赋予configure可执行权限,执行./configure , make,获得了libpcap.so,so文件后面可能会跟上版本号。

Step 7. 编译网卡驱动。我需要的ixgbe网卡驱动,进入drivers/intel/ixgbe/ixgbe-5.0.4/src,执行make,获得了ixgbe.ko文件。

到这一步,需要的文件差不多都有了,有几步中我只执行了make,并没有执行make install,是想把这些文件拿走放到自己的文件夹中使用。

drivers/intex/igb/igb-xxxx/src 这个文件夹中有 load_driver.sh 脚本文件,修改这个脚本文件中的路径和网卡类型名就可以使用了(执行这个脚本前还要在/mnt 路径下创建一个文件夹huge,不然挂不上大页)。

CentOS6.8 4.4.43内核 安装PF_RING的更多相关文章

  1. 【转】CentOS安装PF_RING(虚拟机)

    1.       概述 PF_RING是Luca Deri发明的提高内核处理数据包效率,并兼顾应用程序的补丁,如Libpcap和TCPDUMP等,以及一些辅助性程序(如ntop查看并分析网络流量等). ...

  2. centos6.5源码升级内核

    centos6.5源码升级内核 升级前 系统版本:  CentOS5.5 内核版本:  2.6.18-194.el5 升级前做过简单配置文件修改 yum -y upgrade    升级后 系统版本: ...

  3. centos6.5环境源码编译安装mysql5.6.34

    centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...

  4. centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课

    centos vmware centos6.6 64位 kvm虚拟化安装配置     第四十二节课 上半节课 下半节课 f

  5. centos6.5环境通过rpm包安装mysql5.5.51数据库

    centos6.5环境通过rpm包安装mysql5.5.51数据库 注意:此方法适用于单独安装数据库的需求,如果在该机器上还需要安装php环境,建议mysql通过编译或yum方式安装 1.查找已经安装 ...

  6. Firefox 43无法安装xpi的问题

    Firefox 43无法安装xpi的问题 说明:Firefox 42将默认禁止安装未签名扩展   强制禁用这个首选项(高级用户): 你可以在 Firefox 配置编辑页面 (about:config ...

  7. CentOS6.5菜鸟之旅:安装Realtek无线网卡驱动

    一.前言 CentOS6.5不像CentOS7和Unbuntu那样自动安装好了无线网卡驱动,因此需要我们折腾一下. 二.安装前的准备工作   [a] 检查无线网卡驱动的安装情况(通过查看网络接口的安装 ...

  8. Linux中CentOS6.5 64位 系统下安装docker步骤

    CentOS6.5 64位    (docker目前仅支持64位)内核必须在3.10及以上 1. uname -r  查看内核版本 2. 升级内核到3.10版本(带aufs模块)    cd /etc ...

  9. Centos6.5下Oracle 11g R2安装过程

    1准备 CentOS-6.5-x86_64-bin-DVD1 linux_11gR2_database_1of2 linux_11gR2_database_2of2 VMware Workstatio ...

随机推荐

  1. 拜拜了,GOPATH君!新版本Golang的包管理入门教程

    Go 1.11和1.12实现了对包管理的初步支持,Go的新依赖管理系统使依赖版本信息明确且易于管理.Using Go Modules - The Go Blog 新的包管理模式有什么不同? 作为Go语 ...

  2. 【前端必备】一、HTML篇

    1.文档类型是什么概念,起什么作用?    <!DOCTYPE> 声明此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范.   该标签可声明三种 DTD 类型,分别表示严格版本 ...

  3. 分享Kali Linux 2017年第30周镜像文件

     分享Kali Linux 2017年第30周镜像文件 Kali Linux官方于7月23日发布2017年的第30周镜像.这次维持了11个镜像文件的规模.默认的Gnome桌面的4个镜像,E17.KDE ...

  4. Beaglebone Black教程使用SSH通过USB和因特网连接Beaglebone Black

    Beaglebone Black教程使用SSH通过USB和因特网连接Beaglebone Black 使用SSH通过USB和因特网连接Beaglebone Black SSH是Secure Shell ...

  5. RMQ入门

    注:为方便描述算法 便于记忆 所以ST的代码用Pascal书写 见谅 RMQ,即Range Minimum/Maximum Query问题,给定一个区间,询问不同子区间的最值问题. 当询问次数较少时, ...

  6. DHCP获取IP地址过程中捕获的报文—三级网络总结(二)

    上一篇文章主要说了一下知识点中的IP地址的考点,这一篇我打算说说DHCP获取IP地址过程中捕获的报文的这个考点,都是自己的理解,有错误欢迎指正. DHCP是应用层协议,UDP是传输层协议,IP是网络层 ...

  7. 【贪心】【线性基】bzoj2460 [BeiJing2011]元素

    题意:让你求一些数在XOR下的带权极大无关组. 带权极大无关组可以用贪心,将这些数按权值从大到小排序之后,依次检验其与之前的数是否全都线性无关.可以用线性基来搞. 可以用拟阵严格证明,不过也可以脑补一 ...

  8. echarts 关系图graph force布局 拖动节点并固定不返回原点

    myChart.on('mouseup',function(params){var option=myChart.getOption();option.series[0].nodes[params.d ...

  9. 解决maven无法下载jar的问题

    先去本地仓库查看是否有没有jar包,如果没有并且存在除jar包以外的文件,先将文件删除,重新用maven下载一遍.如果还是不行,就自己下载jar包导入到本地仓库,但是不能手动的添加文件夹和pom.xm ...

  10. 从源码入手,一文带你读懂Spring AOP面向切面编程

    之前<零基础带你看Spring源码--IOC控制反转>详细讲了Spring容器的初始化和加载的原理,后面<你真的完全了解Java动态代理吗?看这篇就够了>介绍了下JDK的动态代 ...