WiFi device connections visualizer for those that do not have a networking degree. Where is your data flowing to?
connvis has two views: (1) sankey diagram of WiFi device connection targets and (2) geographical view and activity of targets.
connvis.webm.mov
Connect device(s) to the WiFi network made for connvis and start experimenting.
Connvis is even more fun with friends (supports and is actually designed for multiple devices being used in parallel)!
TLDR: Basically conntrack, but it tries to not show IP-addresses (or ports because everything is 443 or proprietary), but instead it tries to show some other still useful info related to the connections.
- conntrack kernel module (also
echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct
) - dnsmasq
- systemd (for dnsmasq journal)
- hostapd
- python3.9
- Debian Stable / Ubuntu
-
Become a WiFi router
apt-get install dnsmasq hostapd
, enable forwarding, etc. -
Install dependencies
apt-get install python3-pip whois python3-gi pip3 install -r requirements.txt
-
Download required files to data folder
-
Run
python3 main.py
and open the browser. -
Follow end user usage
apt-get install python3-pip whois python3-gi
pip3 install -r requirements.txt
- pyenv / poetry
- Add connection flushing:
Line 392 in ee9cd87
- Per device view of activity / bandwidth
- New view: Per device domain resolves alone view
- Sankey connection freshness coloring
- Better purge of expired connections instead of instant disappearing
- Priority sorting domains that an IP has based on: dnsmasq latest resolved domains
- Display which domains an IP had resolved during the session
- Geovisualization show device count without popup on hotspots
- Improve hotspot visualization (labels are overlapping easily)
- Code cleanup
- Extra connection classification: file downloads (long connection and lots of bytes) or something else
- TLS SNI sniffing?
- Real time audible clicking of packets per second
Blocklists by https://pgl.yoyo.org/adservers/ and https://someonewhocares.org and https://blocklistproject.github.io
Geolocation data provided by https://MaxMind.com and https://lite.ip2location.com ( This site or product includes IP2Location LITE data available from https://lite.ip2location.com ).
Switched to ethernet-passthrough. Using wireless access point separately.
MIT
The authors gratefully acknowledge the funding provided by IDA for the development of the software. The software was developed under the Software Engineering Laboratory of Department of Computing in University of Turku.