New on LowEndTalk? Please Register and read our Community Rules.
All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.
Comments
Yes, Windows Server 2003 comes with DNS services.
It has a GUI.
Install hestiacp or so and it can do it for you with a gui/users
Why bother?
Just sign up for Cloudflare free plan.
The performance will probably be worse than several free services such as Cloudflare and he.net anyways, but I have used aaPanel in the past and their DNS server app works fine
powerdns with mysql+web interfaces
power dns with power dns admin
https://github.com/PowerDNS-Admin/PowerDNS-Admin
Why bother about control panels? if you are an admin, spin up a lamp with bind9 config within 3 minutes.
Well you can use Webmin @melp57
You do need to know how BIND works though to set it up correctly, but otherwise it works.
@alento / @niceboy - Can you recommend a BIND9 tutorial? Would be nice to mess around with it.
Heh, the best tutorial is being thrown in the dungeon and having to figure it out @MrLime so no, I'm afraid I can't offer one.
Come to think of it though, I think that Digital Ocean had a decent guide....
Thanks everyone. I need a good guide to spin up apache2 and bind9
Way too complicated
I have ISPConfig with 2 small slave DNS-servers. ISPConfig master server is NS1 and another ones are NS2&NS3. Slave servers are small, cheap 512M VPS. ISPConfig master shoud be 1024M, if you don't use/install mail spamfilter and antivirus. 2048M with emai/spamfilter/antivirus. There is guides at howtoforge.com and even automatic install script. Easy to use and works stable. Why not server CP, it's opensource...
+1 This is what I use. PowerDNS is great and PowerDNS-Admin is pretty good too.
For years I used BuyVM's anycast to have DNS servers in three locations (Las Vegas, New York and Luxembourg), and two VPSes in Australia for domains that receive >90% of their traffic from Australia. I recently started moving to DNSMadeEasy with my server as a "hidden master" for some of my domains.
I like running the primary server myself as it makes it very easy to perform some actions like bulk find/replace across all zones. When migrating away from one server, I can easily search across all my zones to see which ones still reference its IP. I don't think services like Cloudflare and HE.NET have this functionality, whereas searching across all zones is built-in to the PowerDNS-Admin UI, and with bind zone files you can just
grep
them.This. It may sound like the complex option to some but it's worth it.
@jar @Daniel15 what backend you guys using with powerdns? MySQL w/ replication?
Originally I used MySQL with native replication, but these days I'm using MySQL on the primary and SQLite on the secondaries, using regular NOTIFY + AXFR to sync changes. SQLite ended up using a lot less RAM (meaning the low-RAM secondaries had more breathing room), wasn't any slower (SQLite is an amazing, fast piece of software), and spinning up new secondaries is easy: Just rsync the
.db
file across to the new server, and rsync the config or deploy it via Ansible. I got sick of having to go through a step-by-step process for setting up a new MySQL replica.Yeah just MySQL here.
What kind of setup would you recommend for a small web hosting comapny?
If you've got decent secondary servers (1GB+ RAM) then PowerDNS with MySQL replication works very well. The changes are replicated pretty much instantly across all the secondary servers. Just make sure you have monitoring + alerting on the replication so you know if it breaks (netdata works very well for this).
If you've got secondaries with low RAM then I'd use PowerDNS with SQLite on those.
I'd recommend using PowerDNS on all servers so you can take advantage of its unique features (like Lua records for GeoIP and automatic failover).
FYI a dns server barely takes ram, the way they work has been basically untouched on the last few decades and you don't really need much ram for that
And taking into account that DNS records have a TTL(add in whatever policy your software uses to cache dns records), you can safely assume you are not getting any performance benefits by getting talking to a closer dns besides the initial request.
Which basically means 10-80ms the first time you access that site every 2 which seems to be the average TTL for dns records.
Take any 64mb ram vps, add 2000 records and you'll notice it's exactly as fast as the one with 1gb ram.
Most dns server can do 10k+ RPS on today's hardware, don't invest too much in this (random source on #s: https://github.com/primitybio/bindns)
The DO guides should be enough.
But, if you are completely new, better try keyhelp/ispconfig/hestiacp.
More RAM gives you more room for caching though. PowerDNS has a packet cache which makes responses even faster.
64MB RAM might be a bit of a stretch, but I think PowerDNS + SQLite doesn't need much RAM and would be fine on 128MB, although I run mine on 512MB minimum since servers with <512MB RAM aren't as common these days.
It's useful to have DNS servers close to the majority of your users though, as it makes things just that bit faster.
I'm self-hosting a few DNS servers in Australia for sites that have mostly Australian users... HE.NET doesn't have any nodes in Australia (DNS requests to them from Australia go to Los Angeles) and Cloudflare's network isn't the best in Australia either. DNSMadeEasy is great everywhere in the world (including in Australia) but it's expensive.
I run knotd for a domain(most are with CF), i don't use database
Knot DNS and NSD here. No database, just straight zone files.
It doesn't do it besides the initial request to that domain bro, after that it's 100% irrelevant.
Even if you use a dns server with 5000ms response times, after the first response you go back to normal speed, getting a dns server closer to you, will not make the site faster or lower your latency.
Before coming to a conclusion, why don't you open up top, and check how much ram it actually uses.
Why would you think the process it self might even take more than 10mb ram to respond with a string that could be smaller than a kilobyte?
I know pdns on 128mb w/ > 1000 records doesn't cap/bottleneck that server.
You don't even notice cache effects unless you got real load. And that's in the thousands of RPS >.>
Why would the program even use even one megabyte in ram to store a dns record?
Sqlite typically will not run a process, and it takes nearly no ram, that's the point, heck, the debian package is not even 3mb installed and 90% of those 3mb are:
/usr/share/doc/sqlite3/changelog.Debian.gz
/usr/share/doc/sqlite3/changelog.gz
/usr/share/doc/sqlite3/changelog.html.gz
/usr/share/doc/sqlite3/copyright
/usr/share/man/man1/sqlite3.1.gz
Not even the library it self!
Guess i'd have to benchmark a those calls.
Be logical dood
PowerDNS + PowerDNS-Admin
tinydns is very slim and close to no resource utilization. Ran it for many years on a cluster of RPis and cheap VPS.