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.
- 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.
- Install and run
git clone https://github.com/kewyj/vizceral-example.git
cd vizceral-example
docker compose up
- Open
localhost:8080
in your browser. - Configure packet tracking by editing
sniff.config
in thepacket-sniffer
folder (see below for details). - Run the packet sniffer.
cd packet-sniffer
python3 sniffer.py &
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"
}
]
}
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.
- Use