Skip to content
jsuzannePublic

About

Stigix is a lab platform to validate SD‑WAN and SASE. ​ It unifies SaaS traffic generation, security tests, convergence probes, and voice/IoT/VyOS simulations in one web UI

Topics

Resources

Stars

24 stars

Watchers

0 watching

Forks

Latest commit

 

History

2,445 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Last Updated: 2026-10-17 | Created: 2026-01-25 (v1.0.0)

🕸️ Stigix — Advanced Networking & Security Simulation Environment

Version Last Updated Docker Pulls License

The all-in-one open-source validation platform for SASE, SD-WAN, and Enterprise Network Security.
Generate realistic multi-site SaaS, Voice, and IoT traffic, execute live security threat attacks, inject network chaos on underlay routers, and orchestrate tests using AI with native Model Context Protocol (MCP). Built with modern SCM-inspired vertical rail navigation and an executive Command Center dashboard.

Stigix


⚡ Quick Start in 30 Seconds

Deploy the full Stigix All-in-One platform with a single command (requires Docker):

curl -sSL https://raw.githubusercontent.com/jsuzanne/stigix/main/install.sh | bash

📑 Table of Contents


Why I built Stigix ?

I built this tool after years of writing one-off scripts for SD-WAN and security POCs, and never finding a single lab platform that really matched what I see in the field.

With a long background in networking and security, I wanted something that could generate realistic mixes of web/SaaS, voice and IoT traffic, tie in security use cases, and still be simple enough for engineers, partners and customers to run on their own.

This project is my way to turn all that lab and demo experience into an open-source tool that helps people design, validate and troubleshoot modern SASE/SD-WAN deployments more effectively.


🏛️ Core Functional Pillars

1. 🌐 Real-World Traffic & Digital Experience (DEM)

  • 67 Pre-Configured Enterprise SaaS Applications 📊 — Realistic HTTP/HTTPS traffic generation across Microsoft 365, Google Workspace, Salesforce, Zoom, and popular business apps with configurable probabilistic weights. Read more
  • Real-Time Client Telemetry & RUM ⚡ — Zero-overhead timing breakdowns extracted directly from curl at runtime: DNS resolution, TCP handshake, TLS negotiation, TTFB (Time to First Byte), and Total RTT with rolling EMA statistics.
  • Multi-Protocol Synthetic Probes 🎯 — Continuous path monitoring across HTTP, HTTPS, ICMP (Ping), TCP Connect, UDP, and DNS Resolution to benchmark SD-WAN and SASE transport quality. Read more
  • Multi-WAN Path Quality Scoring 📈 — 0–100 MOS-style performance score per path combining latency, jitter, and packet loss with configurable SLA thresholds.
  • Multi-Interface / Multi-Circuit Binding 🔌 — Bind probes and traffic to specific WAN interfaces (eth0, enp2s0, ppp0) to validate individual ISP/MPLS links.
  • XFR High-Performance Speedtest 🚀 — Multi-stream TCP bandwidth testing with real-time throughput curves, TCP window analysis, and retransmission diagnostics. Read more
  • API Studio & Live Observability 📡 — Sub-50ms API transaction inspector across Node.js & Python micro-engines with 1-click request replay and code generator (cURL, Python, Node.js). Read more

2. 🛡️ SASE & Advanced Security Validation

  • Prisma Access SSL Decryption & 1-Click Forward Trust CA Sync 🔐 — Native trust store management for Palo Alto Prisma Access SSL forward proxy decryption. 1-Click extraction of Forward-Trust-CA (RSA/ECDSA) and custom Root CAs directly from Prisma SASE API (/sse/config/v1/certificates) into config/certs/ca-bundle.pem. Automatically injected across Node.js (NODE_EXTRA_CA_CERTS), Python engines (REQUESTS_CA_BUNDLE, SSL_CERT_FILE), and subprocesses (CURL_CA_BUNDLE), enabling seamless HTTPS threat testing without TLS errors. Propagated across the mesh via Central Provisioning. Read more
  • URL Filtering Tests & HTTP/HTTPS Switcher 🌐 — Validate 70 URL categories (malware, phishing, gambling, C2, etc.) with instant [ HTTP | HTTPS ] toggle to test plaintext inspection vs. SSL Decryption policy enforcement.
  • DNS Security Tests 🔍 — Validate DNS security policies against 24 domains (malware, phishing, DGA, tunneling).
  • Threat Prevention & EICAR Bypass Detection 🛡️ — EICAR file download testing for IPS/Threat Prevention validation. Includes an EICAR Response TCP server mode that injects EICAR payloads into active sessions and surfaces a 🛡️ EICAR not blocked warning if SASE fails to intercept it.
  • Real-World C2 Attack Scenarios ⚔️ — 7 real-traffic attack simulations (SQL Injection, DNS C2, Greyware DNS, Compromised DNS, Sliver C2, EICAR over HTTPS, DNS Tunneling) with Enforced / Bypass / Inconclusive verdicts.
  • AI Security (AISA) 🤖 — 5 Palo Alto AI Security simulation scenarios targeting live AI apps (ChatGPT, Grok, Gemini, Perplexity): DLP, Prompt Injection, CVE-2014-9222, EICAR Upload, and AI Volume Traffic (24 apps).
  • Security Score Dashboard 📊 — Multi-module security scoring (URL, DNS, Threat, C2) with 24h trend charts, baseline pinning, gap analysis, and automated scheduling.

3. ⚡ SD-WAN Chaos Engineering & VyOS Underlay

  • Unified Underlay / Overlay Visual Mapping 🗺️ — Interactive visual topology rendering active VyOS backbone routers mapped directly to Prisma SD-WAN circuits with port-level resolution (ethX) and direct 1:1 animated cable wiring. Read more
  • Direct Topology Chaos Actions ⚡ — Instant Shut / No-Shut port toggle, Netem latency/loss impairment injection, and live QoS rate-limiting directly from the canvas via VyOS API. Read more
  • Convergence Lab & Sub-Second Failover Probing ⏱️ — High-precision UDP failover probing (up to 1000 PPS) to measure exact SD-WAN tunnel transition times and packet drop duration with interactive time scrubber and HD PoC Card export. Read more
  • Prisma SD-WAN API Auto-Discovery ☁️ — Automatic discovery of sites and LAN interfaces via API for "Zero-Config" connectivity probes and path validation. Read more

