WiFi Network Analyzer is a full-stack application for monitoring and controlling small network environments. It allows administrators to track network traffic, monitor connected devices, and block specific domains as needed.
The system uses a Linux machine configured with hostapd to act as a WiFi router and tcpdump to capture DNS traffic. All captured data is stored in MongoDB, and a frontend dashboard provides a single admin interface to visualize network activity and manage access.
- 🌐 Network monitoring: Track which IP addresses visited which domains and how many times
- 📊 WiFi details: Display bandwidth, security type, range, and other basic WiFi information
- 🛑 Domain blocking: Block specific domains for controlled access
- 📝 Traffic logging: Capture DNS requests on port 53 using
tcpdump - 🔐 Single admin access: Frontend dashboard for administration and monitoring
- ☁️ MongoDB backend: Store all traffic logs for analysis
- Linux: Hostapd configured as WiFi router
- Network Monitoring: tcpdump for DNS traffic capture
- Database: MongoDB for logging traffic
- Backend: Node.js / Express.js API
- Frontend: React dashboard with single admin access
-
Configure Linux machine as router
- Install and configure
hostapdand DHCP/DNS according to your network needs.
- Install and configure
-
Install MongoDB
- Store captured network logs and analytics.
-
Capture DNS traffic
- Use
tcpdumpon port 53 to intercept DNS requests:sudo tcpdump -i <interface> port 53 -w dns_logs.pcap
- Forward captured data to MongoDB via your backend.
- Use
-
Backend API
- Implement API endpoints to fetch logs, block domains, and serve frontend data.
-
Frontend Dashboard
- React app to visualize connected IPs, domains visited, number of requests, and WiFi details.
- Admin can block/unblock domains from the dashboard.
- Connect devices to the WiFi network hosted on the Linux router.
- Access the admin dashboard via the browser.
- Monitor traffic, check WiFi metrics, and block domains as required.
- All actions are logged in MongoDB for auditing and reporting.
- Only deploy in networks you control.
- Capturing DNS traffic can include sensitive user activity; ensure secure access to MongoDB and frontend dashboard.
- Use strong admin authentication for the dashboard.