I feel that I may be making a mistake in my plans to host my own DNS for a domain I own.

I want devices within the private network to all have subdomains to my main domain, e.g. laptop.example.com, and I also want to serve a bunch of SRV to dedirect some subdomains to specific ports.

At the moment, I am using dynamic DNS and set my nameservers for the domain name to my pi server running pi-hole. I assume when I finish adding records to dnsmasq or setting up bind that I will be able to serve to my dns, but I am not 100% sure how to go about this.

Is it better to try and add records to dnsmasq or to install bind? Looking for any input here.

  • What is the question you are asking? Is it "pi-hole acting as nameserver for a domain?" or "Is it better to try and add records to dnsmasq or to install bind?"
    – Ingo
    Commented Jan 15, 2019 at 13:29
  • @Ingo Is there any problem with pi-chole acting as a nameserver for a domain, and can it do it with dnsmasq which is included, or does it need bind. Commented Jan 15, 2019 at 15:39

2 Answers 2


I'm assuming that you bought domain and you are considering where and how set up authoritative DNS servers for it and its delegations.

Answer: Use reliable provider and forget about creating delegations for your subdomains there. Set up another DNS server on your network (bind is a decent choice) where you would create all your subdomains and reverse zones. Make all your private network hosts use your internal DNS server and allow them to make recursive queries.

Rationale: Delegating domains on public internet to non routable or non accessible addresses is not elegant at best. Think of all internet hosts accessing those records and getting back nonsense (addresses that in their network point to their machines). It's possible that providers wont let you do any of that.

Only your private network is interested in subdomains so make them visible only there.

If you choose bind you can even use views to present different version of your domain to your network and rest of internet. This would allow you to host internet domain and have subdomains visible only internally. In my experience though, running own DNS server to host your domain is not practical for private (non business) use.


I have never used pi-hole so I cannot say much about it. But as far as I know it is made to replace any other local DNS server to block all blacklisted DNS requests. If possible I would use pi-hole for local domain requests. If not possible and you want to blacklist DNS with pi-hole you have to use a second DNS server. This make things more complex by chaining DNS requests. But then I would use bind. Indeed it's a heavyweight but you have most possibilities with it. Or you make blacklisting only with bind.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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