4. 🎙️ Physical IoT (L2/L3) & Voice RTP Simulation

  • IoT "Real-on-the-Wire" Simulation 🔌 — Simulate physical IoT devices (Cameras, Sensors, Raspberry Pi, Medical/Industrial controllers) with Scapy-based DHCP and ARP for true Layer-2/3 network presence. Supports CSV import from Palo Alto Device Security and Vulnerability Reports. Read more
  • IoT Security Attack Mode ⚠️ — Trigger malicious behavior simulations from IoT profiles (DNS Flood, C2 Beacon, Port Scan, Data Exfiltration) to validate IoT Security detection rules.
  • Voice VoIP Simulation (RTP) 🎙️ — Scapy-based RTP packet generation for G.711 / G.729 voice calls. Measures live MOS score estimation, jitter, RTT latency, and per-target QoS breakdown for voice path validation. Read more
  • Custom TCP Inter-Site Applications 🔄 — Stateful East-West workload simulation with dual host TCP listeners, outbound client workload generators, 8 server chaos modes (fixed delay, jitter, looping degradation, drop response, errors), 5 client workload modes, and rolling RTT percentiles ($p50/p95/\text{avg}$). Read more

5. 🤖 AI-Native Orchestration (FastMCP) & Mesh Fleet

  • Model Context Protocol (FastMCP) Server 🤖 — Natural language network orchestration for Claude Desktop and AI agents. Execute tests, query topologies, inspect telemetry, and trigger chaos impairments in plain English. Read more
  • Safe Propose & Confirm Execution 🛡️ — Claude presents the resolved router, interface, and impairment parameters and requires explicit confirmation before executing destructive network actions.
  • Central Global Provisioning 🌐 — Publish 10 core configuration bundles (Applications, Probes, Convergence, Prisma SASE, CA Certificates, Security, Voice, IoT, Custom TCP) centrally from the Leader to branch peers with pull-mode sync (30s cycle) and zero-touch hot reload. Read more
  • Fleet Remote View & WebSocket Reverse Gateway ⚡ — Centralized observability and remote node management directly from the Leader. Transparently proxies API calls over multiplexed WebSocket reverse tunnels (/fleet-tunnel) traversing NAT, CGNAT, and firewalls with zero inbound ports required on spokes. Read more
  • Peer Autodiscovery 📡 — Automatic peer-to-peer discovery using Cloudflare Workers with zero-touch multi-node setup. Read more

