Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I need to change my firewall/router, and I'd prefer something with built-in DNS to resolve queries on the local subnets. I've got a mixed Linux/Windows system, often with only one computer turned on, and I frequently have problems resolving local names. I don't want to keep a Linux box permanently on just for DNS, and I'd prefer to have DNS in my router appliance, which is always on.

I search Google for this occasionally but never find anything. You always get the obvious answers - it's not possible, put everything in /etc/hosts, NetBIOS, dedicated box, etc. So what am I missing? Why don't "cheap" routers let you do this? I'm pretty sure that Cisco kit does this. Almost all cheap routers will let you do MAC address reservation, to let them assign static IP addresses for DHCP. So why can't they simply do DNS as well for everything on the local subnets, just passing through remote domains to the ISP?

share|improve this question

migrated from Jul 18 '11 at 11:57

This question came from our site for professional and enthusiast programmers.

Get a Linksys WRT54GL for around 50$, install OpenWRT firmware on it and you'll have a DNS server that resolves local names. But still pretty much offtopic on stackoverflow... – fvu Jul 18 '11 at 11:56
Don't forget the other classics, DD-WRT and Tomato! – Darth Android Jul 18 '11 at 14:06

Most routers can't even proxy DNS properly, let alone act as a proper DNS server. See RFC 5625.

Try and find one that uses the popular dnsmasq software internally, which means it'll be one with a Linux kernel too.

Ob. Disclaimer - I wrote that RFC.

share|improve this answer

using a flashable router like the WRT* family from Linksys, you can install OpenWRT or Tomato; theses two firmwares should give you access to a wide range of tools.

The list of supported devices for OpenWrt may open other options; perhaps you can recycle an older router from the list.

share|improve this answer

I'd suspect that the use case for cheaper router manufactures is that the only thing you do is connect to the outside internet. Why would you want to communicate between devices on the home network?

The correct thing for them to do is to automatically add the DNS entry when it does DHCP, and, when the DHCP lease expires and is not renewed then remove the DNS entry.

You can do this with OpenWRT. You can also setup your own dhcp/dns server and use that for DHCP rather than the cheap router.

share|improve this answer

"Mom and Pop Ltd." don't need such stuff.

As you noticed, Cisco stuff can do it, but it cost an order more than SOHO hardware. Not only it makes people buy more expensive hardware it also decreases number of support calls ("after i put facebook on router with my IP, I can't check my status, that's outrageous!")

You can either use already suggested OpenWRT supported routers or buy vyatta based router (or re purpose an old PC).

share|improve this answer

As others have mentioned, there is a "how" with custom firmware, and the "why" is Cisco doesn't want small businesses which require that feature to skip over some of their lower end enterprise routers. It's all about "you get what you pay for". For a small company with 5 employees, but needs DNS, it would be a good $50 solution. Too cheap for Cisco, and considering that most home users don't need DNS, why put it there?

In addition, it's likely that the devices tend to be underpowered for those purposes. Home routers really don't have the horsepower to do NAT; DHCP; and DNS at the same time. While I am sure it's possible by installing custom firmware, it might not perform as desired.

share|improve this answer
providing DHCP and DNS is easier on the CPU than tracking 10k connections from bittorrent client. – Hubert Kario Jul 18 '11 at 12:06

This is one of the reasons I bought a Guruplug and turned it into a Linux-based router with bind installed for DNS.

DNS is a bit technical and most consumer-level router/switch combinations seek to be easy to use for the average, non-technical user. It's bad enough trying to explain to those who know nothing about networking what a MAC address is, or how DHCP works. It also introduces one more thing that can go wrong or be misconfigured and be the source of product returns or support calls.

share|improve this answer

You must log in to answer this question.

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