I have a very simple problem: when I run Wifi Tether on my Galaxy S3 the computer won't get the IP address unless I disable DroidWall firewall.

DW runs in whitelist mode, but I ran across its menu to enable all wireless related applications it found. Nothing. I have to stop it at all to make DHCP server work.

What application in Android 4.1, or at least in the stock GS3 ROM, governs DHCP in wireless tethering and should be enabled with DroidWall?

Or else, how do I find it out without try-and-fail across a large number of applications.

5 Answers 5


As of version 1.2.5, tethering has been included in AFWall+, you should only need to enable

  • (Tethering) - DHCP+DNS services

I had the same problem with wifi tethering after I installed Droidwall. Though the wifi connection was successful but I got no internet access.

I got it working simply by adding the DNS in my laptop. Hope, it works for you or anyone facing the same problem.

Change/Add DNS and in your PC/Laptop. That's it.

  • This worked for me too, using NoRoot Firewall. Thanks :-)
    – user158684
    Mar 30, 2016 at 5:17
  • Thank you this works for me as well using NoRoot Firewall. Could you please provide more info as to why you chose to use those settings?
    – Mario Awad
    Jul 12, 2017 at 9:27

It is normal to disable Droidwall, for the reason that it blocks any incoming packets for port 67, to allow Wifi Tethering to work. Or quite simply, allow a custom script that matches the port number 67 which is dhcp to pass through.

FYI about Droidwall - the functionality and development efforts have been discontinued and the author sold it off to Avast.

The fork of Droidwall is called AFWall+ which can be found here and found on Google Play which is apparently better than the old Droidwall.


Since Wifi-Tether operates on both TCP/UDP's port number 67 (for dhcp to work), here's the rules necessary:

$IPTABLES -A "droidwall-wifi" -p TCP --destination-port 67 -j RETURN
$IPTABLES -A "droidwall-wifi" -p UDP --destination-port 67 -j RETURN

This rule here enables adbWireless to work with DroidWall enabled.

$IPTABLES -A "droidwall-wifi" --destination "" --destination-port 5555 -j RETURN

You also have to enable Wi-Fi access for "Apps running as root" for this to work.

  • Thanks for the 'bought by avast' info. Missed that, although it's already a year...
    – ce4
    Jan 12, 2013 at 19:32
  • Since I'm currently fine with DW, the question comes quickly: does AFWall+ allow DHCP without hacky scripts? By the way, since I'm not familiar with iptables scripting may I have the code for the port-67-allowing script? Jan 13, 2013 at 12:24
  • Trying to guess: "$IPTABLES -A "droidwall" --destination-port 67 -j RETURN". Is it correct? Jan 13, 2013 at 12:27
  • @djechelon: I will try out that shortly, am not 100% sure, but it does seem to be legit to me... :)
    – t0mm13b
    Jan 13, 2013 at 14:39
  • Both script and flagging applications running as root fixed. I'm pretty unsure because AFAIK system apps are all root apps and Samsung preloads lots of unwanted bloatware on device, software that I wouldn't want to "phone home" often. These include Game Hub and Samsung Apps Jan 13, 2013 at 19:49

In my case allowing user id 9999 (nobody) to connect through WiFi fixed the problem. So I added this line as a custom script to DroidWall:

$IPTABLES -A droidwall-wifi -j RETURN -m owner --uid-owner 9999

This solution should work for all firewalls, on root or no root. Initially I tried both kinds of devices and neither worked and after I found this info both worked. So I'm fairly sure this will work for you. To make it into a complete answer, as I'm sure it would be unclear how/where to change DNS for most users. Basically no change is done on the app side, just on the PC.

I used NoRoot Firewall (on unrooted device) and USB tethering wasn't working. I also used a rooted device running AFWall+ and though it has specific setting for "(tethering) - DHCP+DNS services" enabling it didn't make tethering work. So in the end I disabled it. In fact I tried only enabling Chrome browser on it, and none of the other things, and with this solution tethering still worked.

Having the phone connected and tethered, Go to Control Panel\Network and Internet\Network and Sharing Center, and click on the Local Area connection "Connections:" screenshot

On the next screen select Properties, then highlight "Internet Protocol Version 4" and press properties below.

Now in the lower portion you see Preferred and Alternative DNS server boxes. Enter and there (thanks @michaelsangma)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .