Recently I've been flicking through the Netcraft uptime page for this site, and looking at the IP addresses and web software listed therein brought back some interesting memories about what this site was. I'm recording some of these here.

Hosting arrangements

Before cloud9

This site started life as www.m.org.nz/~cky/ back in August 1999, shortly after the server we had at NetGuide was operational (see the M Crew history for more details—in fact, that page was one of the first articles I wrote for this site). Our server, arcanum.m.org.nz, had IP address 203.98.43.38, back when NetGuide had a /29.

I registered my first personal domain name, hedgee.com, a month later, but it remained unused for a few months. On 1 January 2000, I moved this site to the cloud9.hedgee.com virtual host, and I consider that day the official ‘birthday’ of cloud9. I decided back then that there would be no www.hedgee.com, and this decision remains today.

NetGuide

cloud9 was hosted at NetGuide until they moved office from Parnell to Takapuna in September 2000. In doing so, they changed their internet connection from centrex ISDN (which was no longer possible because of the new locality) to JetStream DSL. In the latter arrangement, only a /32 was allocated, so arcanum had no public IP address.

Initially Edward set up a pinhole on port 602, which forwarded to port 80 on arcanum, but needless to say, this made virtual hosting very hard to do, and in practical terms, the only site which benefitted from this was www.m.org.nz itself. I refused to move my website back to that virtual host, so it remained unreachable for some months.

Looking through my mail archives, I recalled that Adam tried playing some tunnelling games to provide us a public IP address, but that never worked out, probably because I was too draconian to okay the kernel upgrade that Adam needed for it to work. This was probably because, if I remembered correctly, I was playing some games with securelevel back then, which was no longer supported on Linux 2.2 kernels.

Acrogen

In January 2001 I finally got a DSL connection at home, but it took a month for my various machines to get set up. The newly-formed home network needed a domain name, so I used the then-unused acro.gen.nz domain, which I registered in July the previous year just for fun. The home network has since been known as the Acrogen network.

On 25 February, my shell machine at home, exterior.acro.gen.nz, was finally set up. Among other sites, it hosted cloud9, which after five months of absence was online again. As with all JetStream arrangements I know of, I got a /32, 210.55.69.57, which I kept until July 2004.

Hosting at home was a satisfactory arrangement for a couple of years. However, in January 2003 I planned to run an ‘alternative Blurty’ site, to be called Spillville. With the exorbitant traffic charges of New Zealand internet, this would never work, so I had to find somewhere that allowed large amounts of traffic at an affordable price.

For me, it's not enough to have a web hosting account. I need the ability to upgrade the hosting software at will, and perform various other sysadmin responsibilities. Accordingly, finding a hosting service within my budget was difficult. At the time, two sites stood out above all other contenders: ServePath and JohnCompanies.

ServePath

As you may probably notice from other sections of the website, I'm a BSD fan first and a GNU/Linux fan second. The JohnCompanies FreeBSD solution offered one IP address only, which was unusable for my needs—I intended to have enough IP addresses to do DNS hosting completely. So, I went with ServePath first, using their FreeBSD account.

Since the beginning, I have decided to name the two IP addresses I used nil.spillville.com and t.spillville.com. The former was chosen to rhyme with Spillville, and the latter will make sense to any lisp programmer. These had IP addresses 216.93.166.67 and 216.93.166.68 respectively.

I started setting up the machine there in late January, but moved cloud9 there nearly two months later, on 16 March (or so my remaining records show). I liked the system—it worked really well, and it did everything I needed it to.

Unfortunately, the machine crashed in late April, and no amount of help on the support technician's part could fix it. Apparently they could get console on it, but they kept asking for my root password. Unfortunately for them, I'm too paranoid to have a root password.

I suggested instead that they boot into single-user mode and do all the service from there. This they found too difficult. If only I had some way of getting console access on the system! Well, getting their real technicians would cost US$99 per hour, which I considered ridiculous, so it was time to move on.

JohnCompanies

I've heard a lot of good things about JohnCompanies on Kuro5hin, so it was the logical next step. However, since the FreeBSD account was not an option, I had to go for the GNU/Linux account instead.

The account they offer uses Red Hat as the distribution; because JohnCompanies uses virtual server instances, as opposed to a separate server machine, the use of Red Hat was not optional. However, the helpful staff sent me a link to Joe Drew's excellent Setting up a Debian chroot under Red Hat article. This was everything I needed to make a usable Debian system.

So, on 13 May (or so my records show), I moved cloud9 to the new system, which had IP addresses 65.248.4.183 and 65.248.4.189 for a little over a year.

In June 2004, JohnCompanies received their own block of addresses (69.55.224/20), which all customers were requested to start using, and my addresses became 69.55.235.183 and 69.55.235.189. At the time of writing, that is currently where the site is—and hopefully for a long time still, for I like the service provided by JohnCompanies very much.

Web software

The site has always run on Apache and PHP. The latter is obvious; the site script (ckwww) and all the pages were written in PHP 3. (They've since been adjusted to run correctly in PHP 4 as well. Now that PHP 5 is out, more adjustments may be necessary.)

For licensing reasons (see an old version of GNU's licence listing, for example) and compatibility reasons (because upgrade would—and did—break a lot of my scripts), I resisted the migration to PHP 4 for a long time. It wasn't until the OpenBSD 3.2 upgrade (on exterior.acro.gen.nz) in December 2002 that I took the leap and upgraded to PHP 4.2.3.

When the site was hosted at ServePath, I compiled packages by hand, without using packages. This made upgrading more tricky, but gave me the freedom to use the newest releases available.

In contrast, when I set up the Debian system at JohnCompanies, the unavailability of recent PHP Debian packages meant that I remained with an older backport of the PHP 4.2.3 package. (Yes, still a backport; woody, the then-stable Debian distribution, only has PHP 4.1.2.) 4.2.3 was the newest Debian package for a long time; they later released a Debian package for 4.3.4, but PHP was already at a later version by then.

It wasn't until the July 2004 PHP security advisory that a newer PHP Debian package became available. At that point, because the 4.3.8 Debian package did not play well with the Apache 1.3.26 package that came with woody, I upgraded Apache to the latest version as well. I upgraded the Apache and PHP packages again in January 2005, also for security reasons.

On 12 June 2005, the system was from woody to sarge. Getting this to work on Virtuozzo (which JohnCompanies uses for its virtual server hosting) required some LD_PRELOAD hacks, until the 30 June kernel upgrade.

Most recently, on 23 February 2008, the system was upgraded again, to etch.