Für Umsteiger/Einsteiger: Fragen und Diskussion zu RethinkDNS

Ja, kannst du:
Auf der Startseite von Rethink auf „Apps“ klicken, und dort die App auswählen, oder über einen geblockten Eintrag der App - z.B. unter Statistiken, oder im Protokoll, in letzteren Fall dann noch auf den Appnamen klicken.
Dort dann „Firewall-Regeln für diese Anwendung“ mit einen Klick auf eben diesen Text ausklappen, und „Universelle Umgehung“ aktivieren.
Daraufhin sollte oben beim App-Icon und Namen „Diese App umgeht die universellen Firewall-Regeln.“ zu lesen sein.
Das gilt aber für alle „Universellen“ Firewallregeln zugleich, feiner kann man das pro App nicht einstellen.

Blocklisten (und blockierte Domains, ungetestet: sehr wahrscheinlich blockierte IP-Adressen ebenfalls) funktionieren trotzdem.

Kommt darauf an. Manche verwenden das zum Umgehen von DNS Blockern, und lösen z.B. Domains per HTTPS (DoH) zu einer IP auf, unsichtbar für deinen DNS Resolver und/oder Rethink. Vorallem denke Ich Apps mit Werbung.
Andere wiederum (z.B. Tor) verwenden einfach direkte IP Aufrufe, z.B. wenn ein DNS Name nicht aufgelöst werden kann, oder vorhanden ist, oder weil sie IP-Adressen etwaiger Endpunkte auf anderen Wege als per DNS erhalten (rein als Beispiel: Torrents).
Es kommt am Ende also auf die App an, und inwiefern du ihr vertraust, das nicht zum umgehen deines DNS zu nutzen.
Ich persönliche gebe, wenn Ich die Funktion verwende, nur Signal/Molly, und RustDesk frei.
Eben weil z.B. VOIP Telefonie (Signal Anrufe) standardmäßig nicht über Server mit Domains (Relays) läuft, und die direkte Kommunikation mit dem Endpunkt bei RustDesk auch mit IP-Adressen arbeitet, sonst müsste dort alles über einen Relay-Server gehen.

Die einzige weitere App, die Ich persönlich kenne, die wohl teilweise am DNS vorbei arbeitet ist WhatsApp.
Ich denke, für SimpleX Chat & Session wird das auch normal sein, wenn die Server dort nicht alle mit Domain verteilt werden, sondern einfach direkt IP-Adressen an die Clients ausgeliefert werden. Ist häufiger bei solchen Netzwerken so. Oder es inzwischen (auch) P2P gibt.
Keine Ahnung, was Droid-ify ist, dazu kann Ich also nichts schreiben. :slight_smile:

Warte schon … :wink:

Die aktuelle Version (F-Droid) ist irgendwie für den Popo. Blockt plötzlich aus unerfindlichen Gründen Dinge, die vorher gingen. Das lässt sich auch nicht weg konfigurieren. Musste auf die vorherige Version switchen.

Ich bin gestern auf ein Problem in RethinkDNS gestoßen.

Mir war aufgefallen, dass meine Uhr im Smartphone arg daneben ging. Mein üblicher Test hierzu ist, die Uhr manuell kurz zu verstellen und dann die automatische Synchronisation wieder zu aktivieren. Die Uhr blieb auf der falschen Uhrzeit.

Da ich mein GrapheneOS Pixel 6a eh frisch aufsetzen wollte (die Gründe stehen hier nicht zur Diskussion), konnte ich das ein wenig ausprobieren. Ich hatte die universellen Firewallregeln

  • Block when source app is unknown
  • Block UDP except DNS and NTP
  • Block when DNS is bypassed
  • Block newly installed apps by default
  • Block port 80 (insecure HTTP) traffic

aktiviert. Ich vermute, dass es an der Regel mit NTP liegt. Die Uhr wird damit nicht mehr synchronisiert. Auch eine Deaktivierung der Regel(n), ein Neustart der App und ein Neustart des Smartphones bringt die Zeitsynchronisation nicht wieder zurück.

