yashsingh1/xdaforums huggingface dataset:
[Xperia Z2 Q&A, Help & Troubleshooting] jeremy.shi:
Hmm...that's interesting. glad to hear it's okay now. It doesn't sound like a hardware problem to me. If it keeps happening, maybe try reinstalling the system. Remember to backup before you do the restore tho

P.S you might want to avoid sony Pc companion for backup. It failed to restore last time I tried and a lot of people reported that the app would freeze for quite a while (in some cases stayed frozen forever) if your backup is big.
[Xperia Z2 Q&A, Help & Troubleshooting] stu_tls:
Are you covering the proximity sensor?
[Xperia Z2 Q&A, Help & Troubleshooting] lazarusrevol:
Same here..

Finally got my recently bought 2nd hand (still only 3 months old) Z2 after service because the previous owner had forgoten the mini-sim adaptor attached inside the sim tray...

I really have the same problem with my phone... ! Everytime i call or answer a call the screen goes black and i can't do anything... Except some times double pressing the power button brings up the screen, but not always !

Any ideas? Thank you.
[General Questions and Answers] Shrewdy:
Hi,

I have one problem with AOSP roms and I consider this as the biggest one.

I have a Galaxy S3 I9300 running Stock 4.3 deodexed, zipaligned etc.

Now with this ROM I am able to play almost all types of video files...Why is this not possible with AOSP roms?

I have always seen people installing different types of Apps (MX Player, VLC Player etc. etc..) to get all the videos playing...

But TouchWiz plays almost all types of videos out of the box...As of now I don't have any third party video player installed on my phone...

I am a big fan of CM, but refrain from installing it just because of this one reason!

Can someone please explain this to me...would be great !!

And please correct me if i am wrong...

Thanks.
[Android Q&A, Help & Troubleshooting] Draygon:
Hello,

I want to install DNScrypt proxy 1.4 on my android phone. You can get it here : download.dnscrypt.org/dnscrypt-proxy/

Could someone please make a tutorial an tell me how to install this? I want it to work with following DNS server: https://dnscrypt.eu/

It is a great enhancement in security and I would be glad if someone can get it to work and tell us.

Regards
[Android Q&A, Help & Troubleshooting] Draygon:
Is nobody interested in this? [emoji20]
[Android Q&A, Help & Troubleshooting] Draygon:
Can't believe there is no response. Is no one of the XDA members who looked at this able to install DNScrypt on there phone?

Do you prefer flappy bird clones over such a security enhancement?

Bump again then.
[Android Q&A, Help & Troubleshooting] Draygon:
Bump
[Android Q&A, Help & Troubleshooting] Draygon:
Another bump for all secureless xda members
[Android Q&A, Help & Troubleshooting] Draygon:
XDA members are not able to install a tar.gz package on their android phone? Aww, really guys?!
[Android Q&A, Help & Troubleshooting] Draygon:
B u m p
[Android Q&A, Help & Troubleshooting] Draygon:
Seriously, no one...?
[Android Q&A, Help & Troubleshooting] menhir:
How to install dnscrypt on android

Requirements:

rooted phone

installed busybox

some handy tools like terminal emulator or ssh daemon for testing purpose, file explorer with acces to system partition

dnscrypt: https://copy.com/M6r38z6g3iyj (thanks to GitHub esp. [MENTION=382824]daddy[/MENTION]br, KionLi...) - files for arm7

About:

We need to run dnscrypt every time phone is booted - for this purpose is necessary to add script "dnscrypt" into "init.d" directory In this script-file you can also change parameters like used resolver/provider etc.

dnscrypt-proxy is main binary file which will provide dnscrypt service for us. There is also script to start/stop dnscrypt-proxy service anytime we need and made some other usefull things for us...

How to:

check if directory "init.d" in /system/etc/ exist - if there is not such directory use program "Universal Init.d" and create it - otherwise follow bellow

extract downloaded files and put it into same directories they are, just to system partition (u can use any file browser with access to system partition, eg. Solid Explorer)

check if there is file "resolv.conf in /system/etc/ directory

​

