From iDroid Project

Jump to: navigation, search



  • DNS fix is used for those people who can connect to WiFi but cannot browse internet sites (despite having Internet).
  • This fix is included in MoJo 1.0+. If you are using any MoJo release, you do not need to read this guide. If you are not using MoJo, then upgrade to MoJo as in the Installation Guide or read on.

Warnings and Prerequisites

  1. You must have ADB installed. If you don't know what ADB is, read this before proceeding
  2. You need Root Access. Follow this tutorial.



  • Connect to android:
 adb shell
  • Add dns:
 setprop net.dns1

(That's a one, not the letter "l".)

  • If you want, add another:
 setprop net.dns2 x.x.x.x


  • Boot into iDroid - Connect via ADB
adb connect xxx.xxx.xxx.xxx:5555
adb pull /init.rc .
  • Edit this file preferably with a terminal editor (nano, joe, vi, mcedit)
  • Add above the lines (around line 249)...
# Define TCP buffer sizes for various networks
#   ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
  • ...the following:
setprop net.dns1
setprop net.dns2
  • Connect to device and use ADB shell
adb shell
  • Remount / partition as read-write
mount -o remount,rw /dev/root /
  • Send the modified file to the device
adb push init.rc /
  • Be sure to check if the file is there(somehow it wasn't sent over one time I edited it)
adb shell
ls -l /init.rc
cat /init.rc    # Check to see it the lines you aded are there

Additionally, you can substitute with the IP of another public DNS server or the IP of your local router (although this may change.) A good place for DNS is to check either the topbits list or OpenDNS.

  • DNS lookup order follows
  1. system/etc/hosts lookup
  2. system_property [net.eth0.dns1]
  • system_property is provided android init process using unix domain socket @property_service
  • You should run "init" process for network management.
  • You should set up DNS 'net.eth0.dns1' using "/system/bin/setprop", "/etc/default.prop", "/data/local.prob"