nDPI学习尝试(下载,安装,样例) Ubuntu

首先给一下nDPI github链接
https://github.com/ntop/nDPI

希望通过二进制文件安装的可以到以下地址:
http://packages.ntop.org/

想通过git clone进行安装又觉得github下载速度太慢的兄弟可以去网上找一下从github把代码搬运到gitee的方法,这里就先不加说明。觉得麻烦的也可以从博主的gitee库下载(链接时效性不做保证)
https://gitee.com/zhu-jingyu-cc/nDPI

简介

好了,首先把简介亮一下,以下是来自官方给出的解释,博主自翻,有不对的地方可以在评论区指出。

nDPI是一个基于OpenDPI的DPI库,目前由ntop维护。

为了为您提供跨平台的DPI体验,除了Unix/Linux外,我们还支持Windous。此外,我们还修改了nDPI,使其更适合于流量监控应用程序。我们已经通过禁用网络流量监控所不必要的特定特性来实现这一点,从而加快了DPI引擎。

NDPI允许应用层检测协议,无论使用哪个端口。这意味着两者都可以在非标准端口上检测到已知的协议(例如,检测por上的HTTP),或相反(例如检测端口80上的Skype流量)。这是因为现在端口=应用程序的概念不再成立。

安装

这里就不对二进制文件安装多做介绍,直接到git clone安装。
如果不是root账户需要加sudo
首先是安装支撑环境

apt-get install libjson-c-dev
apt-get install build-essential 
apt-get install git autoconf automake autogen libpcap-dev libtool libgcrypt20-dev

接下来从gitee拷贝

git clone https://gitee.com/zhu-jingyu-cc/nDPI.git

或者github拷贝

git clone https://github/ntop/nDPI.git

一旦完成此操作,您就可以按照以下方式编译nDPI源代码:

cd <nDPI source code directory> 
./autogen.sh 
./configure 
make

这里注意,git clone 拷贝文件会挂靠在输入指令所在的地址。

指令集

演示ndpiReader应用程序可以用于速度/特性分析和封装支持。特别是,可以指定许多命令行选项。
下面列出了可用的选项和对每个选项的最小解释:
ndpiReader -i <file|device> [-f ][-s ]
[-p ][-l [-q][-d][-h][-t][-v ]
[-n ] [-w ] [-j ]
Usage:
-i <file.pcap|device> | Specify a pcap file/playlist to read packets from or a
device for live capture (comma-separated list)
-f | Specify a BPF filter for filtering selected traffic
-s | Maximum capture duration in seconds (live traffic
capture only)
-p .protos | Specify a protocol file (eg. protos.txt)
-l | Number of detection loops (test only)
-n | Number of threads. Default: number of interfaces in -i.
Ignored with pcap files.
-j <file.json> | Specify a file to write the content of packets in .json
format
-d | Disable protocol guess and use only DPI
-q | Quiet mode
-t | Dissect GTP tunnels
-r | Print nDPI version and git revision
-w | Write test output on the specified file. This is useful
for
| testing purposes in order to compare results across
runs
-h | This help
-v <1|2> | Verbose ‘unknown protocol’ packet print. 1=verbose,
2=very verbose

具体解释如下:

-i <file.pcap|device>
这指定从中读取数据包的pcap文件或用于实时捕获的设备。只能指定这两个选项中的一个。

-f < BPF filter >
它指定了一个用于筛选选定流量的BPF筛选器。它允许nDPI只接收那些与过滤器匹配的数据包(如果指定)。

-s < duration >
它以秒为单位定义捕获持续时间,仅用于实时流量捕获。

-p < file >.protos
它指定了一个协议文件(例如,protos.txt),以扩展对子协议和基于端口的协议检测的支持。请小心,定义为协议文件的协议会覆盖现有的协议。

-l < num loops >
检测循环数(仅限测试)。

-d
此标志将禁用nDPI协议的猜测,并且只使用DPI。

-t
它破坏了GTP隧道

-h
它会打印ndpiReader的帮助。

-v<1|2>
使用此标志,ndpiReader生成详细的输出,可用于调整其性能。1是显示“未知协议”数据包的最低级别,2 更多的是海绵体。

样例

实时捕获模式

下面的示例显示了ndpi读者通过使用参数-i来指定设备和指定实时捕获持续时间的参数-s来指定的ndpiReader实时捕获模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值