Tritt das Problem bei euch auch auf?
Weiß jemand, wie man das fixen kann, ohne die App komplett neu zu installieren (hatte ich nicht ausprobiert) bzw. das System plattzumachen?

edit: Das muss sehr sicher mit der vorherigen Version 0.5.5.a aus dem F-Droid Laden auch schon so gewesen sein, weil die aktuelle Version noch nicht so alt ist und die Uhr dafür zu viel daneben ging.

Ich kann dein Zeitsynchronisations-Problem bei mir (Pixel 6, aktuelles GrapheneOS, RethinkDNS v0.5.5c aus dem F-Droid Repo, entsprechende Einstellungen) nicht reproduzieren.

Als Versuch habe Ich...

… in RethinkDNS für die universellen Firewallregeln die gleichen Einstellungen gewählt, das Gerät in den Flugmodus versetzt, WLAN abgeschaltet, die automatische Zeitsynchronisation deaktiviert, die Uhrzeit eine Stunde vor gestellt, und das Gerät neugestartet. „Verbindungen ohne VPN blockieren“ ist bei mir immer aktiv, eventuell unterscheidet sich unser Setup darin. Der Energiesparmodus ist nicht eingeschaltet, sollte aber vermutlich keinen Einfluss haben.

Nach dem Neustart wurde Rethink gestartet, das WLAN verbunden, und für die Uhrzeit (weiterhin eine Stunde vor eingestellt) wieder „automatisch einstellen“ angewählt. In den Fall wird die Zeit normalerweise sofort bei antippen des Schalters über das Netzwerk bezogen, und gesetzt. Ohne Neustart nicht unbedingt.

Eben dies ist auch eingetreten: die Uhrzeit wurde sofort synchronisiert - andernfalls hätte Ich schlimmstenfalls ca. einen Tag warten müssen, anhand der Zeitpunkte vorheriger Synchronisationen im Protokoll von Rethink, da diese täglich stattfinden.


Unter GrapheneOS wird die Zeit nicht per UDP und/oder NTP synchronisiert.
Stattdessen wird eine HTTPS Verbindung zu time.grapheneos.org aufgebaut, und dort aus einer Anfrage ein aktueller Zeitstempel abgerufen. Sprich: TCP, über Port 443.
Als Herkunft wird bei mir in RethinkDNS die App-Gruppe mit „Dynamic System Updates“, „GrapheneOS“, etc. angezeigt.
Wenn du eine App davon in der Appübersicht in RethinkDNS anwählst, kannst du dir die Regeln für alle diese Apps anzeigen, und auch dort z.B. die universellen Firewallregeln umgehen lassen.

Lässt sich denn im Protokoll, falls du es aktiviert hast, ein Eintrag für time.grapheneos.org finden, z.B. unter dem Tab „DNS“? Eventuell ist dieser blockiert?
Wenn einer aufzufinden ist, und du ihn anklickst, wird dort angezeigt, dass „Keine Antwort“ erhalten wurde? In den Fall - der auch beim Start von Rethink auftritt, aber hinterher trotzdem korrekt aufgelöst wird sobald Rethink bereit ist - könnte es sein, dass dein eingestellter DNS Server aus irgendeinen Grund die Domain für die Zeitsynchronisation nicht auflöst.

Oder lässt sich eine Synchronisation nach dem Verfahren im Spoiler oben erzwingen? Ohne Neustart des Gerätes wird beim Umschalten der Synchronisation ggf. auf einen zwischengespeicherten Wert zurückgefallen.

1 „Gefällt mir“

Ja geil, du hast tatsächlich Recht!!! Merkwürdig, dass das unter „Stats“ nicht aufgetaucht ist. Deshalb hab ich das übersehen, weil ich davon ausgehe, dass dort alles auftaucht, was eine Verbindung einfordert.

DANKE!!!

Gibt es Infos vom Entwickler wann die Bugs in v055c gefixt werden? Alles sehr undurchsichtig.

Auf Mastodon haben sie doch gesagt dass sie a) nur zu 2t sind und b) halb scherzhaft geschrieben dass nach Mikes Osterurlaub alles behoben sein wird :wink:

