78 lines
3.7 KiB
Markdown
78 lines
3.7 KiB
Markdown
# DNSCrypt Proxy 2 for Android | privacy oriented
|
||
|
||
A flexible DNS proxy, with support for modern encrypted DNS protocols such as [DNSCrypt v2](https://dnscrypt.info/protocol), [DNS-over-HTTPS](https://www.rfc-editor.org/rfc/rfc8484.txt) and [Anonymized DNSCrypt](https://github.com/DNSCrypt/dnscrypt-protocol/blob/master/ANONYMIZED-DNSCRYPT.txt).
|
||
|
||
|
||
## Features
|
||
- For all features please refer to the [OFFICIAL PAGE](https://github.com/DNSCrypt/dnscrypt-proxy#features)
|
||
- All binary files are downloaded from the [OFFICIAL RELEASE PAGE](https://github.com/jedisct1/dnscrypt-proxy/releases)
|
||
|
||
|
||
## Pre-built binaries
|
||
|
||
Up-to-date, pre-built binaries are available for:
|
||
|
||
- Android/arm
|
||
- Android/arm64
|
||
- Android/x86
|
||
- Android/x86_64
|
||
|
||
|
||
## Differences between default DNSCrypt Proxy project
|
||
|
||
##### **- CONFIG. FILE:** *(dnscrypt-proxy.toml)*
|
||
|
||
- ✅ `DNSSEC` required
|
||
- ✅ Enabled `dnscrypt_ephemeral_keys` feature *(create a new, unique key for every single DNS query)*
|
||
- ✅ Enabled `anonymized_dns` feature *(each resolver has 2 relay)*
|
||
- ⛔️ `DoH` disabled
|
||
- ⛔️ `IPv6` disabled
|
||
- ℹ️ Set`refused` response to blocked queries
|
||
- ℹ️ Set DNS query max. response time from `5000` to `1500`, in ms.
|
||
- ℹ️ Use [UncensoredDNS](https://blog.uncensoreddns.org/) as fallback resolver instead CloudFlare
|
||
- ℹ️ Use `charis` (DE), `dnscrypt.nl-ns0` (NL), `dnscrypt.uk-ipv4` (UK), `dnscrypt.eu-dk` (DK), `dnscrypt.eu-nl` (NL), `dnswarden-dc1` (DE), `dnswarden-dc1` (DE), `publicarray-au` (AUS), `publicarray-au2` (AUS), `scaleway-fr` (FR) and `suami` (FR)
|
||
|
||
|
||
## Installation
|
||
1. Download latest `.zip` file from here or from [dnscrypt-proxy-android | CHANNEL](https://t.me/dnscrypt_proxy) on Telegram and flash it with Magisk Manager App or with your Recovery.
|
||
2. Reboot.
|
||
3. Open AFWall+ and set custom script:
|
||
|
||
**ENTER SCRIPT:**
|
||
```
|
||
iptables -t nat -A OUTPUT -p tcp ! -d 91.239.100.100 --dport 53 -j DNAT --to-destination 127.0.0.1:53
|
||
iptables -t nat -A OUTPUT -p udp ! -d 91.239.100.100 --dport 53 -j DNAT --to-destination 127.0.0.1:53
|
||
```
|
||
|
||
**SHUTDOWN SCRIPT:**
|
||
```
|
||
iptables -t nat -D OUTPUT -p tcp ! -d 91.239.100.100 --dport 53 -j DNAT --to-destination 127.0.0.1:53
|
||
iptables -t nat -D OUTPUT -p udp ! -d 91.239.100.100 --dport 53 -j DNAT --to-destination 127.0.0.1:53
|
||
```
|
||
|
||
### Configuration (post-installing)
|
||
|
||
- You can edit `dnscrypt-proxy.toml` as you wish located on `/sdcard/dnscrypt-proxy/dnscrypt-proxy.toml` [or /data/media/0/dnscrypt-proxy/dnscrypt-proxy.toml]
|
||
- For more detailed configuration please refer to [official documentation](https://github.com/jedisct1/dnscrypt-proxy/wiki/Configuration)
|
||
- FOR MORE SUPPORT ON A GOOD PRIVACY-ORIENTED SETUP, JOIN [dnscrypt-proxy-android | CHAT](https://t.me/qd_invitation) ON TELEGRAM
|
||
|
||
|
||
## Changelog
|
||
|
||
#### 2.0.31
|
||
|
||
##### Updated binary files to 2.0.31 | jedisct1
|
||
* This version fixes a startup issue introduced in version 2.0.29, on systems for which the service cannot be automatically installed (such as OpenBSD and FreeBSD). Reported by @5ch17 and Vinícius Zavam, and fixed by Will Elwood, thanks!
|
||
* This version fixes two regressions introduced in version 2.0.29: DoH server couldn't be reached over IPv6 any more, and the proxy couldn't be interrupted while servers were being benchmarked.
|
||
|
||
##### Updated config files to 2.0.31 | quindecim
|
||
* ℹ️ Changed the way to backup an existing .toml file. The old configuration is now backed up with `year-month-day-hour-minute.bak` suffix (thanks to @lindroidux)
|
||
|
||
[Full changelog](changelog.md)
|
||
|
||
|
||
## Credit
|
||
- DNSCrypt-Proxy2 upstream | [jedisct1](https://github.com/jedisct1/dnscrypt-proxy)
|
||
- [bluemeda](https://github.com/bluemeda) for the original module
|
||
- [All contributors](https://github.com/Magisk-Modules-Repo/dnscrypt-proxy/graphs/contributors)
|