Configuration

The system allows to record the traffic for selected protocols in PCAP format. It can save also metadata of HTTP requests, SIP, FTP in log files.

PCAP

To start recording IP or CIDR traffic (0.0.0.0/0 - to record all traffic)

ajb_save_ip=192.168.0.0/24

This is a "hot" parameter, so this list can be changed with the command: service fastdpi reload

ajb_save_ip works independently of the subscriber on the input itself and writes all subscriber traffic before services and policing were applied to it.

If you set the configuration parameter

ajb_reserved=1

the memory for the record buffer is allocated in advance (at DPI start) and you can start and stop data recording on the run. You only need to change parameters ajb_save_url, ajb_save_udpi and ajb_save_ip.

To record the data in PCAP format: please use the following parameters in configuration file /etc/dpi/fastdpi.conf:

ajb_save_udpi=1 ajb_save_udpi_proto=OSPFIGP:ospf-lite ajb_udpi_path=/var/dump/dpi

Here:

ajb_save_udpi=1 - activate the traffic recording for a list of protocols

ajb_udpi_path=/var/dump/dpi - is a directory to place log files (/var/dump/dpi by default)

ajb_save_udpi_proto=OSPFIGP:ospf-lite - is a list of protocols to record as test or numerical identificators. This is a hot parameter. It can be changed on the run by command service fastdpi reload.

You can also activate service 12 (traffic recording) individually for each subscriber.

PCAP files index mask

0 - not created

1 - via IPv4

2 - via IPv6

3 - via both IPv4 and IPv6.

ajb_pcap_ind_mask=0 // not created ajb_pcap_ind_mask=1 // via IPv4 ajb_pcap_ind_mask=2 // via IPv6 ajb_pcap_ind_mask=3 // via both IPv4 and IPv6

This is a hot parameter. It can be changed on the run by command service fastdpi reload.

HTTP

To record HTTP requests' metadata: please use the following parameters in configuration file /etc/dpi/fastdpi.conf:

ajb_save_url=-1 ajb_save_url_format=ts:prg:login:ipsrc:ipdst:host:path:ref:uagent:cookie:tphost:blockd:method ajb_url_path=/var/dump/dpi ajb_url_ftimeout=30

Here:

ajb_save_url=-1 - activate recording of HTTP metadata

ajb_url_path=/var/dump/dpi - is the directory to place files with these records (/var/dump/dpi by default)

ajb_url_ftimeout=30 - recording frequency

ajb_save_url_format=ts:prg:login:ipsrc:ipdst:host:path:ref:uagent:cookie:tphost:blockd:method - is the list of metadata to record:

ts - timestamp

prg - id of currently active services

login - subscriber's login

ipsrc - IP address of the request source (subscriber)

ipdst - IP address of the request recipient (host)

host - host name (field Host/CNAME/SNI/QUIC)

path - path to the requested resource (URI) on the host

ref - referral source (Referer field)

uagent - browser type (User-Agent field)

cookie - cookies (Cookie field)

ssid - session identifier (for connection with Netflow/IPFIX volume data)

tphost - data type in the Host field (HTTP=1/CNAME=2/SNI=3/QUIC=4)

blockd - bit mask, blocking/redirect sign (0x3 - for HTTP, 0x1 - for the rest)

method - method 1 - GET, 2 - POST, 3 - PUT, 4 - DELETE (the field is available from version 6.0)

SSL/TLS

To record SSL/TLS requests' metadata: please use the following parameters in configuration file /etc/dpi/fastdpi.conf:

ajb_save_ssl=-1

Here flag mask for saving SSL:

0 - not saved

1 - sni (SSL)

2 - cname

3 - sni (QUIC)

-1 - to record everything

ajb_save_ssl_format=ts:prg:login:ipsrc:ipdst:host:tphost:blockd:method ajb_ssl_path=/var/dump/dpi ajb_ssl_ftimeout=30

Here:

ajb_save_ssl=-1 - enable SSL/TLS metadata recording

ajb_ssl_path=/var/dump/dpi - the location of the files with the record (by default /var/dump/dpi)

ajb_ssl_ftimeout=30 - recording frequency

ajb_save_ssl_format=ts:prg:login:ipsrc:ipdst:host:path:ref:uagent:cookie:tphost:blockd:method - list of metadata to write, where

ts - timestamp

prg - id of currently active services

login - subscriber's login

ipsrc - IP address of the request source (subscriber)

ipdst - IP address of the request recipient (host)

host - host name (field Host/CNAME/SNI/QUIC)

path - path to the requested resource (URI) on the host (where applicable)

ref - referral source (Referer field) (where it is applicable)

uagent - browser type (User-Agent field)(where it is applicable)

cookie - cookies (Cookie field) (where it is applicable)

ssid - session identifier (for connection with Netflow/IPFIX volume data)

tphost - data type in the Host field (HTTP=1/CNAME=2/SNI=3/QUIC=4)

blockd - bit mask, blocking/redirect sign (0x3 - for HTTP, 0x1 - for the rest)

method - method 1 - GET, 2 - POST, 3 - PUT, 4 - DELETE (the field is available from version 6.0) (where it is applicable)

</code>

SIP

To record SIP requests' metadata: please use the following parameters in configuration file /etc/dpi/fastdpi.conf:

ajb_save_sip=1 ajb_sip_ftimeout=15 ajb_sip_path=/home/sip ajb_save_sip_format=ts:ssid:ipsrc:ipdst:login:msg:scode:from:to:callid:uagent

Here:

ajb_save_sip=1 - enable writing SIP metadata

ajb_sip_path==/home/sip - the location of the files with the record (by default /var/dump/dpi)

ajb_sip_ftimeout=15 - recording frequency

ajb_save_sip_format=ts:ssid:ipsrc:ipdst:login:msg:scode:from:to:callid:uagent - list of metadata to write, where

ts - timestamp

ssid - session identifier (for connection with Netflow/IPFIX volume data)

ipsrc - subscriber's IP

ipdst - Server IP

login - subscriber's LOGIN

msg - message type

scode - status code

from - number/id of the caller

to - number/identifier of the callee

callid - call identifier

uagent - type of subscriber device (User-Agent)