DreamHost Announcements


buh bye two cows!

I thought this day would never come.

We’re finally done with OpenSRS.. all (er, except for about 50, but they’ll be gone soon) the domain registrations we had with them have finally been transferred over to our real ICANN-accredited registrar accounts!

You probably don’t understand how big this is, nor know how long in the coming it’s been.

It’s BIG, and it’s been a Long Time Coming.

Waaay back when, probably around 1999-ish, we signed up with OpenSRS, a then-new service from Tucows to resell the registration of domain names. We were too small (and too disorganized) to get a real ICANN-accredited registrar account back then, and Tucows’ system offered a way for us to start providing registration services to go along with our web hosting.

We actually have about ZERO interest in the domain registration business, and its related offshoots (domain reselling, back-ordering, parked pages with adsense, etc..), but just like airlines have to serve something like food, a web host pretty much has to offer domain registrations. Up until that point, we’d just been registering people’s domains for them with network solutions (and I believe we tried register.com for a little while too).

There were two good things about OpenSRS… they were cheap for the time ($10/domain year), and they had an API we could use to create our own registration management interface built right in to our web panel.

And two things only.

There were numerous idiosyncrocies with their system.

For one, international characters in whois information seemed to break everything.
We had to work around this by doing our own stripping of all accented characters submitted from our web panel.

For two, they required sending some emails of their own to the end-users (though you could customize the message). This was annoying because we already had our own email reminder system that we liked better, but we couldn’t stop them from also sending their reminder to our customers.

For three, you needed to assign a username and password for every domain registered to allow the end-user to manage it from OpenSRS’s control panel.
We decided for simplicity, and since we didn’t want our end-users to use OpenSRS’s control panel anyway, that we’d just use the same username and password for all domains we registered. This was fine until one day everything stopped working! It turned out Tucows had changed their API and passwords with a “#” in them were no longer valid. Ours happened to have a # in it. Eventually we discovered this was the problem and asked support to just remove the # from the password on the 30,000 domains we had at the time, and we’d update the password in our code. They said they couldn’t do this, and the only way to change the password for a domain was to log into their control panel and change it manually.. for EACH one! I asked them if they realized we had over 30,000 domains with them, to which their only solution was to “use macro express”.

Program nice, having to use it, dumb!

(“Macro Express” is an application for windows that can use a spreadsheet to automate various programs, including Internet Explorer. I finally realized this was the only option they were going to give me, so I set up a macro to connect to their control panel over and over and over again, changing that password again and again and again. Each connection took several seconds and for a period of 3 days my laptop was dedicated to running this CRAZY thing. CRAZY CRAZY CRAZY! Eventually it finished, but ever since that day there have been a few random domains that still have the old nasty “#” password.)

For four, if your account balance ever hit zero, EVERYTHING broke immediately.. even if say, you were one of their largest resellers, and had say, spent hundreds of thousands of dollars with them in the past, and say, had had this happened to you many times before. No matter what, you could NOT get so much as a $10 loan in their system. They even accepted credit card for payment and yet couldn’t just automatically rebill you when your funds got low!

All in all, they weren’t really that bad though.

When PIGS fly!

It just comes with the territory.. the more intermediaries you have in any transaction, the more chances for problems. When was the last time you used a travel agent, now that you can just buy your tickets directly from any airline via their website?

By connecting to OpenSRS to connect to VeriSign we had twice as many APIs that could break, twice as many servers involved, twice as many support teams, and twice as long a communication chain than if we were just connecting directly to VeriSign ourselves.

Which is why we eventually got ICANN-accredited and became an honest-to-goodness registrar ourselves. It wasn’t the $3 we saved per domain. It was never having to run Macro Express for three straight days again.

Once we became ICANN-accredited we immediately set to work transferring our existing OpenSRS domains over to our new account. At first, we thought this would be a simple one-time operation.. but it turned out the bulk transfer process ICANN has is only for the cases where an ENTIRE registrar’s domain base is moving to another one. Since we weren’t exactly buying OpenSRS out, we couldn’t use the registry-side bulk transfer we thought we could at first.

As it turned out, what we had to do instead was just 30,000 regular registrar transfers of the domains. That doesn’t seem like much of a problem, except that doing a transfer like this also renews the domain for a year. Since we didn’t want to spend $200,000+ renewing all of our customers domains when they weren’t even expiring, we decided to instead do a “sneaky transfer/renewal” (my term!) Basically, we set up our system so whenever somebody requested to renew an OpenSRS domain, we silently transferred it to us!

That's what I call real ultimate power!

To make the process all ninja, we’d first modify their admin email contact to be a special email address we had that automatically parsed and approved any OpenSRS transfer request emails it received. Then we’d submit the transfer request, and once it was transferred over, we’d change the admin email contact back, optionally renew it for any extra years (if it was like a two year renewal), and then send the “renewal success” email. It was a CRAZY system, but it more or less worked. Unfortunately, this process took a few days, so if somebody didn’t renew their domain until right before it expired, we had no choice but to renew for another year with OpenSRS.

It looked like we’d never be free of them!

But finally, a little while ago we got to the point where there were few enough domains left with OpenSRS (a couple thousand) that I decided it was just worth it to be done with them forever, and we just “sneaky transfer/renewed” the remaining domains, extra cost by darned! Of course, they didn’t all succeed, for various reasons (some domains had somehow gotten an entirely different OpenSRS password so we couldn’t manage them at all, some other domains were “registrar-locked” and so couldn’t be transferred), but after trying over and over again, finally TODAY we look like we’re down to only some random useless domains (old fraudulent accounts, people who left our service years ago and never transferred their registration, etc..).

We’ll be contacting Tucows Monday and officially closing our account. And then the real fun begins!

I get to delete thousands of lines of some of our oldest, nastiest code from CVS!


About the author

Josh Jones

1 Comment