- if there is not such file create it and put this into it "nameserver 127.0.0.1"

​

- if there is such file check if "nameserver 127.0.0.1"and delete else

all files putted in directory /system/xbin/ should have right permission to work correctly

Checking functionality:

Easiest way is to visit "www.opendns.com/welcome"

If it is working you will get something like "Your Internet is safer, faster, and smarter..."

If it is not working you will get something like "OOPS..."

Other way is to run nslookup in terminal emulator and check if you get 127.0.0.1 and name, eg "nslookup 8.8.8.8"

The hardest way is to use wireshark or tcpdump and analyze traffic while browsing on the phone..., eg. http://askubuntu.com/questions/105366/how-to-check-if-dns-is-encrypted

Also you can check if dnscrypt-proxy is running in terminal , eg. "ps w |grep dnscrypt"
[Android Q&A, Help & Troubleshooting] <dexter>:
DNS setting

Did anyone got this one to work? I did all the steps mentioned but it seems that the resolv.conf is not being checked. I even try with apps to change dns settings (dnset, dnschanger..) it just seems that the dynamic dns assigment takes precedence, it keeps going to the dynamically assigned DNS server when on wifi and LTE. Aside from that I did not have any issues, dnscrypt runs fine with all arguments. I'm trying this on a Verizon Galaxy S5.
[Android Q&A, Help & Troubleshooting] piscoo:
Yes, working here.

Had trouble with afwall though, but this post http://xdaforums.com/showpost.php?p=54263022&postcount=8 helped me.

Script i've used:

$IPTABLES -t nat -D OUTPUT -p tcp --dport 53 -j DNAT --to-destination 127.0.0.1:53 || true
$IPTABLES -t nat -D OUTPUT -p udp --dport 53 -j DNAT --to-destination 127.0.0.1:53 || true

$IPTABLES -t nat -I OUTPUT -p tcp --dport 53 -j DNAT --to-destination 127.0.0.1:53
$IPTABLES -t nat -I OUTPUT -p udp --dport 53 -j DNAT --to-destination 127.0.0.1:53

$IPTABLES -A "afwall" --destination "208.67.220.220" -j RETURN

You can restrict the last line to only UDP 443 if you want.

Confirmed packets with tcpdump, blocked UDP 53 at my router.
[Android Q&A, Help & Troubleshooting] Draygon:
Could you please write a small, complete guide for the installation of DNScrypt? I still can't get it to work. :(
[Android Q&A, Help & Troubleshooting] lamero1:
Flash this zip from recovery. It works
[Android Q&A, Help & Troubleshooting] Draygon:
Do you have any source for this?

How can I enter the IP address of the service I want to use?
[Android Q&A, Help & Troubleshooting] lamero1:
Edit /etc/init.d/dnscrypt and see here
[Android Q&A, Help & Troubleshooting] Draygon:
So you compiled DNScrypt for Android from this source at github? :)
[Android Q&A, Help & Troubleshooting] lamero1:
No. I just flashed zip file and investigated on it
[Android Q&A, Help & Troubleshooting] grodius:
Anyone flash this zip besides the guy who posted it? Can't find much reference to this file name anywhere dnscrypt-5-armv7-opendns.zip
[Android Q&A, Help & Troubleshooting] grodius:
How do you set your phones global DNS setting for any dynamic IPs on any network? I cannot figure out how to point my phone to 127.0.0.1
[Android Q&A, Help & Troubleshooting] m4ttrix:
installed but can only resolve when the apps has root permmission

Sorry, after i checked again, it's not only can resolve when has root permission. The real problem is, addresses can only be resolved using nslookup command from terminal, when i ping the address, the ping command can not get the address resolved, the same with all other application unable to resolve either. Any idea what happened? Thanks.
[Android Q&A, Help & Troubleshooting] lamero1:
The flashable .zip file contains a init.d script that, via iptables, does a transparent redirect of DNS requests

---------- Post added at 08:44 PM ---------- Previous post was at 08:39 PM ----------

Try to install busybox
[Android Q&A, Help & Troubleshooting] m4ttrix:
DNS Crypt only works on WIFI Connection

