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

Is it possible to setu bind9 as a caching server, but for specific domains to use one zone master and for the nonspecified to use another zone master?

Our setup:

Inhouse there is a DNS-server, which is used for our different email-domains, and the rest is cached. That's done. But these DNS-servers use certain utilities, which we need to workaround, when trying to get the IP's for the domains out there in the world.

We need:

Another set of caching DNS-servers (bind9) that cache from our internal DNS-servers, when fetching IP's from our internal domains, but cache from another external zone master, when trying to hit the domains all over the world.

Hope it makes sence, we really need this for our server-setup.

share|improve this question
In regard to your last sentence: No, not really. My first reaction was "Huh?" and my second was "Why make things so unnecessarily complicated?" (if I understand even part of what you're asking). – John Gardeniers Oct 13 '11 at 11:19
@JohnGardeniers The inhouse DNS-servers are for every user in the house. This is restricted for some domains using a service that blacklists domains, and give another IP. The service is called SecureDNS, I don't know if it's generally know... My servers are using the same DNS-servers (which I do not control), and this means that i.e. some emails can't be sent, and we have to workaround the domains that this service maeks as "bad". That's why I'd like to make internal lookups from the internal DNS-server (to get internal IP's) but external lookups somewhere else, to get around SecureDNS. – Smet Oct 13 '11 at 11:47
up vote 1 down vote accepted

I have an old version of BIND set up to do exactly this. I use the following config snippets (although it's up to you to work out how/if they fit into your own setup):

options {
        forward only;
        forwarders {;;;; };

zone "internal.domain" {
        type forward;
        forward only;
        forwarders {;;; };

Any query which is for blah.internal.domain will get forwarded to your internal DNS servers (with the filtering), any query for blah.external.domain will get forwarded elsewhere (OpenDNS and Google in that example). I use this system successfully here, anything for our company domain goes to our own DNS servers so that we can look up SRV records for Active Directory, any non-company traffic goes out to OpenDNS. Maybe this is of help?

share|improve this answer

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.