Commit Graph

1239 Commits

Author SHA1 Message Date
Pavel Odintsov 778aa47f82 Force C++ 11 for Poco library 2020-10-19 23:58:54 +01:00
Pavel Odintsov 7bb6b45e47
Adding support for capnp, poco and OpenSSL for new logic. (#863) 2020-10-19 23:02:16 +01:00
Pavel Odintsov 23f3613e43 Enabled build mode by default. Disabled mirror use by default 2020-10-19 21:44:42 +01:00
Max Dobladez 1623dcc0a3
fix routeros api support (#862)
* Add files via upload

support api-ssl for post MikroTik 6.45.1

* Update README.md

* Update README.md
2020-10-12 18:59:35 +01:00
Pavel Odintsov c87cd905c6 Fixed mask conversion logic for 0.0.0.0/0 networks. Fixes #123 2020-09-27 13:01:48 +01:00
Pavel Odintsov da30452fc1
Removed Snabb Switch support. Closes #858 (#859) 2020-09-27 12:22:50 +01:00
Pavel Odintsov eb887c80dd Switched back to release build 2020-09-26 20:47:04 +01:00
Pavel Odintsov 7abcdbf8ee Implemented logic to properly track internal traffic for incoming and outgoing directions 2020-09-26 20:40:28 +01:00
Pavel Odintsov 23efd99d27 Added C++ debug flags 2020-09-26 19:29:24 +01:00
Pavel Odintsov 38886ec4fe Added option to enable build with debug symbols 2020-09-26 19:26:53 +01:00
Pavel Odintsov bf4213fa4f
Added option to process intrenal traffic as external for attack detection purposes. Closes #856 (#857) 2020-09-25 18:35:35 +01:00
Pavel Odintsov 5a1db9e4db
Switched to using binaries for 1.1.7 version from installer 2020-09-12 09:33:16 +01:00
Pavel Odintsov 6859702b00 Moved stable version release into variable 2020-08-29 14:12:57 +01:00
Pavel Odintsov 13023204dd Added option to install FastNetMon packages directly from CI 2020-08-29 14:02:49 +01:00
Pavel Odintsov c3b04103cc Added missing include for std::thread for Netflow code 2020-08-29 13:51:39 +01:00
Pavel Odintsov db79cfb259
Deprecated LUA support. Closes #852 (#853) 2020-08-29 13:46:09 +01:00
Pavel Odintsov bc095bc1c3
Completely reworked Netflow and IPFIX support logic (#851) 2020-08-29 00:59:36 +01:00
Pavel Odintsov 9bb0cd085b
Implemented option to configure delay between traffic recalculations: speed_calculation_delay (#850) 2020-08-28 22:52:07 +01:00
Pavel Odintsov c0286711cc
Implemented sanity checks for sample / records lengths received from the wire in libsflow logic. Closes: #848 (#849) 2020-08-25 19:55:40 +01:00
Pavel Odintsov 4e7f714d1e Disabled memory pre-allocation in libsflow code to address security issue. Closes: #847 2020-08-24 21:57:17 +01:00
Pavel Odintsov ad5533bee2 Extracted endianless conversion functions to separate file 2020-08-23 14:29:12 +01:00
Pavel Odintsov 8e9e782b65 Fixed indentation issue 2020-08-23 13:28:30 +01:00
Jasper Lievisse Adriaanse 40689e8b68
Lacking SIOCGIFINDEX, fall back to if_nametoindex(3) (#832) 2020-08-19 19:37:12 +01:00
Pavel Odintsov 47720f899f Changed URL to official site 2020-08-02 16:15:30 +01:00
Pavel Odintsov 37c1404f4c Switched sflow plugin to our own libsflow parser. Closes #843 2020-08-02 15:36:15 +01:00
Pavel Odintsov 7b22357404
Added new sFlow parser which will replace exiting one. Closes #841 (#842) 2020-08-02 14:27:14 +01:00
Pavel Odintsov b9068dc1d7
Require C++ 11 support in compiler. Dropped CI target which builds code on standard gcc compilers in CentOS 6. Closes #839 (#840) 2020-08-02 13:24:30 +01:00
Pavel Odintsov add9b4a02b
Introduced new parser for traffic. Closes #837 (#838) 2020-08-02 13:12:42 +01:00
Pavel Odintsov c55eab60dc
Moved simple_packet into separate file to break include cycle. Closes #835 (#836) 2020-08-02 12:28:49 +01:00
Pavel Odintsov 5285bc36ef
Added new structures for network packets processing #833 (#834) 2020-08-02 12:04:37 +01:00
Pavel Odintsov 8d0a8825b2
Bump version for new builds 2020-07-30 12:03:05 +01:00
Jasper Lievisse Adriaanse c3303f46de
include sys/socket.h before net/if_arp.h (#825)
On least OpenBSD this is required as otherwise the build fails with:
/usr/include/net/if_arp.h:79:18: error: field has incomplete type 'struct sockaddr'
2020-07-29 21:25:29 +01:00
Abdullah e439e278f0
typo in doc (#824)
Just found it while reading doc so fixed it...
2020-07-29 21:22:21 +01:00
Pavel Odintsov 20150977a5
Made option to read list of networks from OpenVZ configurable and optional (#831) 2020-07-29 21:20:37 +01:00
Pavel Odintsov 9ba053222d Switched to using only latin symbols for all commands output to simplify error tracking 2020-06-28 22:14:38 +01:00
Pavel Odintsov c8d8369ce9 Disabled mongoc build for CentOS 7 too, issue #822 2020-06-27 19:49:42 +01:00
Pavel Odintsov af95cedac7 Fixed stripping bug 2020-06-27 17:39:12 +01:00
Pavel Odintsov eb20ddb57e Disabled Mongo C compilation for Debian 9 to addrss compilation issue caused by fresh OpenSSL. Issue # 822 2020-06-27 17:10:14 +01:00
Pavel Odintsov d8cf80abf4 Added stripe command to strip useless debug information from our dependency libraries 2020-06-27 15:57:44 +01:00
Pavel Odintsov f25bf202e6 Added correct command about error stream redirection 2020-06-27 15:49:24 +01:00
Pavel Odintsov 06efa910b5 Added conf option to explicitly avoid any questions regarding configuration file during installation 2020-06-27 15:33:22 +01:00
Pavel Odintsov 39aeb8641f Fixed error steram redirection 2020-06-27 15:09:07 +01:00
Pavel Odintsov 1c5f37fd25 Increased compression level for packages to reduce their size and improve download speed. 2020-06-27 15:01:13 +01:00
Pavel Odintsov 20acc02a6a Switched from apt to apt-get because apt is not recommended in scripts and triggers warning 2020-06-27 14:54:45 +01:00
Pavel Odintsov 4e17ce3c5c Added DEBIAN_FRONTEND=noninteractive flag to avoid installation failures 2020-06-27 14:42:02 +01:00
Pavel Odintsov f1d0f2e04c Improved logic for install, made it less verbose and added loging for exact error messages 2020-06-23 18:02:48 +01:00
Pavel Odintsov 36fc121f85 Split fastnetmon_install.pl into two scripts and moved all source compilation logic into fastnetmon_build.pl 2020-06-23 00:15:44 +01:00
Pavel Odintsov 81fc921d50 Disabled GA tracking for customers explicitly requested for privacy 2020-06-20 22:46:01 +01:00
Pavel Odintsov 9a90224fcf Added Google Analytics to track number of failed installation 2020-06-20 15:15:16 +01:00
Pavel Odintsov 50b0fbd265 Added standard info banner and reduced installer verbosity 2020-06-13 21:09:40 +01:00
Pavel Odintsov 77e0829853 Switched all distros to binray packages 2020-06-13 20:48:28 +01:00
Pavel Odintsov 306d894a13 Switched new installs for Ubuntu to official binary packages 2020-06-13 13:47:06 +01:00
Pavel Odintsov 83859c8526 Removed dependency on libicu for all CentOSes. Removed numactl dependency for CentOS 7 and 8 2020-06-13 00:13:48 +01:00
Pavel Odintsov 127cbc368d One more step to fix build with custom Boost and gcc 2020-06-12 18:51:21 +01:00
Pavel Odintsov 28ab292401 Improved logic to build with custom compiler, improve build for dependencies 2020-06-12 18:34:07 +01:00
Pavel Odintsov 4c89fee085 Removed double slash 2020-06-11 23:10:10 +01:00
Pavel Odintsov 8dd3048aaa We do not need custom compiler when we do standard build for CentOS 6 2020-06-11 23:06:45 +01:00
Pavel Odintsov fe0f36d2d7 Moving to build FNM on CentOS 6 with custom compiler 2020-06-11 20:29:33 +01:00
Pavel Odintsov 6b4682141b Unified system paths and fixed return code for gcc compiler 2020-06-11 18:32:07 +01:00
Pavel Odintsov d10953d5d1 Improved build performance 2020-06-11 10:03:11 +01:00
Pavel Odintsov cf54ed07b2 Added separate step for compiler build on CentOS 6 2020-06-10 23:48:49 +01:00
Pavel Odintsov 0c4bfaa69c Added logic to skip mongoc compilation on Ubuntu 20.04 2020-06-10 23:28:58 +01:00
Pavel Odintsov 265f42c42f Added manual gcc compilation on CentOS 6 2020-06-10 21:08:58 +01:00
Pavel Odintsov 1052d9a371 Switched to older version of Boost Build which does not need C++ 11 2020-06-10 19:35:50 +01:00
Pavel Odintsov 3433258bf9 Added rpath for libicu to hint path for libicu's libs 2020-06-10 18:50:25 +01:00
Pavel Odintsov 9650424910 Unified systemd and system v rpm spec files completely 2020-06-09 23:46:33 +01:00
Pavel Odintsov 0baedfe205 Added rpath for Boost's regexp library and improved build process for new CentOS 2020-06-09 23:08:30 +01:00
Pavel Odintsov 3180a3c91e Attempt to build fresh Boost on CentOS66 2020-06-09 19:18:38 +01:00
Pavel Odintsov b72e197e8b Added dependencies for libpcap 2020-06-09 18:32:54 +01:00
Pavel Odintsov bd5cfabf67 Fixed api flag name, added explicit failure if we cannot build mongodb dependency 2020-06-09 08:59:52 +01:00
Pavel Odintsov 772ed5a82a Removed sudo and added S3 ORB for CircleCI 2020-06-07 18:22:51 +01:00
Pavel Odintsov f596833ffc Fixed error checking 2020-06-07 17:32:44 +01:00
Pavel Odintsov 72a7eca650 Moved away from using wget for retrieving fastnetmon.conf from master branch. We will use it from current repo clone 2020-06-07 16:30:28 +01:00
Pavel Odintsov c3e1f209ba Improved error reporting for package build script 2020-06-07 15:44:51 +01:00
Pavel Odintsov 70d3854e96 Extended build time allowance, explicitly added distro name to package build script 2020-06-07 13:39:56 +01:00
Pavel Odintsov 63cb7f901e Added dependencies on bzip2 for Boost build on CentOS. Closes: #820 2020-06-07 00:41:49 +01:00
Pavel Odintsov 4212585898 Added binary install for cmake on CentOS 6 2020-06-06 18:50:59 +01:00
Pavel Odintsov ae26099136 We do not need hiredis lib from system because we use our own version from source code 2020-06-06 18:36:49 +01:00
Pavel Odintsov c01904f5e5 Added version configuration for CentOS 6 build 2020-06-06 18:29:58 +01:00
Pavel Odintsov 20351fd3b7 Fixed cmake build for CentOS 2020-06-06 17:57:26 +01:00
Pavel Odintsov 3f31ac3f51 Changed Boost build path to mirror and disabled build failure for CentOS 6 due to lack of GoBGP 2020-06-06 17:44:01 +01:00
Pavel Odintsov 1dc7aad696 Added build target for not recommended CentOS 6 2020-06-04 20:56:21 +01:00
Pavel Odintsov 8ab5d957be Merge branch 'master' of github.com:pavel-odintsov/fastnetmon 2020-06-04 20:32:23 +01:00
Pavel Odintsov f0b5e269da Implement CI task to build FastNetMon for all popular Ubuntu distros 2020-06-04 20:32:09 +01:00
Pavel Odintsov 91599d87da
Aligned average calculatuon time for subnets and enabled per flow counters by default 2020-06-04 18:45:38 +01:00
Pavel Odintsov f2f59a1339 Added GoBGP into bundle 2020-06-03 10:07:57 +01:00
Pavel Odintsov 905aedc4d1 Made libraries path configurable in CMAKE 2020-06-03 09:48:06 +01:00
Pavel Odintsov ae5092142a Added logic to ignore PF_RING 2020-06-03 09:36:49 +01:00
Pavel Odintsov f7320ffffd Improved our own logic to build libraries bundle 2020-06-03 09:25:35 +01:00
Pavel Odintsov 52ef1be79c Added debug about Boost libraries and switched to using bundled FNM build from script 2020-06-02 21:09:46 +01:00
Pavel Odintsov 5cfd3fc0e1 Added command to disable FastNetMon compilation for CI 2020-06-02 19:57:33 +01:00
Pavel Odintsov 5c8cf3edc5 Improved formatting and disabled Boost installation when we build it manually 2020-06-02 19:47:13 +01:00
Pavel Odintsov cf408fee9f Improved logging and reduced number of build threads for cmake 2020-06-02 18:15:14 +01:00
Pavel Odintsov f290dfede2 Added logic to install cmake from sources for all lib build 2020-06-02 09:53:36 +01:00
Pavel Odintsov 2cd99fe639 We need to build cmake too 2020-06-02 09:00:41 +01:00
Pavel Odintsov 0624304131 Added logic to build libicu and link Boost against it 2020-06-02 00:42:42 +01:00
Pavel Odintsov 7c5ccf8bf9 Added logic to build FNM with custom Boost 2020-06-01 23:54:36 +01:00
Pavel Odintsov 71c7120edc Added option to build FNM with custom Boost 2020-06-01 22:00:32 +01:00
Pavel Odintsov ac0499fb21 Added flag to build Boost, added flag to disable mirror repo because boost does not fint into Github's limit for 100Mb 2020-06-01 21:47:54 +01:00
Pavel Odintsov 07efeb7f4b Added command to build Boost Builder 2020-06-01 21:27:54 +01:00
Pavel Odintsov 9fb663557e old cmake does not like command: CHECK_C_SOURCE_COMPILES 2020-05-31 13:56:43 +01:00
Pavel Odintsov 54642940b1 Fixed AF_PACKET support check for old distros. Closes #816 2020-05-31 13:50:25 +01:00
Pavel Odintsov 3d4fe275b1 Reduced number of CPU cores for CircleCI 2020-05-27 00:01:50 +01:00
Pavel Odintsov 2b0be61a64 Improved failure experience in CI environment 2020-05-26 21:25:57 +01:00
Pavel Odintsov dc69c35deb Removed ldconfig changes, added conf option flag, added FNM run on CI after build 2020-05-26 20:46:44 +01:00
Pavel Odintsov e631b3babf Fixed variable name for PF_RING mode 2020-05-25 23:08:47 +01:00
Pavel Odintsov 5b474700fb Added logic to disable Netmap plugin on very old platforms. Closes #810 2020-05-25 22:54:00 +01:00
Pavel Odintsov f13a958d60 Replaced unreliable kernel version based check by compilation check. Closes #809 2020-05-25 22:28:29 +01:00
Pavel Odintsov 05d6a24276 Added dependency on dnf-plugins-core for CentOS 8 2020-05-25 21:17:41 +01:00
Pavel Odintsov dbe71601b2 Added PowerTools report for CentOS 8 builds. Closes #801 2020-05-25 21:12:45 +01:00
Pavel Odintsov 5d498ad28b Removed annoying alerts for users without ANSI color library 2020-05-25 20:31:15 +01:00
Pavel Odintsov cdeaae1a8e Added logic to cache compiled dependencies and skipt their build if we've got them 2020-05-25 20:26:11 +01:00
Pavel Odintsov 7ecd00656a Switched to DEBIAN_FRONTEND=noninteractive to address interactive questions from tzdata in Docker environment 2020-05-25 19:45:50 +01:00
Pavel Odintsov 30a85236df Split dependency install process into two steps: packages and compilation 2020-05-25 13:59:04 +01:00
Pavel Odintsov 4eee2ba885 Increased build time for CircleCI 2020-05-25 13:18:42 +01:00
Pavel Odintsov d53208f4ec Added new way to distinguish CI builds 2020-05-25 12:52:39 +01:00
Pavel Odintsov 265b7c69ae Added documentation for API client 2020-05-24 15:38:52 +01:00
Pavel Odintsov d398b57c4f GoBGP unused code cleanup, added support for per subnet builds 2020-05-24 15:11:01 +01:00
Pavel Odintsov 602f56b920 Suppressed compilation warnings. Closes #806 2020-05-24 13:35:20 +01:00
Pavel Odintsov dd248303d3 Unified log4cpp headers and suppressed deprecation errors. Closes #805 2020-05-24 13:12:21 +01:00
Pavel Odintsov 6679e2e11e Added more verbose messages about protobuf compiler 2020-05-24 12:55:14 +01:00
Pavel Odintsov 8f24ca9ff7 Added separate flag to build api explicitly 2020-05-24 12:35:10 +01:00
Pavel Odintsov 28ba87717a Fixed issue with hunging API server. Closes: #804 2020-05-24 02:23:33 +01:00
Pavel Odintsov 8ee5bc40a0 Added GoBGP integration based on new GoBGP API. Related: #389 2020-05-24 01:36:50 +01:00
Pavel Odintsov 0a87084cb5 Upgrade gRPC to current version 2020-05-24 00:31:17 +01:00
Pavel Odintsov 80f968d2a9 Upgrade protobuf to current stable version 2020-05-24 00:11:18 +01:00
Pavel Odintsov 03117a7b68 Switched to using binary build of GoBGP 2.16 2020-05-23 23:51:55 +01:00
Pavel Odintsov 80210fcb8f Deprecated old GoBGP integration because it was deprecated in mainstream https://github.com/osrg/gobgp/issues/1855 2020-05-23 23:51:29 +01:00
Pavel Odintsov 15c3ae4177 Made GoBGP support configurable 2020-05-23 23:21:34 +01:00
Pavel Odintsov 87b102d8b0 Unified get_interface_number_by_device_name() and improved error control 2020-05-23 20:29:17 +01:00
Pavel Odintsov 8cf87fc7b0 Added option to control fanout mode in AF_PACKET. Closes #803 2020-05-23 20:21:50 +01:00
Pavel Odintsov be8afbd1b7 Reformatted source code with clang-format 2020-05-23 19:55:10 +01:00
Pavel Odintsov e10abca803 Added support for artificial sampling rate in AF_PACKET mode. Closes #790 2020-05-23 19:31:06 +01:00
Pavel Odintsov cf9b88ebf3 Do not create new_fastnetmon_installation in currentfolder during install 2020-05-23 19:19:33 +01:00
Pavel Odintsov dfdc2844a1 Switched to new json-c 2020-05-23 18:07:46 +01:00
Pavel Odintsov 93d84ac3f9 Bumped version to 1.1.5 in preparation to cut release 2020-05-23 18:02:16 +01:00
Pavel Odintsov a0fcf9f39e Switched master to latets json-c 2020-05-23 17:52:52 +01:00
Pavel Odintsov 27ce2a4cd9 Added option to install modern JSON-C for installer and added help 2020-05-23 17:52:39 +01:00
Pavel Odintsov b976c8f12a Updated GoBGP proto file to current stable version v2.16.0 2020-05-23 17:35:39 +01:00
Pavel Odintsov 0ed31107d1 Disabled PF_RING build by default in cmake file 2020-05-23 17:32:23 +01:00
Pavel Odintsov 51cd23a41a Made luajit optional feature 2020-05-23 17:25:55 +01:00
Pavel Odintsov 780aff3601
Added which for nDPI build process dependency. Fixes #797 2020-04-13 16:15:00 +01:00
Pavel Odintsov c2441d714a Fixed support for old compilers 2020-01-27 21:08:03 +00:00
Pavel Odintsov 7a0756e67b Do not use repo's version when we need version from master 2020-01-27 21:03:54 +00:00
Pavel Odintsov 8eced79901 I've added support for multiple interfaces in AF_PACKET mode. It's new default port mirror capture engine 2020-01-27 21:02:05 +00:00
Pavel Odintsov 42e85db9d9 Extracted AF_PACKET logic into function 2020-01-27 20:56:45 +00:00
Pavel Odintsov 64b74b979b Added detailed info messages about AF_PACKET workers and fixed build for FreeBSD 2020-01-27 20:50:02 +00:00
Pavel Odintsov a86d0d05b8 Switched to booleans for return codes to make logic clear 2020-01-27 20:45:01 +00:00
Pavel Odintsov 8599af0390 Disabled fixed CPU allocation for AF_PACKET. It wastes resources on modern servers 2020-01-27 20:42:54 +00:00
Pavel Odintsov 65cc8367db Added explicit control on fanout logic 2020-01-27 20:38:39 +00:00