I already installed busybox. Dnscrypt only works on WIFI connection. On 3G Connection dnscrypt only works on terminal nslookup command, and flashfox browser, other than that it shows DNS lookup failed error message. Seems like localhost port 53 inaccessible on 3G connection. Any idea what's missing? Thanks.

I'm using Note3 SM-N900 4.4.2 XXUENG1 , Busybox 1.22.1, Xposed framework 2.6.1
[Android Q&A, Help & Troubleshooting] lamero1:
Please connect in 3G your phone. Via adb shell give this commands:

su
iptables -t nat -L
iptables -L

Paste the result (use nopaste service)
[Android Q&A, Help & Troubleshooting] m4ttrix:
Here's the result, a litte bit long: using no paste service "fd8c9bd52d.html" (sorry haven't reach 10post, can not post link)

Strange thing is that ONLY my flashfox browser works on this 3G connection, or maybe it has something to do with permission?
[Android Q&A, Help & Troubleshooting] lamero1:
I'm sorry I don't know, but you can try to:

Delete iptables -t nat -A OUTPUT -p udp --dport 53 -j DNAT --to-destination 127.0.0.1 from /system/etc/init.d/dnscrypt

Delete iptables -t nat -A OUTPUT -p udp --dport 53 -j DNAT --to-destination 127.0.0.1 from /system/xbin/dnscrypt

Install afwall

Read the FAQ

Build a custom script to redirect all DNS request to 127.0.0.1.
[Android Q&A, Help & Troubleshooting] m4ttrix:
Seems like a good idea, thanks you very much Bro~ , I'll try it. :cool:
[Android Q&A, Help & Troubleshooting] wrsg:
Got it working

The zip by [MENTION=235313]qwerty12[/MENTION] still doesn't flash for me but the contents of it do work when copied to the right directories (/system so you need root explorer or something similar) and set with permissions. Then set DNS to 127.0.0.1 and it should work after a reboot.

edit: compiled the new libsodium, just drop it in and it should work (/system/lib)
[Android Q&A, Help & Troubleshooting] wrsg:
New dnscrypt out, I'll compile it later if someone else doesn't beat me to it
[Android Q&A, Help & Troubleshooting] alihassani:
In order to get the dnscrypt-proxy command to run under android 5.0 I had to edit android-armv7.sh in dnscrypt to include flags for PIE.

#!/bin/sh

export CFLAGS="-Os -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -marm -march=armv7-a -fPIE"

export LDFLAGS="-fPIE -pie"

TARGET_ARCH=arm HOST_COMPILER=arm-linux-androideabi "$(dirname "$0")/android-build.sh"
[Android Q&A, Help & Troubleshooting] chelsea_fc:
Would be great if someone can post the update flashable zip for lolipop, thanks
[Android Q&A, Help & Troubleshooting] iamunitedAA:
I second this. My head hurts seeing all that code... Sorry.
[Android Q&A, Help & Troubleshooting] moffa~:
Here you go. I modified the previously uploaded zip file so it's using opendns.

If you want to change the dns resolver, just modify /system/etc/init.d/99dnscrypt

Thanks for qwerty12 and wrsg for the help in the thread

thanks for jedisct1 for maintaining the project
[Android Q&A, Help & Troubleshooting] Draygon:
Thanks so much, finally a flashable zip with works perfectly fine (with Android 5.0.2)!

I changed the dns resolver successfully.

Which verison of DNScrypt is this btw?
[Android Q&A, Help & Troubleshooting] moffa~:
Good to hear. I pulled it from github before I posted it so it's current.
[Android Q&A, Help & Troubleshooting] Draygon:
Really great, thanks a lot.

You should open a new topic with it, I think it just is getting lost here. ;)

Would you be that kind and probably update it in future? I never was able to compile it myself.
[Android Q&A, Help & Troubleshooting] moffa~:
I was thinking I should make an app for it so you can easily change your dns resolver but I've never written an app. I can keep this thread up to date. The project development isn't very active anyways.
[Android Q&A, Help & Troubleshooting] teokcmy:
Thanks! This works for my Galaxy S4 I9500, but doesn't work for my Nexus 7 (2013 wifi). On Nexus 7, the dns resolver was not set to opendns as it was supposed to. Did I miss something?
[Android Q&A, Help & Troubleshooting] Draygon:
Hello moffa,