6. 📦 Stateful PCAP Replay Engine (L7 Steps, SASE & Exploits)

  • Stateful L7 Protocol Step Reassembly 🔄 — Ingests standard .pcap, .pcapng, .cap, and nested .zip archives. Assembles raw bidirectional TCP streams and UDP datagrams into conversational application steps (⬆️ Client ➔ Server vs ⬇️ Server ➔ Client) with microsecond timing and payload offsets. Read more
  • Direct ZIP & Exploit Archive Ingestion 📦 — Native drag-and-drop support for .zip archives (including nested .pcap.zip malware archives). Extracts captures into an ephemeral memory buffer with automatic password recovery (infected, virus, malware) and guaranteed cleanup (Memory Guard — zero disk residue).
  • Automated Credential & PII Scrubbing 🛡️ — Masks passwords, Bearer tokens, Basic Auth, and email addresses in application payloads with regex substitution, preserving protocol structures for safe replay across enterprise networks.
  • Noise Isolation & Clean Flow Filtering 🎯 — Classifies and filters background multicast/broadcast noise (DHCPv6, LLMNR, mDNS, NetBIOS, subnet broadcasts) with 1-click bulk controls (Select All, Deselect All, Unicast Only, + TCP, - TCP, + UDP, - UDP).
  • Fleet-Wide Mesh Profile Auto-Sync 🌐 — Compiling or editing a .stx-replay profile on the Leader automatically synchronizes it across all spoke nodes (DC1, BR1, BR2, BR5, BR8) over WebSocket reverse tunnels.
  • Dual Server Listener & Client Replay Orchestration 🕹️ — Bind background server sockets on DC1 and launch realistic client replays from branch nodes (BR8) with continuous looping (Loop #X) and cumulative TX/RX volume tracking.
  • Live SASE Telemetry Hub & Wireshark-Style Hex Dump 📊 — Real-time security policy verdicts (Bypass / Allowed, TCP RST Reset, Silent Drop), 16-byte aligned Hex Dump viewer, and telemetry console (Timeline, Stream Log, Raw JSON).

🆕 What's New

The project is evolving rapidly with major features, engines, and UX refinements in every release.

🚀 Stigix 3.0.14 — Performance Acceleration, DEM Master Control & Failover Optimization (v3.0.14)

  • ⏸️ DEM Local Engine Master Switch — 1-click toggle to suspend or resume synthetic probes on local management/out-of-band nodes while propagating configurations fleet-wide.
  • ⚡ In-Memory Ring Buffer & Sub-200ms DEM Loading — In-memory ring buffer (5,000 samples) and parallelized history fetch eliminating disk scan bottlenecks on the Digital Experience page.
  • ⏱️ Adaptive Real-Time Failover Telemetry — Ultra-responsive 500ms polling during active SD-WAN convergence tests, relaxing to 2.5s when idle to save CPU and network bandwidth.
  • ☁️ BYOC Cloudflare Worker Setup Wizard — 1-click Bring-Your-Own-Cloud deployment wizard with automated Master Key setup and daily free tier quota telemetry (100k req/day).
  • 🚀 Lazy-Loaded Instant Settings — Tab lazy-loading and parallelized remote reachability checks for instantaneous settings navigation.

🚀 Stigix 3.0 — Mission Control, Unified SASE Rail Navigation & Fleet Mesh Intelligence (v3.0.0)

  • 🎛️ Mission Control Dashboard — Unified 3-pillar executive overview: Network & Cloud (Prisma SD-WAN, Cloudflare Registry, Mesh), Simulation Engines (SaaS, VoIP RTP, DEM, Custom Apps, IoT), and Host & Underlay telemetry.
  • 🧭 SCM-Inspired Vertical Rail Navigation — Collapsible modern sidebar, single-line header with active node badge, and fluid dark/light workspace layouts.
  • 🌐 Fleet Mesh Autodiscovery & Tunnel Routing — Dynamic multi-site peer synchronization via Cloudflare Registry and local leader election with zero configuration.
  • 🎙️ Real-Time VoIP RTP Telemetry — Sub-millisecond MOS, jitter, and packet loss monitoring with 1-decimal precision and multi-codec emulation (G.711, G.729, Opus).
  • 🛡️ Integrated Security & Threat Validation — Real-time EICAR and malware inspection, synthetic DNS/URL/Threat engines, and expanded FastMCP AI Copilot tools.

🚀 Stigix 2.2 — Modernized Topology, Real-Time Failover & Multi-Arch Release (v2.2.0)

  • 🗺️ Modernized 4-Mode Topology Experience — Dedicated views for WAN Transport (Physical), SD-WAN Mesh Overlay, SASE Fabric, and VyOS Underlay. Features direct carrier telemetry inspection drawers, responsive MacBook 13"/27" viewport auto-fit, and top transport filter ribbons.
  • ⏱️ High-Precision Real-Time Failover Telemetry — Ultra-responsive 500ms live polling (2x/sec) for instant RTT, jitter, loss, and packet exchange updates during SD-WAN/SASE failover testing.
  • ⚡ Frictionless Local Container Self-Upgrade — Streamlined 1-click upgrades without blocking browser confirmation dialogs, backed by detached ephemeral container recreation and auto-prune.
  • 🐳 Multi-Architecture Production Docker Builds — Official multi-arch (linux/amd64 + linux/arm64) release published with :latest, :stable, and :2.2.0 Docker Hub tags.

🚀 Stigix 2.1.2 — Leader-Orchestrated Remote Upgrades, SASE Fabric Topology & Resilient In-Place Maintenance (v2.1.2)

  • 📡 Live Packet Capture & Web Analyzer (Wireshark-Grade 3-Pane Inspector) 🦈 — Capture live network traffic across any interface (any, ens3, docker0) directly from the Web UI. Features BPF kernel filtering presets (Custom TCP, Synthetic Probes, Voice RTP, Security EICAR, DNS), full OSI protocol dissection tree, synchronized 16-byte hex/ASCII dump viewer, in-memory streaming, and 1-click « Send to PCAP Replay » to turn live packet captures into stateful replay scenarios instantly. Read more
  • 🚀 Leader-Orchestrated 1-Click Remote Peer Upgrades 🌐 — Discover remote node versions across the entire fleet via the Fleet Gateway (/api/gateway/:peerId/api/admin/maintenance/version). Trigger seamless 1-click upgrades on remote spoke nodes directly from the Leader dashboard in both Registered Targets and Maintenance & Updates tabs.
  • 📡 Real-Time Remote Upgrade Stepper & Log Stream 💻 — Dedicated remote upgrade modal with 4-phase visual progress tracking (Remote Pull ➔ Recreate ➔ Healthcheck ➔ Ready), live console log streaming from remote ephemeral updaters, and healthcheck reconnect radar pinging port 8080 until the node reports healthy.
  • 🛡️ Ephemeral Detached In-Place Self-Upgrade ⚙️ — Self-contained detached updater container (docker run --rm -d --network host -v /var/run/docker.sock...) executing pull, recreate, healthcheck, and auto-prune out-of-process without process suicide. Protected by pre-upgrade Docker socket verification (/var/run/docker.sock).
  • 🧹 Automated Docker Image Pruning 🧼 — Automatically reclaims disk space after every upgrade via docker image prune -f, with an on-demand Prune button in the Maintenance tab.
  • 🗺️ SASE Fabric Topology Overhaul 🌐 — Dedicated SASE Fabric view switcher dock alongside Overlay and Underlay topologies. Features official Palo Alto Prisma Access & Zscaler branded logos, dynamic PoP matching (France North, France Central, Europe West), interactive tunnel breakdown drawer with uptime & latency telemetry, and instant 0ms edge spotlighting.
  • 🔄 Dynamic Auto-Mesh Client Pausing & Zero-Latency Resume ⏸️ — Custom TCP client streams automatically pause (⏸️ PAUSED (Server Offline)) when a remote server listener goes down and instantly resume the moment it restarts, eliminating connection retry floods.
  • 🛡️ Custom TCP Apps EICAR Threat Correlation 🎯 — Active Custom TCP/HTTP app listeners dynamically register as verified EICAR threat responders, enabling false-positive-free security testing with target category filters (All, Custom Apps, Fabric, Cloud).
  • ⏱️ Automated Daily Resource Housekeeping 🧹 — Daily 2 AM cron and boot-time cleanup routine that automatically purges orphaned worker stats files and expired logs.

⚡ Stigix 2.1.1 — Control Plane Heartbeats, Live RTT & Fleet Auto-Sync (v2.1.1)

  • 💓 WebSocket Control Plane RTT Heartbeat ⚡ — Continuous 15-second soft RTT ping/pong loop (tunnel:rtt_ping) measuring precise sub-millisecond reverse tunnel latency across all remote spoke nodes (DC1, BR1, BR2, BR5, BR8).
  • 📊 Real-Time Fleet Latency Badges 🟢 — Dynamic color-coded latency tags (⚡ 12ms, ⚡ 45ms) in the Fleet Overview and node details for instant control plane link quality assessment.
  • 🔄 Bidirectional Provisioning ACKs & Sync Timestamps ⏱️ — Real-time provisioning:ack stream from spoke nodes with human-readable timestamps (updatedAt on Leader, appliedAt on Spokes) across all 10 configuration modules.
  • 🚀 Debounced Fleet Auto-Sync 📡 — Automatic 2.5s debounced push of Synthetic Probes and Applications Catalogue upon any modification on the Leader, with a 1-click header toggle switch.
  • 🎯 Accurate DEM Outage Scoring 🛡️ — Digital Experience Monitoring scores strictly drop to 0 upon packet timeout or connection blackout, preventing false-positive operational health reports.
  • 📈 Multi-Path Speedtest Polish ⚡ — Fixed sequence labeling and added human-readable TCP congestion window (cwnd) formatting in KB/MB.

🌟 Stigix 2.1 — Major Milestone Release (v2.1.0)

  • 🪄 1-Click Token Onboarding (Magic Join) ⚡ — Generate a secure onboarding token or 1-line curl installation command directly from the Controller UI. Remote nodes automatically register, establish a secure reverse WebSocket tunnel, sync test targets, and appear live on the topology in seconds. Read more
  • 🌐 WebSocket Reverse Tunnel & NAT Traversal 🚀 — Out-of-band remote management across branches, data centers, and public clouds through strict NAT and firewalls with zero inbound ports or public IPs required on spoke nodes. Read more
  • 🎛️ Central Fleet Provisioning & Sync 📡 — Push targets, security policies, custom application definitions, and test profiles from a central Stigix Controller to all fleet nodes with a single click.
  • 🌪️ Live Underlay Chaos & QoS Impairment Injection 🗺️ — Interactive VyOS router controls directly on the Underlay Topology map: inject latency, jitter, packet loss, bandwidth shaping, and DSCP/QoS marking to validate SD-WAN path steering, brownout recovery, and sub-second failover. Read more
  • 🛠️ Custom TCP Applications Simulation Engine 🔄 — Stateful multi-port TCP/UDP client-server workload generator. Configurable payload templates, transaction loops, server chaos modes (delay, drop, jitter), and real-time RX/TX telemetry badges. Read more
  • 📦 Stateful L7 PCAP Replay Engine 🛡️ — Replay real-world enterprise traffic flows, malware, and exploits from .pcap, .pcapng, or password-protected .zip archives. Features directional step-by-step reassembly, payload inspector, micro-timing controls, and zero disk residue (Memory Guard). Read more
  • 🔐 Streamlined Root CA Certificate Installation 🔑 — Direct CA download and 1-click trust scripts for Linux, macOS, and Windows (/ca.crt). Automatic environment injection (curl, python, node) for seamless SSL/TLS Decryption (DPI) testing without certificate errors. Read more
  • 🧪 Interactive API Studio & Automation Sandbox 📡 — Built-in REST API explorer with instant curl, Python, and TypeScript code generation, sub-50ms transaction inspector, and Model Context Protocol (FastMCP) AI support. Read more
  • 🎯 Target Port Architecture Isolation 🔌 — Decoupled service bindings across Management Dashboard (:8080), HTTP & EICAR App-Sim (:8082), Custom TCP Apps (:8083+), XFR Speedtest (:9000), and Iperf3 (:5201) with automatic configuration migration.
  • 📊 SD-WAN Reachability SLA Grid 2.0 📈 — Operational bidirectional matrix featuring SLA Compliant, SLA Breach, Egress Only (cloud ingress NAT), and asymmetric failure diagnostics.
  • Direct ZIP & Malware Archive Ingestion 📦 — Native upload support for .zip archives (including nested .pcap.zip captures) with automatic password recovery (infected, virus, malware) and zero disk pollution (Memory Guard).
  • 100% Exploit Benchmark Validation 🛡️ — Tested across 496 real-world exploit kit and malware captures (Nuclear-EK, Rig-EK, Angler-EK, Magnitude-EK, Blaster) with zero failures.
  • Noise Classification & Fast Flow Filter Bar 🎯 — Automatic isolation of network background noise (DHCPv6, LLMNR, NetBIOS) and 1-click bulk filters (Select All, Unicast Only, + TCP, + UDP).
  • UDP Loop Replay & Cumulative Byte Telemetry 🔄 — Continuous replay looping with real-time accumulation of total TX/RX bytes exchanged across iterations.
  • Dynamic Scenario Awareness 🕹️ — Explicit scenario names and active PID tracking on Server/Client Start and Stop action buttons.

🔐 Prisma Access SSL Decryption & URL Filtering HTTPS Toggle (v2.0.143)

  • 1-Click Forward Trust CA Auto-Import 🔐 — Direct extraction of Forward-Trust-CA (RSA/ECDSA) and custom Root CAs from Prisma SASE API (/sse/config/v1/certificates) into config/certs/ca-bundle.pem.
  • Runtime Environment Injection ⚡ — Zero-touch propagation into Node.js (NODE_EXTRA_CA_CERTS), Python engines (REQUESTS_CA_BUNDLE, SSL_CERT_FILE), and subprocesses (CURL_CA_BUNDLE).
  • Mesh CA Sync Bundle 🌐 — Automatic synchronization of CA certificates from Leader to all connected branch peers (DC1, BR1, BR2, BR5, BR8) via Central Global Provisioning (ca-certificates bundle).
  • URL Filtering HTTP / HTTPS Protocol Switcher 🔄 — Instant toggle in the URL Filtering header dynamically swapping test targets between http:// (port 80) and https:// (port 443) for live SSL Decryption policy validation.

📦 Custom TCP Applications Export/Import Lifecycle & Resilience (v2.0.66)

  • Full Bundle & Single-Profile JSON Export/Import 🔄 — Export individual profiles or entire multi-application meshes directly from the UI header and Settings tab.
  • Merge & Update vs. Replace All Import Modes ⚙️ — Dedicated modal with live JSON schema validation, port collision detection, and instant configuration preview.
  • 100% Roundtrip Schema Fidelity 🛡️ — Full preservation of serverBehavior chaos modes, detailed listener security policies (CIDR ACLs, token authentication), and clientDefaults.
  • FastMCP Stability & Error Boundaries 🤖 — Fully typed FastMCP tools (export_custom_tcp_apps, import_custom_tcp_apps) and React Error Boundaries preventing UI blank screens on partial profile imports.

🌟 Digital Experience Monitoring & Speedtest Glow (v2.0.65)

  • High-Contrast DEM Global Score Gauge 📊 — Upgraded experience score indicator to a 132px glowing donut arc with explicit status badges (OPTIMAL, GOOD, DEGRADED, CRITICAL) and full-height trend area chart.
  • Failover Engine POSIX Atomic State ⚡ — Atomic POSIX file writes (_atomic_write_json) and Node.js fallback caching eliminating transient UI card disappearance during high-rate failover testing.
  • Multi-Layer Neon Speedtest Glow 📈 — Emerald green (#10b981) and electric blue (#3b82f6) neon gradients under Speedtest sent/received bandwidth curves.
  • SD-WAN Failover Research & Making-Of White Papers 📄 — Interactive HTML & PDF reports catalog in site/reports.html and docs/MCP Reports/.

🚀 FastMCP Server Parity & Speedtest Telemetry (v2.0.64)

  • Unified Convergence & Speedtest Metrics ⚡ — Aligned real-time throughput and convergence metrics across get_test_status, list_speedtest_history, and run_test.
  • 64-bit Prisma ID & Dual-Mode Name Resolution ☁️ — Full support for real Prisma SD-WAN 64-bit flow identifiers, probe filtering, and automatic DNS/site resolution.

🖧 Underlay Router Topology & Port-Level Diagnostics (v2.0.0)

  • Unified Underlay / Overlay Mapping 🖧 — Visual representation of active VyOS backbone routers mapped directly to Prisma SD-WAN circuits with port-level resolution (ethX).
  • Direct 1:1 Port Cable Wiring 🔌 — Animated amber connections between Prisma SD-WAN circuit handles and exact ethX router ports.
  • Direct Topology Chaos Actions ⚡ — Instant Shut / No-Shut port toggle, Netem latency/loss impairment injection, and persistent canvas badges (⏱️ +120ms). Read docs

🤖 MCP Server & Claude Desktop Integration (v1.4.1)

  • Natural Language Network Control 🤖 — Control the entire Stigix mesh from Claude Desktop: run tests, simulate failures, check posture across any node.
  • VyOS Chaos Engineering via Claude ⚡ — Plain-English impairment triggers with automatic router discovery and propose-and-confirm safety flow.
  • MCP Live Interaction Feed & Logging ✨ — Real-time color-coded tool feed in Settings → MCP Server with duration bars, LIVE pulse, and server-side logging to mcp-history.jsonl. Read docs

View full changelog with all version details →


📸 Screenshots Gallery

Explore the application interface organized by feature area. Each category contains detailed screenshots showcasing the functionality.

🏠 Main Dashboard

Real-time monitoring, traffic control, and system health overview.

Main Dashboard

View all Main Dashboard screenshots → (6 images)


⚙️ Configuration & Control Center

Application distribution weights, synthetic probe definitions, Central Global Provisioning (Leader/Peer mesh sync), targets repository, and state persistence across reboots.

Configuration Management - Traffic Distribution

Configuration Management - Synthetic Probes Catalog

View all Configuration screenshots → (15 images)


📊 Convergence Lab & Failover Monitoring

High-precision UDP failover probing (up to 1000 PPS), historical outage curves, interactive time scrubber, SCM multi-path sequence tracking, and 1-click PoC Card HD PNG export.

Failover PoC Curves & Outage Analysis

Failover Lab Overview & Targets

View Convergence Lab Guide & Theory → | View all Convergence screenshots → (10 images)


🛡️ Security Testing

URL filtering validation across 70 categories, 24 DNS security tests, threat prevention (EICAR), C2 attack simulations, AI Security (AISA) prompts, EDL threat feeds, and security posture scoring.

Security Testing Overview & Posture Score

C2 Attack Scenarios

AI Security Tests

View all Security screenshots → (26 images)


🎯 Performance Monitoring (Digital Experience / DEM)

Synthetic connectivity probes (HTTP, HTTPS, ICMP, TCP, UDP, DNS) with weighted SD-WAN path quality scores, timing breakdown graphs (DNS, TCP, TLS, TTFB), and live history.

Digital Experience DEM Dashboard

DEM Probe Latency & Timing Breakdown

View Digital Experience Guide → | View all Performance screenshots → (20 images)


🔌 IoT Simulation

Real-on-the-wire Layer-2/3 device simulation with DHCP/ARP presence, custom MAC profiles, real-time log monitoring, and security attack simulations (DNS flood, C2 beacon, port scan).

IoT Simulation Dashboard

IoT Device Fleet Overview

View IoT Simulation Guide → | View all IoT screenshots → (20 images)


🎙️ Voice Simulation

Scapy-based RTP packet generation for G.711/G.729 voice simulation. Live MOS score estimation, jitter, RTT latency, and per-target QoS breakdown for voice path validation.

Voice Simulation Dashboard

VoIP Per-Target QoS Statistics

View Voice Simulation Guide → | View all VoIP screenshots → (9 images)


⚡ Bandwidth Test (XFR)

Multi-stream TCP bandwidth testing with real-time throughput metrics, TCP window analysis, retransmit diagnostics, and latency measurement against Stigix targets.

Bandwidth Test Dashboard

XFR Throughput and Latency Results

View XFR Testing Guide → | View all Bandwidth Test screenshots → (10 images)


🌐 VyOS Control

Network impairment orchestration (latency, loss, rate-limiting) on VyOS routers via API with sequence timelines and execution history audits.

VyOS Control Routers Dashboard

View VyOS Control Guide → | View all VyOS Control screenshots → (6 images)


🗺️ Site & Underlay/Overlay Topology

Interactive visualization of SD-WAN logical overlay paths alongside physical underlay topology featuring VyOS router chassis, 1:1 direct port cabling, live link status, and netem impairment injection.

Underlay and Overlay Topology View

Logical Overlay Mesh View

View Underlay Topology Guide → | View all Topology screenshots → (12 images)


🔄 Custom TCP Applications

Multi-application East-West workload simulation with dual host TCP listeners, outbound client workload generators, 8 server simulation modes (fixed delay, jitter, looping degradation, drop response, errors), 5 client workload modes, rolling RTT percentiles ($p50/p95/\text{avg}$), and 1-click Prisma SD-WAN AppDef sync.

Custom Apps Dashboard Overview

Custom App Outgoing Session Latency Breakdown

View Custom TCP Apps Guide → | View User Guide & Recipes → | View all Custom Apps screenshots → (11 images)


🔍 API Studio & Observability

Unified real-time observability across Node.js & Python engines. Live API call inspector with status filtering (2xx/4xx/5xx), payload inspection, and interactive request composer with preconfigured presets.

API Studio Live Telemetry Inspector

View API Studio Guide → | View all API Studio screenshots → (1 image)


🤖 Model Context Protocol (MCP) Server

Natural language AI orchestration service supporting SSE transport. Enables AI assistants (Claude Desktop, etc.) to trigger tests, inspect topologies, query metrics, and automate network validation.

MCP Server Configuration & Status

View MCP Server Documentation → | View all MCP screenshots → (2 images)


📜 Live Events Stream

Real-time WebSocket event streaming capturing all background engine actions, test initiations, probe results, and system diagnostics with instant keyword search.

Live Events System Log Streaming

View all Statistics & Live Events screenshots → (2 images)


🖥️ Platform Support

This application runs on:

  • 🐧 Linux - Docker Engine (Ubuntu, Debian, CentOS, etc.)
  • 🍎 macOS - Docker Desktop for Mac (macOS 11+)
  • 🪟 Windows - Docker Desktop with WSL 2 (Windows 10/11)

Windows Users: The one-liner installation script is not supported in PowerShell.
Please follow the Windows Installation Guide for step-by-step instructions.


📋 Prerequisites

Docker Installation Required

This application runs in Docker containers. You must have Docker installed and running before installation.

🐳 macOS

🪟 Windows

  • Install Docker Desktop for Windows with WSL 2
    • Complete guide: Windows Installation Guide
    • Requires Windows 10/11 64-bit
    • Important: WSL 2 must be enabled and Docker Desktop must be running

🐧 Linux (Ubuntu/Debian)

  • Install Docker Engine

✅ Verify Docker Installation

# Check Docker is running
docker --version
docker ps

# Expected output:
# Docker version 24.x.x or later
# CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS   PORTS   NAMES

🚀 Quick Start

One-Liner Install (Linux/macOS) ⭐

Requirements: Docker must be running (see Prerequisites above)

We provide an interactive installation script that configures the Stigix All-in-One container for your environment.

curl -sSL https://raw.githubusercontent.com/jsuzanne/stigix/main/install.sh | bash

What to expect:

🚀 Stigix (All-in-One) - Installation
==========================================
✅ Docker is running.
🐧 Platform: Native Linux detected. (Using host mode for full features)

📌 Choose Deployment Mode:
1) Both (Source + Target) [Default] - Runs Dashboard, Traffic Gen, and Echo targets
2) Target Only - Deploys only the Echo/XFR targets
3) Source Only - Deploys only the Dashboard and Traffic Gen
Select an option [1-3] (Default: 1): 1
🎯 Selected Mode: both
📦 Downloading Base Configuration from GitHub...
✅ Files prepared in /path/to/stigix
🔧 Pulling images and starting Stigix All-in-One...

