Releases: FastNetMon/fastnetmon-advanced-releases
Releases · FastNetMon/fastnetmon-advanced-releases
FastNetMon Advanced 2.0.350
Changes:
- Extracted API into separate compilation module
- Added new cli command: network_counters_24 to show per /24 traffic
- Added logic to calculate per interface bandwidth which can be enabled using enable_interface_counters
- Added support for 2 byte encoded INPUT and OUTPUT interfaces in IPFIX mode used by A10 Networks Thunder
- Upgraded FerretDB to 1.10.1 which adds renameCollection
- Proper debug logging for IPFIX too large counter
- Added counter for IPFIX to calculate cases when we have too large padding values
FastNetMon Advanced 2.0.349
Changes:
- Added logic to install crypto-policies-scripts on Rocky Linux 9 as it does not have it pre installed
- Added logic to warn about too small size of traffic buffer in log
- Implemented logic to export per protocol counters for per 24 metrics in Clickhouse
- Added new Clickhouse metrics table network_24_metrics_ipv4 to store per /24 traffic
- Added logic to export per /24 traffic to InfluxDB by default
- Added new capability to track traffic per /24 network basis for all customer networks
- Added counter all_traffic_calculation_too_slow to track when FastNetMon has performance issues with speed calculation
FastNetMon Advanced 2.0.348
Changes:
- Allowed hostnames for clickhouse_metrics_host
- Removed dependencies on POCO libraries
- Ported traffic_db to native sockets
- Added logic to enable reuse_addr as workaround for reuse_port bpf limitation in Linux kernel
- Added logic for BPF based random traffic distribution between Netflow threads via netflow_multi_thread_mode set to random
- Added locks to avoid race conditions when we have multiple Netflow or IPFIX ports we use use multi thread mode
- Increased UDP buffer size to 32 mbytes as 8 mbytes was not enough for 100 mbit of telemetry
- Rearranged next hop logic for IPv4
FastNetMon Advanced 2.0.347
Changes:
- Added Netflow tests to validate sampling rate for Nokia SR
- Added complete support for IPFIX sampling rate encoding for Nokia 7750 SR
- Polished IPFIX options decoding function
- Added logic to decode IPFIX_SAMPLING_SELECTOR_ALGORITHM
- Fixed duplicate panel names for InfluxDB dashboard traffic for specific host
- Enabled process_outgoing_traffic and process_incoming_traffic configuration options for IPv6 traffic
- Extracted GoBGP client into separate build module
- Added logic to check that input data is not empty for first_symbol_to_upper()
- Removed unused configuration options generate_hostgroup_traffic_baselines and generate_hostgroup_traffic_baselines_delay
- Unified MongoDB attack cleanup logic in one function and reduced frequency of runs to once per 15 minutes. Removed unused generate_hostgroup_traffic_baselines
- Fixed /hostgroup API for bulk creation or update of hostgroups using single JSON document to return success as proper JSON message
- Added flag to disable error reporting to Sentry
FastNetMon Advanced 2.0.346
Changes:
- Completely reworked logic to retrieve outgoing IPv4 and IPv6 addressed to new reliable implementation
- Added support for licenses issued for IPv6 addresses in IPv6 only environment
- Added check to verify network connectivity from installer and added logic to activate coupons for IPv6 only connections
- Added logic to resolve external public IPv6 address if we have external connectivity
- Removed dependency on external URL library and moved to upstream Boost::url
- Reworked gRPC URL parser to new logic
FastNetMon Advanced 2.0.345
Changes:
- Split BGP module into BGP Unicast and BGP Flow Spec
- Fixed issue with broken IPv6 announces which were broken since in 2.0.342 due to GoBGP release upgrade and API format changes
FastNetMon Advanced 2.0.344
Changes:
- Reworked BGP Flow Spec logic to use new unified packet format instead of old approach which used two phase parser. Adds capabilities for fragmentation flag filtering in Netflow, IPFIX, GRE modes and inline monitoring and IPFIX 315 modes
- Deprecated flag flow_spec_detection_prefer_simple_packets as it's default mode now
- Completely reworked TCP Flag processing logic for BGP Flow Spec mitigation mode
- Switched to uint8_t to store prefix length as it's very bad approach to store it in int8_t which clearly overflows when we store 128
- Switched IPv6 BGP logic to use const ref arguments
- Disable attack dump logic when we do manual attack blocks
- Reduced use of global variables in Graphite logic
- Switched IPv6 traffic calculation logic to unified method increment_incoming_counters_for_key
- Unified per host traffic counters logic for IPv4
- Switched telemetry to export total IPv4 and IPv6 traffic for licensing purposes
- Changed telemetry logic to report IPv4 and IPv6 traffic independently
- Added flag --log_to_console for traffic_db
- Added logic to populate database with default configuration when we use FerretDB
- Added support to work without auth in MongoDB for fcli
- Added all required logic to install FastNetMon with FerretDB
- Added new installer flag: --ferretdb to install FerretDB. Supported only for Ubuntu and Debian platforms
FastNetMon Advanced 2.0.343
Changes:
- Added brief information when license validation fails
- Suppressed log message about sampling date from data packet on Mikrotik
- Added flag --pid_logic to enable pid logic as we still use it for Upstart based Ubuntu 16.04
- Switched off pid logic by default as we do not need it when systemd runs all the things
- Switched systemd service type from forking to simple and switched to systemd daemonisation logic instead of our own
- Added command line flag --log_to_console which switches logging from log file to stdout and stderr. To use this capability you have to disable daemonise logic and use simple as type of daemon on systemd based systems
- Moved IPFIX variable field element was used to debug log level
- Added logic to serialise timestamp field for netflow and ipfix templates and added RFC quotes about template field updates
- Added logic to stop installation on Ubuntu 22.04 without AVX
- Added logic to populate time when we received Netflow or IPFIX template
- Added logic to print reason of exception when we fail to save or load sampling rate or template from disk
FastNetMon Advanced 2.0.342
Changes:
- Switched from using /opt/fastnetmon/libraries/gobgp_3_12_0/gobgpd in system unit to /usr/sbin/gobgpd to avoid need to reload systemd and simplify GoBGP upgrades
- Upgraded GoBGP from 2.27 to 3.12
- Upgraded GoBGP Protobuf schema from 2.27 to 3.12
- Better logging to catch cases Unexpected zero number of flows Agent: xxx flowset template length: 141
- Regenerated IPFIX database using latest data from IANA
- Added logic to print old and new template content when template update happens
- Added very detailed debug logging for Netflow and IPFIX template logic
- Refactored logic of netflow and ipfix template management to simplify logic
- Added support to decode sampling rate used by Mikrotik RouterOS v7 when flag netflow_v9_read_sampling_rate_in_data_section is set
- Improved filter_packet_by_threshold to handle ICMPv6 properly
- Switched protocol printing logic to IANA compliant function which supports all available protocols. This change will improve protocol printing in all the places and instead of unknown field you will see real protocol name
- Addressed bug that ICMPv6 traffic wasn't counted for ICMP metrics
- Added GRE header stripping logic for inline monitoring services and IPFIX 315. It can be enabled using flags: netflow_v9_extract_tunnel_traffic and ipfix_extract_tunnel_traffic
FastNetMon Advanced 2.0.341
Changes:
- Enabled netflow_v9_lite and netflow_ipfix_inline by default to simplify use of IPFIX 315 and inline monitoring services option
- Removed never used field ipfix_parse_datalink_frame_section
- Added parser logic to parse incomplete TCP headers when less then 20 bytes of header present. Needed in case of Huawei routers using only 52 bytes of header in sFlow mode
- Added new fcli and API function show baseline_per_host which accepts IP, prefix or hostgroup name for peak traffic calculations over 7 day period
- Added support for arbitrary IPv4 prefix lengths for flow spec based white list: /etc/fastnetmon/whitelist_rules.dat
- Switched to const pointers in IPv4 and IPv6 lookup functions. Expect IPv6 performance improvement
- Added installation identifier to telemetry information to identify multiple machines behind same NAT IP address
- Added logic to dump schema needed to create tables in Clickhouse to log file
- Reworked logic to init Clickhouse in traffic_db
- Reworked logic to disable Clickhouse for traffic_db in case of errors