https://github.com/veydantkatyal/net-mon-chain
NetMonChain is a decentralized network traffic monitoring system that captures, encrypts, and shares network traffic logs across multiple nodes in a peer-to-peer network. It provides a real-time dashboard for monitoring network activity securely. Built while learning computer networks concepts.
https://github.com/veydantkatyal/net-mon-chain
monitoring-system network-programming p2p-network
Last synced: about 1 year ago
JSON representation
NetMonChain is a decentralized network traffic monitoring system that captures, encrypts, and shares network traffic logs across multiple nodes in a peer-to-peer network. It provides a real-time dashboard for monitoring network activity securely. Built while learning computer networks concepts.
- Host: GitHub
- URL: https://github.com/veydantkatyal/net-mon-chain
- Owner: veydantkatyal
- License: mit
- Created: 2024-10-24T16:39:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-24T16:49:31.000Z (over 1 year ago)
- Last Synced: 2024-10-26T02:12:13.315Z (over 1 year ago)
- Topics: monitoring-system, network-programming, p2p-network
- Language: Python
- Homepage:
- Size: 20.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# NetMonChain: Decentralized Network Traffic Monitoring
## Overview
NetMonChain is a decentralized system for monitoring network traffic across distributed nodes. Traffic logs are captured using packet sniffing, encrypted, and shared across nodes using a P2P communication system. Logs are stored in a distributed database for real-time visualization and analysis.
## Features
- **Packet Sniffing**: Efficient packet capture using `dpkt`.
- **P2P Network**: Decentralized peer-to-peer communication.
- **Encryption**: AES encryption for secure log transmission.
- **Traffic Visualization**: Real-time traffic analysis using Streamlit and Grafana.
- **Distributed Storage**: Logs stored in Cassandra for scalability.
## Installation
1. Clone the repository:
```bash
git clone https://github.com/veydantkatyal/net-mon-chain.git
cd net-mon-chain
```
2. Install dependencies:
```bash
pip install -r requirements.txt
```
3. Run the packet sniffer:
```bash
python net_monitor/packet_sniffer.py
```
4. Start the P2P node:
```bash
python p2p_network/p2p_node.py
```
5. Launch the dashboard:
```bash
streamlit run dashboard/dashboard.py
```
## License
This is project is licensed under [MIT License](https://github.com/veydantkatyal/net-mon-chain/blob/main/LICENSE), please go through it carefully, before using it.