This will:

  • ✅ Check if Docker is installed and running
  • ✅ Detect your OS to configure networking (Host for Linux, Bridge for Mac/WSL)
  • ✅ Let you choose your deployment mode (Interactive)
  • ✅ Pull the single, optimized jsuzanne/stigix:stable image
  • ✅ Start all necessary services automatically
  • ✅ Auto-generate configuration

Access: http://localhost:8080
Credentials: admin / admin (change after first login)

Advanced flags: You can bypass interactivity using --mode <both|source|target> or simulate the install with --dry-run. Example: curl -sSL https://raw.githubusercontent.com/jsuzanne/stigix/main/install.sh | bash -s -- --mode target

Windows Users: The one-liner installation script is not supported in PowerShell. Please follow the Windows Installation Guide for step-by-step instructions.


Manual Install (Advanced)

If you prefer not to use the install script, you can download the compose file manually.

mkdir -p stigix && cd stigix
# Download the consolidated compose file
curl -sSL -o docker-compose.yml https://raw.githubusercontent.com/jsuzanne/stigix/main/docker-compose.yml
# Start the All-in-One container
docker compose up -d

Consolidated Architecture: Stigix is now distributed as a single All-in-One image (jsuzanne/stigix) managed by supervisord. This simplifies deployment and ensures all components (Dashboard, Traffic Gen, Voice, Echo, XFR, MCP) are always in sync.

