Skip to content
DnsLister Forum

Where domain hunters compare notes

Tunnel’d. Android app to locally track IP changes, DNS leaks, and more..

I’ve been hacking on Tunnel’d, a GPLv3 Android app that runs locally to track IPv4/IPv6 changes, visualize IP history, and test for DNS leaks – without installing a tunnel or shipping data off the device

  • Core features
    • Displays current IPv4/IPv6 with country, city, ISP, ASN org, timezone, using configurable GeoIP providers
    • Keeps a searchable IP history with filtering by IP version and network type (Wi‑Fi / cellular / tunnel)
    • Includes a semi‑static analytics dashboard (network-type chart, country counts, time‑range filters like Today / 7 days / 30 days / All time)
    • Optional real‑time tracking via foreground service + persistent notification, and a home screen widget that updates when your IP changes
  • Leak tests & endpoint reputation
    • Built‑in DNS leak test (with a matching web version on ipdia.li) so you can see which resolvers your device actually uses
    • In‑app IP/domain reputation checks via VirusTotal, using your API key (no bundled key, no hidden calls)
    • Roadmap includes WebRTC leak testing and device identity leak detection, plus APK scanning against AV providers and optional AI‑generated reports using user-supplied keys
  • Privacy & trust boundaries (anti‑marketing BS)
    • Tunnel’d does not install a tunnel or try to control routing. It’s explicitly a measurement/observability tool, not a “fix all leaks” switch
    • The SECURITY.md document is blunt about trust boundaries: the app can only report what it observes via Android’s networking stack and the configured services; it cannot guarantee what the OS or other apps do outside that
    • The privacy policy splits features into local‑only (history, analytics, JSON/CSV backup/restore) vs networked (GeoIP, VirusTotal, future server logging). Networked features are opt‑in and rely on user-configured keys/endpoints rather than hard‑coded trackers
  • How it started
    • This began as a one‑morning IP logger to keep an exit‑node audit trail for my own tunnel routing setup: periodic background refresh every 10 minutes, simple history list, and basic notifications when IP changed
    • Within 48 hours it grew into a full stack: three‑provider GeoIP selector, notification filters by network type/IP version, a self‑hosted DNS leak test. The rest got added over time
    • Over subsequent releases (v0.3.x etc.) it turned from “personal craft app” into something closer to a product: KMP + Compose, Room, Koin; efficient 20–55 MB footprint; dashboards; JSON/CSV export/import; explicit privacy policy and SECURITY.md to document trust boundaries
  • If anyone here is interested
    • I’d love feedback on the README / SECURITY.md / privacy policy wording (is it honest and clear enough for both power users and non‑technical readers?). I wrote the docs to reflect what I actually expect as a user

Github: https://github.com/chmikiro/tunneld

Website: https://ipdia.li/tunneld

Some screenshots:

Many thanks!

Source: r/foss · by /u/petriko

Leave a Reply

Your email address will not be published. Required fields are marked *