Abgesehen davon kann man hier den Fortschritt beobachten:
1301

https://github.com/celzero/rethink-app/releases/tag/v0.5.5d
Habe Wireguard getestet und alles geht so wie es soll

Gibt einige Fehler die mit 55d markiert sind und 55e ist schon in Arbeit.
Kann ich zwar so nich nachvollziehen hier aber vielleicht sollte man einfach noch mal nen paar Versionen abwarten :wink:

Hallo,
kann man das Backup problemlos auf ein anderes Android Gerät übertragen?
Bei der Neuinstallation einer App werden die alte Einträge aus Rethink gelöscht. Daraus ergeben sich für mich zwei Überlegungen:

  1. Bei einer Übertragung werden sämtliche Einstellungen zu den Apps gelöscht, weil sie wie bei einer Neuinstallation auf dem gleichen Gerät behandelt werden.
  2. Wenn sie nicht gelöscht werden und auf dem anderen Gerät sind nicht alle Apps installiert, bleiben dann die Einstellungen zu den alten Apps erhalten und es kann zu einer Überfrachtung mit nicht erforderlichen Einträgen kommen?

Ich nutze auf einem GrapheneOS (Pixel 6a) mit dem Stand 20240409 RethinkDNS 0.5.5.e.

In ein neu angelegtem Profil habe ich neben RethinkDNS die Aliexpress-App installiert.

Die Kontakte sind in diesem Profil leer, es gibt keine EMails…nada…nüscht.

Als DNS nutze ich den System-weit eingestellten DNS „dnsforge.de“.

RethinkDNS ist mit allen Sperrlisten versehen und es sind alle Listen aktiviert.

Damit die Aliexpress-App /irgendetwas/ tut, musste ich den ByPass-DNS switch auf „ON“ stellen, was mir schon das erste Unbehagen vermittelt.

Im Log von RethinkDNS tauchen dann ein gerüttelt Maß an Anfragen an den IP-Range 59.82.0.0/16:0

Whois gibt dazu Folgendes an:
% Information related to ‚59.82.128.0/24AS37963‘

route: 59.82.128.0/24
origin: AS37963
descr: China Internet Network Information Center
Floor1, Building No.1 C/-Chinese Academy of Sciences
4, South 4th Street
Haidian District,
mnt-by: MAINT-CNNIC-AP
last-modified: 2020-02-18T01:17:58Z
source: APNIC

Das klingt - zumindest in meinen Ohren/Augen - so, als wäre es interessant herauszfinden, was passiert, wenn man das blockt.

Also habe ich in RethinkDNS einen entsprechende „IP & Port rule“ erstellt.

Nur geblockt wird da nüscht…

Liegt das an mir, an der App and GOS oder an RethinkDNS?

Das ist Overblocking.

Ich gehe mal davon aus, dass Du die App auf „Bypass DNS & Firewall“ gestellt und nichts an „Block when DNS is bypassed“ gedreht hast.

Das ist dann die bequemste Variante Overblocking zu umgehen. Dann ist wieder alles offen.
Will sagen, es ist Aufwand entweder Overblocking von Grund auf zu vermeiden, oder es ist Aufwand, Overblocking punktuell abzustellen.

Mit „Bypass DNS & Firewall“ musst Du auf Per App Ebene die IP Adressen blockieren. Siehe hier. Alternativ kannst Du die App auf „Isolate“ stellen und dann individuell die IP Adressen freigeben.

Und falls parallel Wireguard im Spiel ist … dann würde ich auf Folge-Versionen warten. Für meinen Geschmack gibt es da noch zu viele issues.

Vielen Dank für Deine Erklärung, trip!

Nachdem ich die App zum „Mitspielen“ bewegt hatte, wollte diese Zugriff auf das Microphone und die Camera - ohne diese Permission verweigerte sie den Dienst.

Nein!

So nicht - deinstalliert und aus.

Das geht mir zu weit.