Windows (PowerShell):

# Create directory
mkdir C:\stigix
cd C:\stigix

# Download bridge mode compose file
curl.exe -L https://raw.githubusercontent.com/jsuzanne/stigix/main/docker-compose.example.bridge.yml -o docker-compose.yml

# Start services
docker compose up -d

Default credentials: admin / admin

For detailed Windows instructions, see Windows Installation Guide


📊 Verify Installation

After starting Stigix, you can easily verify that the system is running and healthy by performing a few quick checks:

1. Check Container Status

Verify that the Stigix container is up and running and is marked as healthy:

docker compose ps

Expected Output:

NAME                IMAGE                      COMMAND                  SERVICE             CREATED             STATUS                    PORTS
stigix              stigix-all-in-one:latest   "/app/entrypoint.sh"     stigix              2 minutes ago       Up 2 minutes (healthy)    0.0.0.0:8080->8080/tcp

2. Query System Health Endpoint

Test the API health endpoint directly to make sure the backend is responding and fully initialized:

curl http://localhost:8080/api/health

Expected Response:

{"status":"healthy","version":"1.1.0-patch.7"}

3. Check System Logs

Monitor the startup logs. The output should be clean of any exceptions or [ERROR] messages:

docker compose logs -f

4. Verify via Interactive Console (Recommended) 🛠️

