Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

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 have some embedded network devices that allow me to specify whether or not they use DHCP. Unfortunately, we have some clients that have less than stellar DNS servers in their networks and have caused routing issues with these devices.

My solution was to override the DHCP supplied DNS server and to specify a third party, outside DNS (OpenDNS or Google Public DNS). Unfortunately, when the device is using a DHCP supplied dynamic IP address, it ignores the specified client DNS address. I can do this on a Windows box without problems.

Is ignoring the client specified DNS for a DHCP supplied dynamic IP address against spec? I'm trying to determine if the firmware mfg is at fault on these custom devices for ignoring specified DNS.

share|improve this question
up vote 4 down vote accepted

No, there's no standard that specifies this behavior. The DHCP standard(s) specify a mechanism for giving a list of DNS servers to the client, but not what the client should do with that list. DNS standards specify a protocol for communicating with a server (and for finding the authoritative server) but not for choosing a default server. I don't think POSIX specifies how the default server is chosen either (you can not only have local DNS configuration and servers from DHCP, but you can have different lists of DNS servers from different DHCP connections, including VPN connections, as well as from PPP, etc), and even if POSIX did, there's no requirement that all devices support POSIX.

So it sounds like you need to contact the manufacturer with a feature request, not a bug report.

share|improve this answer

Do you have control over the DHCP server? Is it possible to identify these units by some sort of MAC prefix and supply them with a specific DNS setting? I know that ISC-DHCPD has a feature whereby you can identify units and treat them differently (i.e IP range, DHCP options, etc).

A simple example in a dhcpd.conf file might look like:

class "embedded" {
    match if substring(hardware,1,3) = XX:XX:XX;

pool {
    allow members of "embedded";
    ... other options here ...

This would allow you to specify these units with a different DNS server without having to get a firmware / software fix. I don't know if Microsoft's DHCP server has any similar sort of capability (if that's what you're using), or if you even have access to the DHCP server in this capacity, but something like this might be an option..

share|improve this answer
This is a great idea, unfortunately I don't have access to the DNS servers at the clients' sites to make the necessary changes or to even insist they make the changes. Thanks for the additional info, but Ben's response answered my question. – Todd Brooks Dec 9 '09 at 4:41

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.