Slashdot Log In
Best DNS Service With API Access?
Posted by
samzenpus
on Wed Sep 24, 2008 08:53 PM
from the free-advice dept.
from the free-advice dept.
netaustin writes "My company runs quite a few media websites, mostly on Drupal, and about half on ec2. We have a good server setup with ec2 which allows us to route requests through Pound, a cluster of Varnish servers, then a cluster of Apache servers. We manage 50 domains (one per state) like this. Problem is, anytime things change, we have to manually adjust DNS for all 50 states, which is very boring and usually causes negative side effects too as we can't ever adjust all 50 DNS entries at once. We'd like to just change DNS providers and be done with it, but there are a lot of options, and I don't often shop for DNS services. I use EveryDNS for my personal domains, but I don't think they provide an API and it'd feel a little dishonest to reverse engineer the forms on their site since they're an esteemed donations-based service. I wouldn't feel bad about doing that to DNSPark, but they have a CAPTCHA image accompanying their login form, so goodbye DNSPark. I found a couple services that seem to do what I'm looking for, but they both feel a bit Microsoft-y and since I only want to change once, I want to get this right. Advice?"
Related Stories
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
DynDNS (Score:5, Informative)
DynDNS.
That was easy.
Re:DynDNS (Score:5, Informative)
This [dyndns.com] seems like an appropriate link.
Parent
Re:DynDNS (Score:5, Informative)
DynDNS also offers another service, more business class. It has a MUCH more robust API, offers Failover, Load Balancing, Anycast, etc. Multiple users, node-based permissions. 37Signals, Mozilla, and RackSpace use Dynect. Highly recommended, give them a call!
http://dynect.com/technology/developers.html [dynect.com]
http://dynect.com/features/api.html [dynect.com]
Parent
Re:DynDNS (Score:5, Informative)
This should be emphasized. DynDNS is both reliable and ethical, and have been for a long time. Indeed, since before they went commercial. When they were non-com, you could get unlimited custom DNS services for a $30 donation. Guess what? When they went commercial they honored that pledge. I still have a number of "never expires" services because of this.
Seriously, it's not worth dicking around with DNS. Get it done right the first time.
Parent
Re:DynDNS (Score:4, Interesting)
Actually I have had two accounts 'vanished' by DynDNS now and would never use them again, including one that has been with them for about 8 years first using their dyndns service and more lately (over the last few years) using their staticdns service. Both appear to have been clobbered by their 'stuff must get updated at least every 30 days' policy [1]. Which of course makes utterly no sense for a staticdns service. The staticdns account was for a domain with a PR of about 5 (it was on the air and highly linked-to for over seven years...), so I was understandably upset to see it suddenly vanish off the air one day with no warning whatsoever.
Totally unimpressed, I would never, ever touch them for things I cared about again.
[1] Read the first couple of sentences of the second paragraph on this page:
https://www.dyndns.com/account/resetpass/index.html
Parent
Re:DynDNS (Score:5, Insightful)
You should have gotten your own domain, not the host sitting on their domain, and used the CustomDNS service. I have an account that has been inactive for over a year and it is still there. CustomDNS domains will never expire if you have been with them since the begining when they were free; all those domains were grandfathered and remain free of charge.
Totally unimpressed, I would never, ever touch them for things I cared about again.
With the free DynamicDNS service, you get what you pay for. If the infrastructure is that important to you, pay for the account.
Parent
Re: (Score:3, Insightful)
You depended on a free service that had limitations for a critical function of your web and email. I am not sure why you decided to use the DynamicDNS service instead of CustomDNS unless you did not want to pay for your own domain. I can understand not wanting to spend any money but you got exactly what the service offers. DynamicDNS has always had the 30 day rule. That is what the word dynamic means. An update client could have been used; the IP address does not have to change but the record needs to be re
Dear Mr. Rho, (Score:5, Funny)
Hi there, I am representing my client, Staples, Inc. Your use of the phrase "That was easy" treads upon the Intellectual Property right of Staples, Inc. Use of my client's slogan without prior written authorization is not permitted. You will immediately cease claiming that anything other than Staples, Inc. "was easy". This includes everything from DynDNS to your girlfriend and/or wife.
Sincerely yours,
Mr. Vatwozeezee
Parent
GoDaddy dba WildWest (Score:5, Informative)
GoDaddy dba WildWest has an API, but we seem to have ended up being guinea pigs for it, and it didn't go well. Their documentation had features that didn't exist, promised 24-hour turnaround on support failed, ...
It's working OK now, but I can't really recommend it.
Parent
diy?? (Score:3, Insightful)
Why not run your own??
Re:diy?? (Score:5, Insightful)
>Why not run your own??
Apparently the article submitter isn't competent enough to do this on his/her own: Why else would he/she submit something so obviously mission critical to Slashdot?
I *hate* seeing articles such as these on Slashdot: They fall into the "do my job for me" category, and should be tagged as such... only, now days, there are *so* many people on Slashdot lacking basic networking skills, it's almost moot: Hell, articles such as these generate traffic/revenue for Slashdot (to which I am contributing, of course), simply because of that fact. I imagine that such are the second highest traffic/revenue generator, right behind the "RIAA/MPAA"-type articles.
My advice: If you can't figure out a viable method to accomplish what you need, using the skills and knowledge you possess, perhaps you should *hire* someone that can? And, learn from them, as they are doing it?
Slashdot: News For Wannabes, Stuff That Matters To Them.
Captcha: bitterly
Now THAT is a nice one.
Parent
Re:diy?? (Score:4, Funny)
That's what HE was hired for.
Parent
Re:diy?? (Score:5, Insightful)
I know replying to an AC won't do much, but I just feel like it, and have not much else to do right now.
Begin Rant...
Slashdot was _the_ site for breaking news a few years ago, and sites would be regularly slashdotted, etc. Now, blogs have taken over, and push out news MUCH faster than slashdot. I think slashdot has the ability/potential to become more of a community. I used to read the comments of slashdot for more insight, as there are truely intelligent people on this site that leave comments, but lately, the S/N ratio has gone bad.
Stories like this are (I think) an attempt to bring back the good S/N ratio. No, slashdot no longer breaks stories, nor does it need to, the slashdot community has probably read about the articles somewhere else, and now comes here to discuss them. Yes, people flame, and there are many FPs, but thats slashdot, and it adds a little something.
So when I read this story, I read it because I'm looking to learn something from the comments. I think thats the direction the slashdot community is going towards.
End of Rant...
Parent
Run a master? (Score:5, Insightful)
How about running your own master DNS server, and having your provider slave from that.
Re: (Score:2, Informative)
If you don't mind running your own master DNS server like this poster recommends, DNS Made Easy has a very cheap and very redundant IP anycast based DNS service that we use for all corporate sites. For dollars a month you could have access to their nameservers, which run all over the world. Other services offer similar enterprise DNS functionality, but comparing performance with price, we haven't been able to find a better deal yet.
Re:Run a master? (Score:5, Informative)
Me, too. (That means "mod parent up")
You can use DNSpark (whom I use) or other providers as slaves. Your master doesn't even need to be publicly accessible, just as long as you allow the appropriate zone transfers. This way you can have your own little scripts that generate the zone files on a host you fully control, while having the world query those professionally managed servers.
Parent
Re:Run a master? (Score:5, Interesting)
to heck with zone files, set up something like PowerDNS and set it up with a database backup. Do one update query and push out to the slaves. PDNS is also quite snappy, and configuration is far less arcane compared to Bind - in five minutes I had an authoritative, non-recursing DNS server which was not vulnerable to the Kaminsky vulnerability (even if it did recurse). It does things same, logs sanely, and doesn't make me feel like a clueless newbie like Bind does (even after ten years of adminning DNS servers).
Check it out, it's worth it.
Parent
Re:Run a master? (Score:4, Insightful)
That's the ideal way to do it. Setup your own master server using BIND or whatever, and you get the best of both worlds. You can script access to your DNS server entries, make updates however you want to, and make it as secure as you want to.
Then let the DNS provider simply serve as secondary servers for your DNS domains. Even if your primary DNS server is down for maintenance, the NS records on your domains are pointing at the DNS provider's pool of servers which are geographically separated.
(Alternately, you could try a service like DNSMadeEasy, which allows you to make API-style updates to your DNS entries. Unfortunately, security is a bit thin and you have to hard-code usernames and passwords.)
Parent
Re: (Score:3, Informative)
"who would you go to for DNS glue records?"
If really needed, your DNS registrar will do.
"you need DNS glue from someone above you in order for those DNS servers to be valid."
No, you don't.
"Or has stuff changed since I last did this a few years back?"
No, it hasn't.
You only need glue records... when you need glue records. For a NS that means only if the name server for a domain happens to be within the same domain (so NS for example.com is for instance ns.example.com). On the typical scenario DNSs will be s
Run your own dns servers .... try powerdns (Score:3, Informative)
Re:Run your own dns servers .... try powerdns (Score:4, Informative)
If you indeed do need to run your own dns servers, then I second the PowerDNS recommendation. Having a proper sql backend is just paradise compared to the flat files of, uh, a certain other dns server that should be killed off. It's also worth noting that PowerDNS splits the authoritative server and the recursor into two separate daemons, which is quite a nifty idea.
Parent
Re:Run your own dns servers .... try powerdns (Score:4, Informative)
It's not nifty to split authoritative and recursive, it's sane (security).
Parent
"media-based company" (Score:4, Interesting)
Are we talking any sort of budget here, or does it have to be free?
Quite a few places will charge a nominal per-year fee for dns, and provide good uptime...
A lot of those are the places you register the domains from, and they make more money on registrations than dns service, but provide both.
Please provide details
Re: (Score:2)
Quite a few places will charge a nominal per-year fee for dns, and provide good uptime...
Could you be more specific?
MyDNS (Score:2)
You can always run your own DNS server on a slice somewhere using MyDNS. I've had really good luck with it for over 5 years.
Elastic IPs? (Score:4, Interesting)
Re: (Score:2)
Yeah, that's what I don't get. Amazon's Elastic IPs are free as long as there's a host running that they are assigned to. Plus they have an API for re-assigning them on the fly. Just assign them to the front end pound box and be done with it.
FreeDNS (Score:3, Interesting)
FreeDNS [afraid.org] I've been using them for a few years. Updating the DNS info can be done in a single click for all domains. They have a few free update clients, or you can use their API to write your own client.
Re: (Score:3, Informative)
Unclear (Score:4, Insightful)
Are you looking for features in a registrar or dns provider? While most registrars also provide DNS service, there's never a requirement that you have to use them. And use them I don't.
I got good and comfortable with Bind many years ago, and have the DNS administration stuff down pat. I have some really nice administration scripts that manage changes by service. Throw in a few variables, some regex, and some DNS boilerplate definition files, and I get the ability to re-ip a service (EG: websites, email, https, dbserver, etc. ad nauseum) for hundreds of domains in 60 seconds flat if you include updating the actual DNS servers with the changes. (I publish 2, I maintain 5 so that I can quickly switch nameservers in case of hardware/network failure)
Other than that, I have all my domains linked to two DNS servers by name, and occasionally I have to move a DNS server. It takes a few minutes.
Is this what you are looking for?
ZoneEdit (Score:4, Informative)
I've been using ZoneEdit [zoneedit.com] for years and they're great. Free for small domains, and really cheap for huge domains. It never, ever breaks. And it's super easy to work with.
I concur (Score:2)
Re: (Score:2)
They did in face have an outage in December 2006. It knocked many folk off the web - even folk who had paid for three servers.
I use them as a primary and secondary service, but also have 3rd and 4th nameservers elsewhere, also geographically dispersed. It'd take something pretty special to knock them all off line.
UltraDNS (Score:3, Informative)
Great infrastructure, robust, API, good people. I've been using them for around nine years now - http://ultradns.com/ [ultradns.com] - highly recommended.
Re: (Score:3, Informative)
I recently switched to UltraDNS for my important domains after a string of problems related to my old providers going down under DDoS attacks. So far it seems good. A little pricey but that doesn't really matter so long as they deliver everything they promise.
Their support has already proven to be good too - they even answered a question that was more about my registar than DNS serving.
EasyDNS (Score:2)
Re: (Score:3, Informative)
Since no one mentioned them... (Score:2)
dnsmadeeasy.
I only know about them because RightScale is using them.
Of course, when presented with this problem, I took an entirely different approach -- I wrote a DNS-as-REST server in Rails, and then a simple pipeclient-to-REST client/plugin for PowerDNS. The assumption is, it doesn't really have to perform well -- so long as it supports AXFR, you can set up any DNS server (or just about any provider) as a slave.
Re: (Score:2)
DNSMADEEASY works for me. Reasonable price and excellent service.
PowerDNS (Score:3, Interesting)
Run your own hidden master (Score:5, Insightful)
Pay a nominal fee to have an ISP slave their big bad never-down DNS servers against your hidden master. Make sure it is set up to allow DDNS updates from your master so there is no lag making the new data public. All you have to worry about is TTL.
Your server server will not take the load and will not have the uptime requirement as the public servers. You can put just about any DNS software on your server so you can use any API you want there.
Run your own servers. (Score:3, Informative)
1) Install and DNS server that supports what is technically called 'dynamic updates' and make sure that the updates can be authorized by keys. This server will be internal.
2) man nsupdate
Here, I'll even do this step for you: http://linux.die.net/man/8/nsupdate [die.net]
3) Set the public facing DNS servers to transfer the zones from your internal DNS server.
4) Tada.
Using ISC BIND, I've setup my zones in a similar fashion. I configured the zone update authorization to be key based instead of IP based.
nsupdate uses no special magic, just RFC based standards to allow zone updates. If nsupdate doesn't fit your bill (and it should, it allows you to batch updates and send them), you can roll your own.
Keep in mind that 'dynamic update' doesn't mean 'low TTL value.' You can set it to whatever you please, it just means that you can updates records without any special zone magic.
What the heck? (Score:5, Interesting)
I wrote:
-davidu
Re: (Score:3, Interesting)
Comments made to articles in the firehose do not make it to the live site. It's like a BRAND NEW firehose.
Re: (Score:3, Interesting)
davidu,
I actually met you in college at one point; you were a senior, I was a [self involved] freshman, and you gave me some very good advice then too. FWIW.
Thanks to everyone for all the great advice. I'm going to probably roll with EveryDNS one way or the other out of loyalty to their service which has never let me down.
And we'll donate our savings from DNSPark.
We use and love OpenDNS too. If you're ever in New York, I owe you a beer.
-netaustin
Zerigo (Score:3, Interesting)
Try Zerigo:NS (http://ns.zerigo.com/ [zerigo.com]). The template feature may be enough to meet your needs. Change one template and every domain dependent on it changes at once.
If the templates aren't enough, there's also a REST API (brand new, not yet announced on the site, but should be functional).
Shoot me an email after setting up an account and I'll comp you at least 6mo of whatever level account you need to fit your domains. Be sure to let me know what level account you need.
To the rest of /. -- I'll comp any of you too: just mention this thread and let me know what account level.
(Disclaimer: If it wasn't obvious, I am affiliated with Zerigo.)
Uh, just run your own DNS server? (Score:3, Informative)
It isn't all that hard you know...
And even a pretty busy DNS server doesn't require vast hardware resources. You already obviously have a hosting infrastructure, etc. Bind 9 can serve up a LARGE amount of DNS requests on a couple of fairly low end machines.
Re: (Score:2, Insightful)
Are all your domains hosted on the same set of servers? Could you CNAME the 50 domains to a smaller subset of domain names, and then you only have to change the A records of that subset whenever you have a change?
I second this idea.
I'd also point out that you can ease your DNS transitions by carefully planning a "drawdown" of the TTL values of your records prior to the actual change and/or setting up HTTP redirection on the legacy addresses, redirecting to the new location, during the interval of time in which the new DNS information is still replicating and/or resident in DNS caches.
Re: (Score:2)
The trouble with EC2 and CNAMEs is that you cannot CNAME a base domain.
So you can easily cname www.example.com to whatever you need, but you cannot cname example.com at all.
The better solution (as noted below) is Amazon's Elastic IP offering. Which is free if it attached to a running EC2 instance.
Re: (Score:3, Insightful)
You sound like you've had a long drive home. How about posting in the relevant forum next time, m'kay?
I dunno ... it was a pretty damn good rant.