sadly I'm having problems with your script after testing it a little bit longer (for a few days on three devices).

With AFwall enabled, following happens:

- No connection after restart when AFwall is enabled at boot, there are just exclamation marks over the WIFI and the mobile data icon

- No connection if network is changing (from mobile data do wifi and vice versa)

When AFwall is disabled, I don't have these problems.

Is there anyway to fix this?

Edit:

Sorry, I had to enable internet access for "root" at AFwall, everything is working great now.
[Android Q&A, Help & Troubleshooting] moffa~:
This is for Android (5.x)
[Android Q&A, Help & Troubleshooting] Teemoo:
I am getting "Unused dt entry" error by linker, with moffa~ 's pack. dnscrypt-proxy doesn't start. Any idea how can I solve this?

On 18/05/15 CM nightly. 5.1.1
[Android Q&A, Help & Troubleshooting] moffa~:
Where are you seeing that error?
[Android Q&A, Help & Troubleshooting] Teemoo:
On terminal, when I type ""dnscrypt enable"

Enbling dnscrypt...

Segmentation fault

Killall: dnscrypt-proxy: no process killed

WARNING: linker: dnscrypt-proxy: unused DT entry: type 0x1d arg 0x5a8

Segmentation fault

Done

I also get unable to create a socket (UDP) error in logcat by dnscrypt-proxy when I search with dnscrypt

I don't use any firewalls
[Android Q&A, Help & Troubleshooting] moffa~:
I just updated to 5.1.1 and I see the same issue. Let me try recompiling with the new android ndk
[Android Q&A, Help & Troubleshooting] moffa~:
I am still getting the warning but I don't get the segmentation fault. It does work.

Which architecture are you running it on? It's compiled for armv7a. I can compile it for other architectures if you need it.

You can find out by running 'uname -m'
[Android Q&A, Help & Troubleshooting] Teemoo:
Kernel Adiutor says it is armv7 rev 1 (v71)

uname -m says arm71

cpu's model is: msm8974pro-ac

So I belive it is armv7a?
[Android Q&A, Help & Troubleshooting] moffa~:
Same as mine. Can you try this file?
[Android Q&A, Help & Troubleshooting] Teemoo:
Same error, Could it be because I am using SE Linux in Enforcing mode?

edit: Same error while se linux is in permissive mode.
[Android Q&A, Help & Troubleshooting] moffa~:
I'm also using SELinux in Enforcing mode. I'm not too worried about the warning as it still runs. Not sure what's causing the segmentation fault.
[Android Q&A, Help & Troubleshooting] Teemoo:
I'd like to confirm that it works with cyanogenmod nightly 29/05/15, I forgot to run it as root in my first attempt. Thanks.
[Android Q&A, Help & Troubleshooting] moffa~:
If anyone is still following this thread, you can download the installable zips here: https://download.dnscrypt.org/dnscrypt-proxy/

To change the resolver you are using, edit the /system/etc/init.d/99dnscrypt file and change the line RESOLVER_NAME=dnscrypt.org-fr to the resolver in /system/etc/dnscrypt-proxy/dnscrypt-resolvers.csv
[Android Q&A, Help & Troubleshooting] smartymcfly:
I installed zip and tried to change the resolver to okturtles in the init.d script but it is not starting on it's own so I tried manually

Am I missing something?
[Android Q&A, Help & Troubleshooting] moffa~:
Are you using the correct dnscrypt file? Since I have an armv7a phone, I use dnscrypt-proxy-android-armv7-a-1.6.0.zip.

Instead of running dnscrypt-proxy -R okturtles, edit and then run /etc/init.d/99dnscrypt line so it looks like:

#!/system/bin/sh
RESOLVER_NAME=okturtles

So basically you run:

su
./etc/init.d/99dnscrypt