Eigentliche müsste GrapheneOS noch „Fake“-Devices haben, also ein Microphone, welchese nur Stille liefert, eine Camera, die nur Schwärze liefert, ein GPS, das Fake-Standorte (glaubhaft) liefert etc.

Im Changelog RethinkDNS 0.5.5 d
https://github.com/celzero/rethink-app/releases

New Feature: Optionally enable built-in Android connectivity checks

Weiß jemand, in welchen Einstellungen das ist und was es macht?

Bei mir funktioniert nur v055a. Wenn ich auf eine aktuellere Version gehe, steht dann in der App „Kein Internet“

moin, kurze Frage reicht es unter DNSCrypt einen Resolver auszuwählen? Zusätzlich kann noch ein Relay ausgewählt werden in Holland, Frankreich Schweden, etc. Wozu?

Eigentlich heißt es auf der Github-Seite https://github.com/celzero/rethink-app/releases, dass in Version v0.5.5h das Problem der nicht erreichbaren Sperrlisten gelöst worden sei:

Bug fix: Inaccessible On-device blocklists Configure UI.

Habe inzwischen schon die Version v0.5.5i von https://f-droid.org/de/packages/com.celzero.bravedns/. Kann jedoch nach wie vor keine Blocklisten herunterladen. Augenscheinlich werden die Seiten gesucht, aber es passiert nichts. Kann jemand sagen, ob das mit der Github-Version wirklich anders läuft?

@kolabi

Hi. Versuche es mal so: In den Einstellungen von DNS den Schalter für „In-App Downloader“ aktivieren. Dann sollte es klappen (war bei mir so).

2 „Gefällt mir“

Interessant. Hatte ich doch schon in RethinkDNS für den Download-Manager des OS den Internetzugang erlaubt. Nach Aktivierung von „In-App Downloader“ wurde mir ein Download angezeigt. Allerdings tat sich dort auch nicht viel.

  • _basisconfig.json wurde plötzlich heruntergeladen, als ich unter Einstellungen → Netzwerk → VPN → RethinkDNS Verbindungen ohne VPN blockieren deaktiviert hatte.
  • _filetag.json wurde erst heruntergeladen, als ich RethinkDNS gestoppt hatte.
  • Innerhalb von ca. 3 h gelang es mir durch permanenten Wechsel zwischen Starten und Stoppen von RethinkDNS den Download immer wieder anzuschieben, so dass dann auch noch _rd.txt und _td.txt heruntergeladen wurden. Im Normalfall zeigte RethinkDNS eine Downloadrate von unter 1 kB/s an. Spitzen lagen bei 2000 kB/s.
  • Nach den genannten 4 Dateien war der Download noch nicht abgeschlossen, aber es passierte nichts mehr.

Hat hier noch jemand eine Idee?

Eine andere Sache kommt mir noch etwas merkwürdig vor. Ich habe für RethinkDNS keine Speicherberechtigung erteilt, kann das aber auch nicht, da diese bei den Berechtigungen nicht zur Auswahl steht. Braucht es das nicht zum Speichern der Sperrlisten, von den Einstellungen mal abgesehen?

Ach so, habe ein Pixel 7 pro mit GrapheneOS.


Update 1 Tag später: Nach ca. 6 h sind die Sperrlisten schließlich alle heruntergeladen und es kann losgehen! Unter einem weiteren Benutzer auf demselben Gerät sind die ersten beiden Dateien bereits nach 5 min da. Hm…

Habe dann mal den Ad-Block-Test von NetGuard gemacht: https://netguard.me/test
Leider kommt da immer die Ausgabe:

Ad blocking does not work

Habe ich da eine Einstellung übersehen? Oder kann der NetGuard-Test nicht auf RethinkDNS übertragen werden? Wenn ja, warum nicht?

Update 2 Tage später: Krass, jetzt funzt es nur so. Die Sperrlisten werden innerhalb von 1-10 Sekunden heruntergeladen. Lesen die Leute von RethinkDNS hier mit?

Das war wirklich ein wertvoller Hinweis! Ohne diese Einstellung werden die Listen zwar heruntergeladen aber nicht aktiviert.