美文网首页
[Suricata]基于DPDK抓包

[Suricata]基于DPDK抓包

作者: LzSkyline | 来源:发表于2020-09-06 12:26 被阅读0次

    项目需要用到Suricata的解包能力, 但由于分光流量较大, 软件自带的抓包方式并不能满足需求, 于是发现了这个基于dpdk的Suricata.

    使用过程中遇到一些依赖和万兆网卡驱动的问题, 已经解决并merge到master分支了, 现在clone下来应该可以直接用

    安装DPDK

    # 下载安装
    wget http://fast.dpdk.org/rel/dpdk-18.11.tar.xz
    tar xf dpdk-18.11.tar.xz
    # 依赖安装
    yum install -y net-tools.x86_64 numactl-devel python3
    # 安装DPDK
    # 停掉虚拟网卡
    # ifconfig em1 down
    # 运行安装脚本
    ./dpdk-setup.sh
    # 根据系统版本选择合适的linuxapp, 编译安装
    # 插入IGB UIO
    # 设置NUMA大页系统
    # 选定地址, 绑定虚拟网卡到igb_uio
    # 卸载的话则选定地址, 绑定到ixgbe
    # 完成安装
    # 配置环境变量
    export RTE_SDK=${PWD}
    export RTE_TARGET=x86_64-native-linuxapp-gcc
    

    安装DPDK_Suricata

    git clone https://github.com/vipinpv85/DPDK_SURICATA-4_1_1
    # 依赖
    yum -y install gcc libpcap-devel pcre-devel libyaml-devel file-devel \
      zlib-devel jansson-devel nss-devel libcap-ng-devel libnet-devel tar make openssl openssl-devel \
      libnetfilter_queue-devel lua-devel PyYAML libmaxminddb-devel rustc cargo librdkafka-devel \
      lz4-devel libxml2
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    
    # 编译安装
    autoconf
    ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-dpdk --enable-rdkafka
    make -j 30
    sudo ldconfig
    sudo make install
    
    sudo LD_LIBRARY_PATH=/usr/lib suricata --dpdk
    

    由于流量比较大, 结果的写出也要使用kafka的方式, 不然性能还是扛不住, 这块没有找到现成的, 于是自己撸了一边, 后面会另写一篇文章描述

    本文链接:

    https://www.lzskyline.com/archives/117/

    相关文章

      网友评论

          本文标题:[Suricata]基于DPDK抓包

          本文链接:https://www.haomeiwen.com/subject/yykcektx.html