So I have 100+ websites I manage for various clients, and it is a pain for me to login to their hosting or domain registrar accounts to manage their DNS.
Is there a simple solution, where I can turn on my own server that manages DNS? So for every domain I manage, I simply set a DNS once as ns1…com, and from thereon I can just manage their DNS configurations?
If you’re getting paid to manage these sites you should not selfhost their dns. Use a real dns provider like cloudflare.
I run coredns.io these days. Simple, many plug-ins available, can handle split brain, etc.
(Personally I just make a change in git and it auto updates my dns boxes)
Bind, powerdns, dnsmasq… You COULD do it with windows DNS server or even something like a mikrotik router…
AWS has route53… but depending on your clients someone would be paying money…
Id probably look for someone like digitalocean or cloudflare that has an API and use that… DNS is pretty simple… Until it’s not.
Yes. Bind DNS is the perfect candidate for that because it supports DNSSEC and everything in between. For DNS NS you need at least two static IPv4 addresses if you want to host it yourself.
I use Technitium DNS for all my DHCP/DNS/Ad Blocking.
I tired it with about 400 domains and so far it is looking good but it needs a lot more work; someone will have to write a serious command line tool as we all know that GUI tools are good for a few clicks here and there but serious work needs a terminal.
Yes there are a number of solutions out there including running your own bind server. But that is probably a little more difficult than what you might actually want which is just to consolidate their name servers down to one centralized place. Another comment mentioned one, clouddns is another that does this, maybe slightly differently?
Why not just use Cloudflare? Redirect client nameservers to them. Also you can pay them if you ever need prioritized support. Free plan is solid usually.
DNS is scary to selfhost.
CloudFlare is a quality DNS host with a solid control panel for managing your zones. However I will say that granting access to the domain owner or their other tech people is a giant hassle on CloudFlare.
Can you make an example why selfhostig DNS is scary?
Externally. Why not take use of the good options out there and make it easier for yourself?
That’s not an example. Can you please make a technical example, thanks.
Basically letting Cloudflare take ownership over DNS. So much better then logging into x amount of different domain registrars web management panels. Its not really directly comparing to your BIND solution. But a lot better then what he/she currently struggles with.
DNS and e-mail are really, honestly, truly easy to self-host.
I don’t understand this sub sometimes. You are very right.
This sub’s aversion to hosting email (and now DNS) is bizarre.
Powerdns and powerdnsadmin works well. Do keep in mind you are assuming responsibility for keeping that server up, if it fails your domains could be impacted (depending on how secondary servers are set up)
Cloudflare is a solid solution. Better than hosting yourself IMO
This is the way
no it’s dnscontrol the dns way. sir
This, and manage it with Terraform.
Since you’re managing clients’ DNS, you don’t really want to self host it.
Take a look at OctoDNS: https://github.com/octodns/octodns
Yaml config for DNS, and it just interacts with all the providers your clients want to work with while letting you have everything in one place managed via IaC.
DNS is a must for self-hosting!
I like powerdns for an authoritative server.
I use Cloudflare. I just have the users add the Cloudflare nameservers to their domain. Once all is done, I can make DNS changes while the customer continues to pay for the domain using their preferred registrar.
I use three instances of CoreDNS (one main and two others) at three different providers. Setup is relatively easy and I manage all DNS zone files, keys for DNSsec with Git.
I use PowerDNS and PowerAdmin. Supports pretty much everything (including BIND backend), has an API, and you can store the DNS records in a SQL database.
dnscontrol it via git actions and u will never go to gui :)