but I would just ensure you are using a kernel that supports init.d or install a package that adds it (like Universal Init.d)
[Android Q&A, Help & Troubleshooting] imreborbely:
s3 neo single

Gud joob work thx??yuar best
[Android Q&A, Help & Troubleshooting] zombiegoaste:
Quick question, do I understand correctly that it *has* to run as root and that there's no way to run it as a less privileged user ?

If so, a quick iptables question:

Whenever I allow root connections unrestricted

iptables -A OUTPUT -p udp -m owner --uid-owner 0 -j ACCEPT

iptables -A OUTPUT -p tcp -m owner --uid-owner 0 -j ACCEPT

DNSCrypt appears to work (using ipleak.net to detect what DNS is used)

however, whenever I try to restrict it by port

iptables -A OUTPUT -p udp --dport 443 -m owner --uid-owner 0 -j ACCEPT

iptables -A OUTPUT -p tcp --dport 443 -m owner --uid-owner 0 -j ACCEPT

or by destination (using OKTurtles IP here)

23.226.227.93

iptables -A OUTPUT -p udp -d 23.226.227.93 -m owner --uid-owner 0 -j ACCEPT

iptables -A OUTPUT -p tcp -d 23.226.227.93 -m owner --uid-owner 0 -j ACCEPT

the connection fails for some obscure reason.

Any ideas as to why ?
[Android Q&A, Help & Troubleshooting] moffa~:
I was looking at a tcpdump of the traffic and there is some traffic out to your dnsresolver, but there is also port traffic on the local and wan ip side. I'm not sure what your exact firewall configuration is but if you add a log and drop rule at the end of your table hopefully you can see where it's being dropped.
[Android Q&A, Help & Troubleshooting] dragoriano:
Android x86 version

Hi moffa, could you compile x86 version for me? It'd be great if you could :D
[Android Q&A, Help & Troubleshooting] moffa~:
Sorry I've been a little busy here you go. I haven't been able to test it though.

I'm also including a armv7 one as well.
[Android Q&A, Help & Troubleshooting] dragoriano:
It works! Wow Thank you Moffa :highfive:
[Android Q&A, Help & Troubleshooting] cantenna:
Hi Mafa, you seem to be a good guy to ask about this stuff, i have been using dnscrypt for about a month now, opendns welcome test page has been showing a check mark but as of yesterday on all of my android devices i am unable to retrieve certs from dnscrypt.org-fr. It seems to be the sames for all servers that offer "DNSSEC validation" I can retrieve certs from other resolvers but upon visiting the opendns test welcome page i am now presented with opps you are not conected. However dnsleaktest.com verifies i am connected to the resolver, do you have any insight as to whats going on here? Are you or any other users having difficulties as of late as well with connections? Would like to know if this is a problem with my configuration.

Also, can you help me with how I can test if my dns enquirers are encrypted on android? Before I would just visit opendns test website and look for the check mark but is this the best test?

Update: earlier today i was able to retrieve certs again from dnscrypt.org-fr guess there was a problem with the servers??

I also tried dnsmachine.net-de briefly on a few devices, terminal reported all was okay,certs downloaded okay, etc but internet didn't work at all. I guess some servers experience issues from time to time? Do you have any insight on this?

I am really stumped as to how to confirm service is actually working. I tried wireshark and following instructions here but it doesn't report the same at all

http://askubuntu.com/questions/105366/how-to-check-if-dns-is-encrypted
[Android Q&A, Help & Troubleshooting] moffa~:
Over the past few weeks I've also been having problems with dnscrypt.org-fr as well as dnscrypt.eu-dk and dnscrypt.eu-nl. I can't seem to figure out how to properly change the DNS servers on an Android device (it keeps changing) which is why the iptables redirect is there. Unfortunately, when a server goes down you don't have a backup - this is normally why you have 2-3 DNS servers loaded.

I'm not sure what the issue with dnsmachine.net-de so I can't really comment. How are you changing the servers? Disabling dnscrypt and then editing the init file and then starting it again? Or are you just running the one-liner?

Usually to confirm it's working I use tcpdump on my device and then analyze the packets on my computer. I'll test it out now and post my results.

-----