Stigix has a built-in interactive CLI console (currently in Beta) to inspect and control the running state:

  1. Open the interactive console:
    docker exec -it stigix stigix-cli
  2. Log in to the local instance: Run the auth login command and enter the default admin credentials:
    auth login
    Username [admin]: admin
    Password: admin
    
  3. Inspect the status: Verify backend connection, traffic state, and public IP detection:
    status
    
    Expected Output:
    ━━ Stigix Status ━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ✓ Backend    [UP]  uptime 120s
    → Version    1.1.0-patch.7
    Traffic      [STOPPED]
    → Public IP  198.51.100.42
    
    (Type exit or press Ctrl + C to leave the CLI when done)

5. Check Auto-Generated Configuration

Confirm that the initialization scripts have successfully generated default environment configurations:

# Check generated files
ls -la config/

# View the auto-detected primary network interface
cat config/interfaces.txt

# Inspect the loaded application definitions (67 default apps)
jq '.applications[]' config/applications-config.json | head -5

🎯 What Happens on First Start?

The system auto-generates everything you need:

  1. config/applications-config.json - 67 popular SaaS applications (Google, Microsoft 365, Salesforce, etc.) and traffic control settings.
  2. config/interfaces.txt - Auto-detected network interface (eth0, en0, ens4, etc.)
  3. config/users.json - Default admin user with bcrypt-hashed password

