• Stars
    star
    3,377
  • Rank 13,245 (Top 0.3 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created about 11 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

FastNetMon - very fast DDoS sensor with sFlow/Netflow/IPFIX/SPAN support

logo

Community Edition

FastNetMon - A high-performance DDoS detector/sensor built on top of multiple packet capture engines: NetFlow, IPFIX, sFlow, AF_PACKET (port mirror).

What do we do?

We detect hosts in the deployed network sending or receiving large volumes of traffic, packets/bytes/flows per second and perform a configurable action to handle that event. These configurable actions include notifying you, calling script or making BGP announcements.

Project

🌏️ Official site
⭐️ FastNetMon Advanced, Commercial Edition
🌟️ FastNetMon Advanced, free one-month trial
📜️ FastNetMon Advanced and Community difference table
📘️ Detailed reference
🔏️ Privacy policy

Installation

Supported packet capture engines

  • NetFlow v5, v9, v9 Lite
  • IPFIX
  • sFlow v5
  • PCAP
  • AF_PACKET (recommended)
  • AF_XDP (XDP based capture)
  • Netmap (deprecated, still supported only for FreeBSD)
  • PF_RING / PF_RING ZC (deprecated, available only for CentOS 6 in 1.2.0)

You can check out the comparison table for all available packet capture engines.

Features

  • Detects DoS/DDoS in as little as 1-2 seconds
  • Scales up to terabits on single server (sFlow, Netflow, IPFIX) or to 40G + in mirror mode
  • Trigger block/notify script if an IP exceeds defined thresholds for packets/bytes/flows per second
  • Complete support for most popular attack types
  • Thresholds can be configured per-subnet basis with the hostgroups feature
  • Email notifications about detected attack
  • Complete IPv6 support
  • Prometheus support: system metrics and total traffic counters
  • Flow and packet export to Kafka in JSON and Protobuf format
  • Announce blocked IPs via BGP to routers with ExaBGP or GoBGP (recommended)
  • Full integration with InfluxDB and Graphite
  • API
  • Redis integration
  • MongoDB protocol support compatible with native MongoDB and FerretDB
  • VLAN untagging in mirror and sFlow modes
  • Capture attack fingerprints in PCAP format

We track multiple platform and environment-specific metrics to understand ways how our product is being used and prioritise development accordingly.

Official support groups:

Follow us at social media:

Router integration instructions

Complete integration with the following vendors

Screenshots

Command line interface Main screen image


Standard Grafana dashboard Grafana total traffic

Example deployment scheme

Network diagramm

Legal

FastNetMon is a product of FastNetMon LTD, UK. FastNetMon ® is a registered trademark in the UK and EU.

CI build status

CircleCI

Upstream versions in different distributions

FastNetMon upstream distro packaging status

More Repositories

1

OpenVZ_ZFS

Project for integration ZFS filesystem support into OpenVZ
36
star
2

FlowACL

BGP Flow Spec gateway to really any firewall/switch or router device
Python
22
star
3

af_packet_traffic_capture

In this repository you can find examples of using AF_PACKET v3 to capture tens of millions packets per second on Linux
C++
18
star
4

deploy_cat

Small app to deploy new VM on different cloud providers and install FastNetMon on it
Go
4
star
5

ideal_network_adapter

Here we are trying to collect all requirements for an Ideal Network Adapter from software developers point of view
4
star
6

udp_server_reuseport_bpf

Example multi threaded UDP server for Linux which uses SO_REUSEPORT and BPF microcode to spread traffic between threads
C++
3
star
7

get_default_outgoing_ip_linux

Example code to retrieve default outgoing IPv4 or IPv6 address on Linux using only standard Linux API
C
2
star
8

ixgbe-linux-netmap-single-queue

Netmap enable ixgbe driver with patches which produce ability to tun only on single queue
Batchfile
2
star
9

drop_watch

Fork of https://github.com/nhorman/dropwatch
1
star
10

udp_server_example

Example single threaded UDP server for Linux
C++
1
star
11

fastnetmon-community-packages

Binary packages for FastNetMon
1
star
12

udp_server_reuseport_bpf_poc

In this repo you can find attempt to use SO_ATTACH_REUSEPORT_CBPF to load balance traffic between threads
C++
1
star
13

udp_server_reuseport_example

Example multi threaded UDP server for Linux which uses SO_REUSEPORT to spread traffic between threads
C++
1
star
14

udp_server_reuseport_bpf_reuseaddr_workaround

Example multi threaded UDP server for Linux which uses SO_REUSEPORT and BPF microcode to spread traffic between threads. It has issue as it uses SO_REUSEADDR as workaround
C++
1
star