Skip to main content

Lightweight open-source DDoS traffic monitor — stdout output, no account required

Project description

ftagent-lite

Open-source, zero-config DDoS traffic monitor. Outputs to stdout.

ftagent-lite is a lightweight network traffic monitor that detects DDoS attack patterns in real-time and prints structured stats to stdout. No API key. No account. No cloud.

It's the open-source sibling of the Flowtriq detection agent. It's great for quick diagnostics, CI pipelines, or building your own tooling on top.


Install

pip install scapy psutil

Then run with sudo (packet capture requires root):

sudo python3 ftagent_lite.py

Usage

sudo python3 ftagent_lite.py [options]

Options:
  -i, --interface IFACE   Network interface (default: any)
  -t, --interval  SECS    Reporting interval in seconds (default: 2)
  -T, --threshold PPS     PPS alert threshold (default: 5000)
  -j, --json              Machine-readable JSON output (one object per line)
  -w, --watch             Live updating terminal display
      --no-color          Disable ANSI colors
  -V, --version           Show version

Examples

# Monitor all interfaces, 2-second intervals
sudo python3 ftagent_lite.py

# Monitor eth0 with 5-second intervals
sudo python3 ftagent_lite.py --interface eth0 --interval 5

# Alert threshold at 50k pps
sudo python3 ftagent_lite.py --threshold 50000

# Pipe JSON to jq
sudo python3 ftagent_lite.py --json | jq '{pps: .pps, srcs: .src_ip_count}'

# Live dashboard view
sudo python3 ftagent_lite.py --watch

# Log to file
sudo python3 ftagent_lite.py --json >> /var/log/traffic.jsonl

Output

Human-readable (default)

2026-03-11 18:04:21 [HIGH]
  Traffic : 47.8K pps  1.7 Gbps
  Proto   : TCP 3.2%  UDP 94.1%  ICMP 0.4%
  Sources : 8,421 unique IPs  |  Avg pkt: 38 bytes
  Top dst : :11211(31042)  :53(12831)  :80(3201)
  Top src : 203.0.113.5  198.51.100.8  192.0.2.99  ...

  ! Attack pattern detected. Try Flowtriq for full alerting + auto-mitigation: https://flowtriq.com

JSON (--json)

{
  "timestamp": "2026-03-11T18:04:21+00:00",
  "pps": 47821,
  "bps": 215000,
  "tcp": 1530,
  "udp": 45100,
  "icmp": 191,
  "other": 0,
  "tcp_pct": 3.2,
  "udp_pct": 94.1,
  "icmp_pct": 0.4,
  "src_ip_count": 8421,
  "top_src_ips": ["203.0.113.5", "198.51.100.8", "192.0.2.99"],
  "top_dst_ports": [[11211, 31042], [53, 12831], [80, 3201]],
  "avg_pkt_size": 38
}

Attack detection

ftagent-lite classifies traffic severity based on your --threshold:

PPS vs threshold Severity
< threshold normal
≥ threshold MEDIUM
≥ 2× threshold HIGH
≥ 5× threshold CRITICAL

For production DDoS detection with automatic alerting (Discord, Slack, PagerDuty, Teams, Telegram, DataDog, Prometheus, and more), PCAP capture, AI classification, escalation policies, and auto-mitigation (Cloudflare WAF, iptables, DigitalOcean, Vultr). See Flowtriq.


Requirements

  • Python 3.7+
  • scapy — packet capture and protocol parsing
  • psutil — fallback if scapy unavailable (no protocol breakdown)
  • Root/sudo — required for raw socket capture

Limitations vs Flowtriq Pro

Feature ftagent-lite Flowtriq
Real-time PPS/BPS
Protocol breakdown
Source IP tracking
JSON output
Attack alerts (Discord, Slack, etc.)
PCAP capture
AI attack classification
Auto-mitigation (iptables, CF WAF)
Cloud dashboard
Multi-node
Team notifications + escalation

Start a free 7-day Flowtriq trial →


License

MIT License — Copyright (c) 2026 Flowtriq

Permission is hereby granted, free of charge, to any person obtaining a copy of this software to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the software, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the software.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ftagent_lite-1.1.2.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ftagent_lite-1.1.2-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file ftagent_lite-1.1.2.tar.gz.

File metadata

  • Download URL: ftagent_lite-1.1.2.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for ftagent_lite-1.1.2.tar.gz
Algorithm Hash digest
SHA256 6b0d36e91e33111e24ec7e5bda2143ff4ce089b445f07a0f3d709f7701625a16
MD5 e210be26c799287195be0fff284b0ca4
BLAKE2b-256 842acea3db4ee1f02dab1f0c3343c36264793083ee41c74921bbd441bdfe6f45

See more details on using hashes here.

File details

Details for the file ftagent_lite-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: ftagent_lite-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.10

File hashes

Hashes for ftagent_lite-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8ac998c0f1eac6af56c2c955abb65495c5c0a079ae7471db72b307e3ac5ea0a9
MD5 5d0a679f11e86266ca023d0fcd6da36c
BLAKE2b-256 3a2e9c7bf520f49020ab32db9ab52ee76d05b5a576c346c9c263a849d8f36c94

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page