HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
celzero
rethink-app
Kotlin2021–2026
celzero / rethink-app

rethink-app

DNS over HTTPS / DNS over Tor / DNSCrypt client, WireGuard proxifier, firewall, and connection tracker for Android.

14Distinct people
42Mentions
0Explicit recommenders
5.9KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

DNS over HTTPS / DNS over Tor / DNSCrypt client, WireGuard proxifier, firewall, and connection tracker for Android.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 4:01:40 AM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year42 dated mentions

Observed mentions: 2021-02-14 18:48:27 UTC to 2026-10-06 22:33:36 UTC.

0510152021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 15 mentions; 0 submissions, 15 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 5 mentions; 1 submissions, 4 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments20232024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 5 mentions; 0 submissions, 5 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 5 mentions; 0 submissions, 5 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC15015
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC514
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC606
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC505
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC606
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC505

What Hacker News says

15 sources
Hi: NextDNS is the gold-standard and many capable alternatives have cropped up in its wake in the recent times like windscribe's controld.com but RethinkDNS is not it. Our primary objective is anti-censorship, and so, we make it simple for folks to deploy their own DoH (which means all our code is open source). Today, the serverless DoH stub resolver deploys to cloudflare workers but we plan to support deno.com/deploy and fly.io soon (already have it working in our development branches but the incompatibility between node and deno is causing a bit of pain to merge with mainline). RethinkDNS is the reference serverless DoH deployment, if you will. We support DNS-based content-blocking too (out of sheer need for it from our users) but believe the right avenue to block content is either in-app where possible (like uBlockOrigin in Firefox) or
Read the rest
at the IP-layer (not DNS), and hence we also build a Firewall (due to limited time, the RethinkDNS + Firewall app is Android-only, for the time being [1]). That said, we do plan to achieve parity with NextDNS, but that's going to happen over a period of time since our team of 3 is stretched thin between building the firewall (too much complexity!) and the dns (too much work!). [0] https://github.com/serverless-dns/serverless-dns [1] https://github.com/celzero/rethink-app
In LibreWolf – A fork of Firefox, focused on privacy, security and freedom
NextDNS (the resolver) is not equivalent to using an app (a client) like TrackerControl. NextDNS (the resolver) cannot prevent apps from doing their own DNS, or prevent apps from connecting to preset IPs. Only if the queries reach the resolver can NextDNS act upon it / track it / block it. Also, apps like TrackerControl can do per-app blocking, just like LittleSnitch / LuLu and Glasswire do on macOS and Windows respectively. For some background on what apps like TrackerControl could potentially protect against, see: https://github.com/celzero/rethink-app/issues/301#issuecomme... Disclosure: I co-develop a FOSS app similar to TrackerControl and a FOSS alternative to NextDNS.
In TrackerControl
RethinkDNS + Firewall: https://github.com/celzero/rethink-app TrackerControl has a tad better UX; is built on top of the super-stable NetGuard and hence inherits its flaws and merits. For instance, it does not support DoH/DoT/DNSCrypt. It also leaks DNS connections over TCP (this happens when a DNS question or answer payload is too big to fit in a single UDP packet). In fact, all userspace DNS clients on Android I have taken a look at, leak DNS queries over TCP. TrackerControl does not trap all packets over port 53, which RethinkDNS does by default. TrackerControl isn't geared towards bypassing censorship. RethinkDNS can bypass stateless firewalls employing a similar trick to GreenTunnel, and we plan to implement a couple more such mitigations. Unimplemented but soon, RethinkDNS would let users block connections if apps don't resolve DNS
Read the rest
with a resolver of their choosing. RethinkDNS has open-sourced both its client app and a pi-hole like stub resolver: https://github.com/serverless-dns/serverless-dns There's three of us working on RethinkDNS full-time, so it is likely to see feature development at a faster clip than TrackerControl and NetGuard (the latter's been put under maintanence mode by its original developer).
In CalyxOS – De-Googled Android Alternative
Tech discussion begins at 14:00. At 21:00 [0] Snowden calls for [developers to build] smartphone tools to let users take control of their devices (wouldn't be for the first time). While a no-root, user-space firewall can only do so much (Daniel Micay will attest to that [1] :), that's what we are building with RethinkDNS (https://github.com/celzero/rethink-app) for Android phones, picking up where WhisperSystems left off [2]. This other complementary Android app (doesn't require root, but does require "developer mode" turned on) I use, gives a lot more control over installed apps and its components (no so much over the device's network itself): https://github.com/MuntashirAkon/AppManager While Google continues to make significant improvements [3], security-focused Android distributions like CalyxOS and Graphene remain the best avenues to
Read the rest
tackle privacy concerns today, but most of the 2B+ Android users don't really want to root devices let alone flash ROMs. Most Chinese OEMs (Vivo, Oppo, OnePlus, Realme, Xiaomi) do bundle in (pretty decent though limited) firewalls but they do not let one visualize or block individual network requests. It'd be quite sometime before the Android/Fuchsia-iOS duopoly is displaced from its perch, but technology-wise, my longer-term hopes are pinned on Linux-based phones (PINE64, Librem) for now. Of course, laws and regulations upholding digital privacy are the real end-game, and it remains to be seen how much headway is made on that front in the coming decade. [0] https://youtu.be/e9yK1QndJSM?t=1261 [1] https://github.com/GrapheneOS/os-issue-tracker/issues/389 [2] https://web.archive.org/web/20110506050715/http://www.whispe... [3] https://security.googleblog.com/search/label/android
In Edward Snowden on privacy and threats to democracy (2019) [video]
Hi there. Strange. We plan to separate UI from the VPN process which would avoid scenarios where clearing up UI process clears up the VPN too: https://github.com/celzero/rethink-app/issues/95 To be clear, you can still clear the activity stack (swipe up dismiss RethinkDNS from Android's Recents screen) which doesn't shutdown VPN; at least not on devices I've tested it on (like the OnePluses and the Oppos). MiUI seems to be aggressive here.
In RethinkDNS – monitor app activity, block ads and firewall apps on Android
Apologies, I saw a different issue https://github.com/celzero/rethink-app/issues/210#issuecomme... and did not realize those concerns had already been addressed. Unfortunately I can no longer edit my post, but it's good to learn that it is that much closer to F-Droid inclusion! :) I think my comment must have appeared harsher than I intended, because I'm very excited to learn about this project. When I say "just an android app" that's a massive positive for me, but I understand why it might read otherwise! I had assumed at first blush this was yet another scammy SASS product with a corresponding app, but when I realized it was "just" an open source Android app (and finding the open issue re: working towards F-Droid inclusion) it made me very interested indeed! I also didn't mean to imply that DNS 66 was anywhere near feature parity with t
Read the rest
his project, so apologies if that appeared to be the case. That said I have used DNS 66 in the past effectively, despite its limitations. Can you suggest where I can read more about its security deficiencies, or by "insecure" do you just mean to say it is an incomplete solution? (i.e. the lack of protocol support and the reliance on the Android VPN framework?)
In RethinkDNS – monitor app activity, block ads and firewall apps on Android
> ...because it includes proprietary bits This is baseless. There are no proprietary bits. Just because the default build script doesn't take to polyglot codebases well enough does not mean the app contains closed source tech. And I'm in no hurry to fix that myself but welcome code changes from anyone who's willing to put in the work. Here's the issue in case you or anyone reading this is interested: https://github.com/celzero/rethink-app/issues/215 Please don't confidentally pass off judgement on things you may not fully understand. A quick cursory search of the app's GitHub issues would have alleviated your misplaced concerns. > In the meantime, there's DNS 66, which includes some similar features (minus the app firewall) DNS66 is insecure. Folks might be better off using DoH/DoT apps like https://nebulo.app/ https://getintra.org/ > It
Read the rest
took me a second to grok that this is really mostly just an OSS Android app with some associated DNS servers you can optionally use with it. Take a second or two more, you've likely missed out on a Littlesnitch-esque firewall which is like 50% of the app; and DNSCrypt v3 support, too; and on-device blocklists; and DNS over Tor support; and support for censorship bypass by protecting against SNI sniffing attacks? It is may be our terrible website design and copywriting skills that did us in. DNS66, as great as it is, doesn't have half the features.
In RethinkDNS – monitor app activity, block ads and firewall apps on Android
Yeah, this is a problem but not one without a solution (unless Android bundles in a built-in Firewall API that other apps could use [0]): RethinkDNS already supports chaning via SOCKS5, and it would also soon support connections to/from WireGuard endpoints: https://github.com/celzero/rethink-app/issues/52 And since RethinkDNS' underlying tunnel implementation is in Go, I'm fully expecting wireguard-go to fit in seamlessly. [0] https://www.xda-developers.com/google-restricted-networking-...
In RethinkDNS – monitor app activity, block ads and firewall apps on Android
Hi all, one of the developers of RethinkDNS here. I have been working on this full-time with a couple other friends since May 2020. We won a grant from Mozilla as part of their FixTheInternet initiative [0] last year in July, which has meant we could afford to give away the initial versions for free as we continue to work on stability and advanced feature-set that we could charge for. RethinkDNS is a no-root firewall for Android: It is a mix of both LittleSnitch and Pi-Hole. I believe, it might be the only open source DNSCrypt v3 client for Android. The website points to bravedns.com because that's the name we launched with. A lot of untangling is required to completely move to rethinkdns.com (for example, older clients still use bravedns.com and do not seem to respect 301/302 redirects), which we intend to do sooner rather than later. T
Read the rest
he core firewall is written in Golang, whilst the UI is all Kotlin/Android. We are evaluating a move to Flutter to take this cross-platform, but the immediate focus has been stability and adding support for WireGuard [1]. Currently, the firewall only tracks TCP/UDP flows. We are in the process of rewiring the firewall's network stack to use gVisor's TCP/IP implementation, and we presume that should improve things considerably. RethinkDNS, which is a fork of getintra.org, is also an anti-censorship tool. It can, bypass SNI based censorship in most countries like Iran, India, Saudi Arabia (but not all). Eventually, we forsee adding a mesh-VPN like capability to WireGuard (à la tailscale.com) in the app to enable people who "friend eachother" to share each others connections and IPs, similar to now-defunct uProxy [2], to bypass censorship. RethinkDNS relies on its namesake stub DoH-only resolver for DNS based content-blocking which is deployed to Cloudflare Workers. This is open source, as well. We are working towards making it one-click deployable so that others may run their own stub resolver; Workers' free-tier supports well over 3 devices worth of DNS queries a month. The stub resolver, as of today, supports blocking over 5M domains from around 171 lists. We plan to support all 2400+ blocklists listed on filterlists.com eventually. Since the app and the resolver are both super early, I did not expect it to land on HN. It is what it is, but please be kind :) [0] https://news.ycombinator.com/item?id=23194178 [1] https://github.com/celzero/rethink-app/issues/52 [2] https://en.wikipedia.org/wiki/UProxy
In RethinkDNS – monitor app activity, block ads and firewall apps on Android

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.