Difference between revisions of "Napatech"
(13 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
− | /opt/napatech3/config/ntpcap.ini | + | == Configuration & building == |
+ | |||
+ | = First Installation = | ||
+ | |||
+ | |||
+ | == Steps == | ||
+ | |||
+ | * download latest Napatech drivers and untar it into e.g. /opt/napatech3 | ||
+ | * build the driver | ||
+ | * download the the sniffer's source | ||
+ | |||
+ | cd /usr/src | ||
+ | git clone -b master https://github.com/voipmonitor/sniffer.git | ||
+ | OR | ||
+ | git clone -b develop https://github.com/voipmonitor/sniffer.git | ||
+ | cd sniffer | ||
+ | ./configure --with-dpdk-include=/opt/napatech3/include --with-dpdk-lib=/opt/napatech3/lib | ||
+ | |||
+ | Install all libraries that the configure needs. | ||
+ | |||
+ | * run make | ||
+ | * check it's built properly | ||
+ | |||
+ | root@server:/usr/src/sniffer# ldd ./voipmonitor | grep pcap | ||
+ | libpcap.so.1 => /opt/napatech3/lib/libpcap.so.1 (0x00007fc0b69b0000) | ||
+ | |||
+ | * replace original binary in the /usr/local/sbin | ||
+ | * run it | ||
+ | |||
+ | = Upgrade = | ||
+ | |||
+ | ==The GUI way (from the sensor's version 24.23)== | ||
+ | |||
+ | |||
+ | Until sensor's version 24.23 was not possible to do the sensor's upgrade via 'upgrade_by_git' option because the configure script | ||
+ | overwritten the adjusted Makefile and you built a binary with standard pcap libs (until you overwritten the orig libs). With 'configure_param' option you can adjust the Makefile creation for appropriate includes/libs | ||
+ | |||
+ | |||
+ | * set these options into voipmonitor.conf | ||
+ | |||
+ | upgrade_by_git = yes | ||
+ | git_folder = /usr/src/sniffer | ||
+ | configure_param = --with-dpdk-include=/opt/napatech3/include --with-dpdk-lib=/opt/napatech3/lib | ||
+ | |||
+ | * restart sniffer | ||
+ | * do the upgrade via clicking in the GUI | ||
+ | |||
+ | The sniffer will perform (after click on UPGRADE in GUI) git pull,configure,make_clean,make, service voipmonitor stop, make install, service voipmonitor start. | ||
+ | |||
+ | |||
+ | ==The manual way== | ||
+ | cd /usr/src/sniffer | ||
+ | git pull | ||
+ | make | ||
+ | |||
+ | * copy to the original directory and restart sensor | ||
+ | |||
+ | |||
+ | = napatech drivers = | ||
+ | |||
+ | == Settings sample == | ||
+ | |||
+ | * in voipmonitor.conf | ||
+ | interface = napa0 | ||
+ | |||
+ | # filter option must be commented out !!! E.g. | ||
+ | #filter = udp or (vlan and udp) | ||
+ | |||
+ | * /opt/napatech3/config/ntpcap.ini | ||
− | # Napatech default ntpcap.ini file | + | # Napatech default ntpcap.ini file |
+ | [Common] | ||
+ | Ntpl1 = "Assign[streamid=0;txport=0;txignore=true]=all" | ||
+ | |||
+ | [napa0 ] | ||
+ | StreamId = 0 | ||
+ | Tx = 0 | ||
+ | |||
+ | * old version | ||
[napa0] | [napa0] | ||
Rx1="Assign[streamid=252;txport=0;txignore=true]=all" | Rx1="Assign[streamid=252;txport=0;txignore=true]=all" | ||
Tx=0 | Tx=0 | ||
− | |||
− | + | * /opt/napatech3/config/ntservice.ini | |
− | |||
[System] | [System] | ||
Line 47: | Line 121: | ||
System dependent: | System dependent: | ||
TimeSyncConnectorExt1 = NttsIn | TimeSyncConnectorExt1 = NttsIn | ||
+ | |||
+ | == Hints == | ||
+ | === Filter traffic on Napatech card === | ||
+ | If you want to filter a data directly in the Napatech card you can use this example as a starting point. | ||
+ | (many thanks to Distributel for the example) | ||
+ | |||
+ | Create a file e.g /opt/napatech3/myfilter.ntpl | ||
+ | |||
+ | # Start NTPL | ||
+ | # Delete all existing filter | ||
+ | delete = all | ||
+ | |||
+ | # Setup UDP macros | ||
+ | |||
+ | DefineMacro("mUdpSrcPort", "Data[DynOffset=DynOffUDPFrame;Offset=0;DataType=ByteStr2]") | ||
+ | DefineMacro("mUdpDestPort", "Data[DynOffset=DynOffUDPFrame;Offset=2;DataType=ByteStr2]") | ||
+ | |||
+ | # Setup filters | ||
+ | # The first line is the SIP filter. The second line is the RTP filter for our specific ports in HEX (10000-61743) | ||
+ | |||
+ | Assign[StreamId = 0] = (mUdpSrcPort == 5060, 5061) AND (mUdpDestPort == 5060, 5061) | ||
+ | Assign[StreamId = 0] = (mUdpSrcPort == (0x2710..0xF12F)) | ||
+ | # End NTPL | ||
+ | |||
+ | Start it with the command | ||
+ | |||
+ | /opt/napatech3/bin/ntstart.sh -n myfilters.ntpl |
Latest revision as of 19:34, 6 March 2024
Configuration & building
First Installation
Steps
- download latest Napatech drivers and untar it into e.g. /opt/napatech3
- build the driver
- download the the sniffer's source
cd /usr/src git clone -b master https://github.com/voipmonitor/sniffer.git OR git clone -b develop https://github.com/voipmonitor/sniffer.git cd sniffer ./configure --with-dpdk-include=/opt/napatech3/include --with-dpdk-lib=/opt/napatech3/lib
Install all libraries that the configure needs.
- run make
- check it's built properly
root@server:/usr/src/sniffer# ldd ./voipmonitor | grep pcap libpcap.so.1 => /opt/napatech3/lib/libpcap.so.1 (0x00007fc0b69b0000)
- replace original binary in the /usr/local/sbin
- run it
Upgrade
The GUI way (from the sensor's version 24.23)
Until sensor's version 24.23 was not possible to do the sensor's upgrade via 'upgrade_by_git' option because the configure script overwritten the adjusted Makefile and you built a binary with standard pcap libs (until you overwritten the orig libs). With 'configure_param' option you can adjust the Makefile creation for appropriate includes/libs
- set these options into voipmonitor.conf
upgrade_by_git = yes git_folder = /usr/src/sniffer configure_param = --with-dpdk-include=/opt/napatech3/include --with-dpdk-lib=/opt/napatech3/lib
- restart sniffer
- do the upgrade via clicking in the GUI
The sniffer will perform (after click on UPGRADE in GUI) git pull,configure,make_clean,make, service voipmonitor stop, make install, service voipmonitor start.
The manual way
cd /usr/src/sniffer git pull make
- copy to the original directory and restart sensor
napatech drivers
Settings sample
- in voipmonitor.conf
interface = napa0 # filter option must be commented out !!! E.g. #filter = udp or (vlan and udp)
- /opt/napatech3/config/ntpcap.ini
# Napatech default ntpcap.ini file [Common] Ntpl1 = "Assign[streamid=0;txport=0;txignore=true]=all" [napa0 ] StreamId = 0 Tx = 0
- old version
[napa0] Rx1="Assign[streamid=252;txport=0;txignore=true]=all" Tx=0
- /opt/napatech3/config/ntservice.ini
[System] TimestampFormat = NATIVE_UNIX TimestampMethod = EOF HostBufferWaitMethod = 0 SDRAMFillLevelWarning = 0
[logging] LogMask = 0x07 LogToFile = 0 LogFileName = /tmp/Log3G_%s.log LogBufferWrap = wrap [Adapter0] AdapterType = NT4E BusId = 00:07:00:00 PacketDescriptor = NT HostBuffersRx = [8,16,0] HostBuffersTx = [8,16,0] TimeSyncProtocol = NT TimeSyncConnectorIn = Ext TimeSyncConnectorOut = None TimeSyncConnectorRepeat = None TimeSyncTimeJumpThreshold = 1 TimeSyncTimeOffset = 0 MaxFrameSize = 9018 AltTPID = 0x8100 Profile = Capture DiscardSize = 16 OsTimeSyncFailover = DISABLE
Timing source In napatech where timestamp of packets is shifted to GMT and you want use system time instead: GMT:
TimeSyncConnectorExt1 = PpsIn
System dependent:
TimeSyncConnectorExt1 = NttsIn
Hints
Filter traffic on Napatech card
If you want to filter a data directly in the Napatech card you can use this example as a starting point. (many thanks to Distributel for the example)
Create a file e.g /opt/napatech3/myfilter.ntpl
# Start NTPL # Delete all existing filter delete = all # Setup UDP macros DefineMacro("mUdpSrcPort", "Data[DynOffset=DynOffUDPFrame;Offset=0;DataType=ByteStr2]") DefineMacro("mUdpDestPort", "Data[DynOffset=DynOffUDPFrame;Offset=2;DataType=ByteStr2]") # Setup filters # The first line is the SIP filter. The second line is the RTP filter for our specific ports in HEX (10000-61743) Assign[StreamId = 0] = (mUdpSrcPort == 5060, 5061) AND (mUdpDestPort == 5060, 5061) Assign[StreamId = 0] = (mUdpSrcPort == (0x2710..0xF12F)) # End NTPL
Start it with the command
/opt/napatech3/bin/ntstart.sh -n myfilters.ntpl