Weird. Even with the iptables redirect I'm still seeing a lot of traffic going to my carrier's DNS and unencrypted packets sent to their DNS server. Guess the workaround really isn't working. I'll have to figure out how I can make the DNS server really change - although I don't think it's possible.

I think only web browser dns requests are going through dnscrypt. I'll have to look into it more over the weekend.
[Android Q&A, Help & Troubleshooting] cantenna:
https://play.google.com/store/apps/details?id=net.mx17.overridedns

works very well for me, I have the paid version.

thanks for the info

cheers
[Android Q&A, Help & Troubleshooting] smartymcfly:
You might want to try dnsqache. The developer said he was working on possibly implementing dnscrypt in the future. Anyways this is the only app that allows me to change DNS and it does not allow my ISP to somehow force change it back by resetting the radio or connection to the tower or whatever it is they do that makes any DNS changes only last for a few MI Ute's or until I power the screen off to revert.

http://xdaforums.com/showthread.php?t=2575894
[Android Q&A, Help & Troubleshooting] SandroBSupp:
Drony with DNScrypt

Hi,

Just looking if it would be possible to use it in Drony.

With VPN mode Drony intercepts all flow, also dns requests. So far just forwards to valid dns and wait for response.

But it could use DNSCrypto, even over proxy with authentication. Can anyone give me some clues how to start with integration in Drony?

Is it even possible to do it?
[Android Q&A, Help & Troubleshooting] owshtin:
I like the "bumps"

lol :laugh: thanks for posting!
[Android Q&A, Help & Troubleshooting] Flopik2:
Is anyone try dnscrypt with systemless root on nexys 6p ? I flash it using twrp and enable it in universal init.d , set my local dns to 127.0.0.1 but doesnt seem to work
[Android Q&A, Help & Troubleshooting] M66B:
With NetGuard you can now use DNScrypt without rooting.

Just run DNScrypt from /data/local/tmp and forward port 53 to DNScrypt.

See here for some more details (replace /system/xbin by /data/local/tmp).

The latest beta versions of NetGuard include a UI to forward ports to make things easier (accessible from the settings).

Edit: there is no need anymore to set an IPv4 DNS server, since the latest NetGuard versions can forward IPv4 traffic to an IPv6 address (or the other way around) too.
[Android Q&A, Help & Troubleshooting] aschere:
Freshly compiled AArch64 flashable zips here.
[Android Q&A, Help & Troubleshooting] TRS-80:
Have several thumbs up, friend, for being the lone voice in the wilderness on this issue initially. And you just kept banging that drum... LOL I love it!
[Android Q&A, Help & Troubleshooting] tofu:
Someone mentioned here that dnscrypt works with afwall if you enable network for "root". Isn't this rather insecure? All the apps running as root are accessing whatever they like? Does it include android system and apps baked deep into system as well?
[Android Q&A, Help & Troubleshooting] SandroBSupp:
You can use it without root in Drony app.
[Android Q&A, Help & Troubleshooting] tofu:
dnscrypt + afwall + orbot

Delete
[Android Q&A, Help & Troubleshooting] mark.dx:
how the things work which method should I use for android marshmallow, already tried tutorial from the dnscrypt but it seems the dns still using default
[Android Q&A, Help & Troubleshooting] j-hans:
Hi guys,

Is there any version that i can install on my android x64?

I have been looking for it for 2 days.
[Android Q&A, Help & Troubleshooting] JLowe:
After a reconnection from mobile network the DNS-Server will be overwritten.

How can you you reset the DNS-Server to localhost again but automatic?

like setprop net.dns1 127.0.0.1 in terminal

Script?Afwall+?
[Android Q&A, Help & Troubleshooting] cipley:
Hi,

After meddling with tons of method from the internet,

finally

I managed to install and use DNSCrypt on my OnePlus 3...yay

After this I'm planning to install it on my Nexus also and see how it goes.

It does involves enabling init.d support and quite a lot of shelling, but hey it works now.
[Android Q&A, Help & Troubleshooting] Qbraham:
What steps have you taken to achieve this and in what version of Android, my friend?