Ubuntu16.04和18.04安裝pfring

官方wiki: http://www.ntop.org/guides/pf_ring/index.html
其他:
高速的網絡抓包庫PF_ring介紹及編譯安裝
Ubuntu 16.04 LTS 安裝pfring
PF_RING 總結
https://blog.csdn.net/ygm_linux/article/category/6802624

下載pfring源碼包

下載地址:https://github.com/ntop/PF_RING

版本選擇:7.4.0

編譯7.0.0版本時ubuntu會報錯,我沒有花時間解決,7.4.0都不會報錯

源碼目錄結構

主要的目錄結構如下:

PF_RING-7.4.0/ 
    drivers/
    kernel/
    userland/
    Makefile
    ...

編譯

在主目錄下直接make,缺什麼安裝什麼。

中間會有一些警告,可以忽略。

安裝

make完成後,分別進入kerneluserland/libuserland/libpcap1.7.4drivers/intel/e1000e/e1000e-3.2.7.1-zc/src中分別執行sudo make install

激活PF_RING使其加載到內核工作

cd /lib/modules/`uname -r`/kernel/net/pf_ring
# sudo insmod ./pf_ring.ko [min_num_slots = N] [enable_tx_capture = 1 | 0] [enable_ip_defrag = 1 | 0]
# min_num_slots:		ring slots最小值;默認4096
# enable_tx_capture:	爲1抓取從網口出去的包,否則不抓;默認tx,rx都抓取
# enable_ip_defrag:		是否對rx ip分片進行重組
# quick_mode:			爲1時工作在全速模式,但是每個接口只能有一個socket
sudo insmod pf_ring.ko min_num_slots=8192 quick_mode=1
# sudo insmod pf_ring.ko transparent_mode=1 (若已經激活,可以使用sudo rmmod prf_ring卸載)

激活驅動

完成上一步PF_RING已經在原有網絡驅動上工作了,抓包效率已經有了很大的提升,但是PF_RING也可以工作在專有驅動上,抓包性能更強,但是這和硬件有關,並不是所有的硬件都支持,詳情參考官方wiki

ethtool -i ethx 	#以e1000e網卡爲例
sudo rmmod e1000e -----先卸載
cd /lib/modules/`uname -r`/kernel/drivers/net/ethernet/intel/e1000e
sudo insmod e1000e.ko -----再安裝

8、至此PF_RING安裝完畢 當PF_RING激活,會創建一個新的入口/proc/net/pf_ring。

cat /proc/net/pf_ring/info
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章