Skip to content

Latest commit

 

History

History
63 lines (51 loc) · 1.88 KB

README.md

File metadata and controls

63 lines (51 loc) · 1.88 KB

Vizceral Example with Packet Sniffer Integration

This project is an example application showcasing vizceral-react, a React wrapper for vizceral.

I added a packet-sniffer integration using Scapy to visualize live network traffic.

With this enhancement, you can track and display packet flows between specific IP addresses and protocols defined in a configurable JSON file.

Features

  • Real-time Packet Sniffing: Visualize packet flows updated every 5 seconds.
  • Configurable Packet Tracking: Define which IPs and protocols to track using a JSON configuration file.
  • Easy Deployment: Run with Docker Compose.

Setup

  1. Install and run
git clone https://github.com/kewyj/vizceral-example.git
cd vizceral-example
docker compose up
  1. Open localhost:8080 in your browser.
  2. Configure packet tracking by editing sniff.config in the packet-sniffer folder (see below for details).
  3. Run the packet sniffer.
cd packet-sniffer
python3 sniffer.py &

Configuration

The packet-sniffer folder contains the sniff.config file where you can define the following settings:

{
    "iface": "eth0",
    "nodes": {
        "google": "8.8.8.8",
        "source": "172.24.152.98",
        "aws": "13.35.210.89"
    },
    "connections": [
        {
            "protocol": "ip",
            "src": "source",
            "dest": "google"
        },
        {
            "protocol": "ip",
            "src": "source",
            "dest": "aws"
        }
    ]
}

Key Parameters:

  • iface: The network interface to monitor (e.g. eth0)
  • nodes: Define IP addresses to track, giving them descriptive names for visualization.
  • connections: Specify the protocol and source/destination nodes for tracking.
    • Use "protocol": "any" to log all packets between the specified IPs.