Redirect router to a local dnsmasq


Hello everyone,

First, I want to clarify two things: that I love the pihole project, and that I’m about to ask a question similar to some existing topics, but not clarified by them. My intent here is not to undermine the project, or assess if it is the better option, but rather to understand how its successes could be utilized for a user’s task.

Tl;dr, I have had a local dnsmasq server on an existing home computer. I can, to no avail, point my DD-WRT to that computer for a local dns server. With pi-hole, however, it works exactly as expected. So, optimistic, I went digging for the configuration to try mimicking it on my other system, but nothing seems to be working. I’m pasting my /etc/dnsmasq.conf in hopes that someone can help me with this question that has plagued me for quite some time.

Thank you!


# Listen to localhost and the OpenVPN tun0.  
# necessary for OpenVPN

# Ad/Tracker Blacklist

# Don't use the /etc/resolv.conf file (cues from pihole, only uses localhost)
# Specify DNS Servers (OpenDNS)


On the listen-address line make sure you have dnsmasq listen on the interface the router is trying to use. Also make sure you have port 53 open on that interface.


Thank you for the response. I had tried adding the private IP (192.168.0.x) to listen-address before, to no avail, but since I didn’t think to open port 53 with iptables on that computer, and I assume pihole does during its setup. I’ll give this a whirl when I get home.


mcat, you are my dawg. After re-adding the private ip to dnsmasq.conf, all I had to do was open port 53 on iptables, so I added to rc.local and everything works as expected. This was aggravating me, but the simplest solutions work wonders. Let me buy you a beer sometime.

# For using this dnsmasq server on the LAN, open port 53
iptables -I INPUT -p udp -m udp --dport 53 -j ACCEPT
iptables -I OUTPUT -p udp -m udp --sport 53 -j ACCEPT