No manual configuration needed! 🎉

Simply start the containers and access the dashboard at http://localhost:8080


📖 Usage

Managing Traffic Generation

  1. Login to the web dashboard at http://localhost:8080
  2. Dashboard Tab: View real-time statistics and control traffic generation
  3. Configuration Tab:
    • Add network interfaces (e.g., eth0, wlan0)
    • Adjust traffic distribution percentages for different application categories
    • Use explicit http:// or https:// prefixes for internal or specific servers
  4. Logs Tab: View real-time traffic logs and statistics
  5. Security Tab: Run URL filtering, DNS security, and threat prevention tests
  6. Start/Stop: Use the toggle button on the dashboard

Running Security Tests

Navigate to the Security tab to:

  • Test URL categories (malware, phishing, gambling, etc.)
  • Validate DNS security policies
  • Test IPS/threat prevention with EICAR downloads
  • Schedule automated tests
  • View and export test results

🔧 Configuration

🌐 Prisma SD-WAN Integration (Auto-detect)

The tool supports auto-detection of your Prisma SD-WAN site name for lab visibility.

  1. Create a service account in Prisma SASE (TSG) with Read Only permissions.
  2. Add the following to your .env file:
    PRISMA_SDWAN_CLIENT_ID=your-client-id@tsgid.iam.panserviceaccount.com
    PRISMA_SDWAN_CLIENT_SECRET=your-client-secret
    PRISMA_SDWAN_TSG_ID=your-tsg-id
  3. Restart the container. The detected site name will appear in the dashboard header.

Change Port

# docker-compose.yml
ports:
  - "8081:8080"  # Use port 8081 instead of 8080

Or use environment variables:

echo "WEB_UI_PORT=8081" > .env

Add Custom Connectivity Tests

# docker-compose.yml - web-ui environment section
environment:
  # HTTP/HTTPS endpoints
  - CONNECTIVITY_HTTP_1=Production-App:https://myapp.company.com
  - CONNECTIVITY_HTTP_2=Staging-App:https://staging.company.com

  # PING tests (ICMP)
  - CONNECTIVITY_PING_1=HQ-Gateway:10.0.0.1
  - CONNECTIVITY_PING_2=Branch-Gateway:192.168.100.1

  # TCP port checks
  - CONNECTIVITY_TCP_1=SSH-Bastion:10.0.0.100:22
  - CONNECTIVITY_TCP_2=Database:10.0.0.50:3306

Adjust Traffic Frequency

# docker-compose.yml - traffic-gen environment section
environment:
  - SLEEP_BETWEEN_REQUESTS=2  # 1 request every 2 seconds (0.5 req/sec)

Change Log Retention

# docker-compose.yml - web-ui environment section
environment:
  - LOG_RETENTION_DAYS=30  # Keep logs for 30 days
  - LOG_MAX_SIZE_MB=500    # Max 500 MB per log file

🛠️ Useful Commands

# View logs in real-time
docker compose logs -f

# View logs for a specific service
docker compose logs -f web-ui
docker compose logs -f traffic-gen

# Restart services
docker compose restart

# Stop services
docker compose stop

# Stop and remove containers
docker compose down

# Rebuild after code changes
docker compose up -d --build

# Check resource usage
docker stats stigix

# Access container shell
docker compose exec web-ui sh
docker compose exec traffic-gen sh

# Export logs
docker compose logs --no-color > logs-export.txt

🏗️ Architecture

┌─────────────────────────────────────────────────────────────┐
│                     User Browser                            │
│                  http://localhost:8080                      │
└────────────────────────┬────────────────────────────────────┘
                         │
                         ▼
        ┌────────────────────────────────────────┐
        │        Stigix All-in-One Container     │
        │   ┌──────────────────────────────┐     │
        │   │    Web Dashboard (React)     │     │
        │   └──────────────┬───────────────┘     │
        │                  ▼                     │
        │   ┌──────────────────────────────┐     │
        │   │  Backend API (Node.js/Exp)   │     │
        │   └──────────────┬───────────────┘     │
        │                  ▼                     │
        │   ┌──────────────────────────────┐     │
        │   │   Traffic Generator (Python) │     │
        │   └──────────────┬───────────────┘     │
        │                  ▼                     │
        │   ┌──────────────────────────────┐     │
        │   │   Target Services (HTTP/XFR) │     │
        │   └──────────────┬───────────────┘     │
        └──────────────────┼─────────────────────┘
                           │
                           ▼
        ┌────────────────────────────────────────┐
        │         Internet / SD-WAN              │
        └────────────────────────────────────────┘

Shared Volumes:
  • config/  - Unified configuration (apps, probes, prisma, vyos)
  • logs/    - Traffic logs and statistics
  • mcp-data/ - Persistence for MCP server state

🐛 Troubleshooting

Docker Not Running

Error: Cannot connect to the Docker daemon

Solution:

  • macOS/Windows: Launch Docker Desktop and wait until the 🐳 icon appears
  • Linux: sudo systemctl start docker
  • Windows specific issues: See Windows Installation Guide

Docker Pull Timeout

Error: context deadline exceeded

Solution:

# Retry the pull
docker compose pull

# Or manually pull images
docker pull jsuzanne/stigix:stable

Port 8080 already in use

# Change port in docker-compose.yml
ports:
  - "8081:8080"

Or:

echo "WEB_UI_PORT=8081" > .env
docker compose up -d

Cannot connect to dashboard

# Check containers are running
docker compose ps

# Check logs for errors
docker compose logs web-ui
docker compose logs traffic-gen

# Check firewall (Linux)
sudo ufw allow 8080/tcp

Traffic not generating

# Check network interface configuration
docker compose exec traffic-gen cat /opt/sdwan-traffic-gen/config/interfaces.txt

# Should show your interface (eth0, en0, ens4, etc.)
# If incorrect, edit config/interfaces.txt and restart
docker compose restart

[ERROR] Configuration file not found

This error should NOT appear in v1.1.0-patch.7 or later. If you see it:

# Update to latest version
docker compose pull
docker compose down
docker compose up -d

Logs filling up disk space

# Reduce retention in docker-compose.yml
environment:
  - LOG_RETENTION_DAYS=3
  - LOG_MAX_SIZE_MB=50

No Traffic Being Generated

  1. Check that network interfaces are configured in the Configuration tab
  2. Verify traffic generation is started (green "Active" status on dashboard)
  3. Check logs: docker compose logs -f traffic-gen

Traffic Fails in Proxmox/LXC/Host Mode

Issue: Stigix traffic fails to start or network operations (like Voice/IoT simulation) fail when running in Host Network mode on certain virtualized stacks (Proxmox → LXC → Ubuntu → Docker).

Solution: This is often due to insufficient container privileges for low-level network operations (NET_ADMIN, NET_RAW).

  • Trusted Lab Fix: Enable privileged: true in your docker-compose.yml for the Stigix container.
  • Alternative: Add specific capabilities:
    cap_add:
      - NET_ADMIN
      - NET_RAW

Warning: Use privileged: true only in trusted lab setups, as it significantly reduces container isolation and increases host security risk.


🔒 Security

Production Deployment Checklist

  • Change default admin password (Dashboard → Settings)
  • Set strong JWT_SECRET in docker-compose.yml
  • Use HTTPS with a reverse proxy (nginx, Traefik, Caddy)
  • Restrict access with firewall rules
  • Enable Docker resource limits
  • Review and customize application list
  • Set appropriate log retention policies

JWT Secret

# docker-compose.yml - web-ui environment
environment:
  - JWT_SECRET=your-super-secure-random-string-here

Generate a secure secret:

openssl rand -base64 32

🔑 Key Concepts

Traffic Generator vs Security Tests

The Stigix has two separate systems:

Feature Traffic Generator Security Tests
Purpose Simulate user traffic Test security policies
Source config/applications-config.json Hardcoded test URLs
Execution Continuous background On-demand or scheduled
Logs /var/log/sdwan-traffic-gen/traffic.log test-results.jsonl
Examples google.com, office365.com urlfiltering.paloaltonetworks.com

Traffic Generator creates realistic application traffic for SD-WAN demos.
Security Tests validate URL filtering, DNS security, and threat prevention policies.


📦 Docker Images

Official Image (All-in-One)

The recommended deployment method uses a single unified image encompassing all components:

All images are automatically built for AMD64 and ARM64 architectures.


📚 Documentation

Comprehensive guides organized by your journey with the Stigix.

🚀 Getting Started

🔬 Advanced Features

🔧 Operations & Maintenance

📖 Technical Reference

📑 Research & White Papers


🎯 Use Cases

  • SD-WAN Testing - Validate traffic routing, QoS policies, and failover scenarios
  • Security Policy Testing - Test URL filtering, DNS security, and threat prevention
  • Network Performance - Measure latency, bandwidth, and reliability
  • Firewall Validation - Verify firewall rules and application awareness
  • Load Testing - Generate sustained traffic for capacity planning
  • Demo & Training - Educational tool for network engineers and sales demonstrations
  • Compliance - Verify network policies and application access controls

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Development Setup

# Clone repository
git clone https://github.com/jsuzanne/stigix.git
cd stigix

# Install web dashboard dependencies
cd web-dashboard
npm install

# Run in development mode
npm run dev

# Build for production
npm run build

📈 Roadmap

  • Multi-region deployment support
  • Advanced traffic patterns (burst, gradual ramp-up)
  • Custom protocol support (FTP, SMTP, etc.)
  • Grafana/Prometheus integration
  • Traffic replay from PCAP & ZIP archives (Stateful L7 steps, SASE telemetry, credential scrubbing, mesh sync)
  • Cloud provider integrations (AWS, Azure, GCP)
  • WebRTC and video streaming simulation
  • PowerShell installation script for Windows
  • Additional AI Security scenario targets (Copilot, Bard, Claude)
  • SLS / Prisma SASE log enrichment re-integration for security test verdicts

Disclaimer

This is a personal, community-driven project maintained in my own name. It is not an official Palo Alto Networks product, feature, or tool, and it is not supported by Palo Alto Networks in any way.

All opinions, configurations, and examples in this repository are my own and do not represent the views of my employer. Use this software at your own risk and always validate behavior in a lab environment before using it in production.

This project is provided "as is", without any warranty of any kind, express or implied, including but not limited to fitness for a particular purpose or non-infringement.


📝 License

This project is licensed under the MIT License - see the LICENSE file for details.


🆘 Support


🙏 Acknowledgments


Made with ❤️ for SD-WAN testing and demonstrations

For detailed installation instructions, see INSTALLATION.md
For Windows-specific setup, see Windows Installation Guide

About

Stigix is a lab platform to validate SD‑WAN and SASE. ​ It unifies SaaS traffic generation, security tests, convergence probes, and voice/IoT/VyOS simulations in one web UI

Topics

Resources

Stars

24 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages