YES!

Woooooooooooo!!!!!!!

YAY! *jumps around the room*

*realises it’s 02:46 AM*

*jumps around the room*

IPv6 just got properly enabled in the London and Atlanta data centres for linode.

EDIT: Now enabled on all the machines in my cluster :D

Exim, IPv6, and lots of email errors

Since I eventually moved the email server (exim) over to the server blastoise, it’s been giving me grief. Something along the lines of rejecting emails because it wasn’t allowed to relay mail through itself, even though I’d actually told that it was allowed to:

hostlist   relay_from_hosts = <; localhost ; 178.79.130.8

However, blastoise is IPv6 capable, and prefers that over IPv4, and because all the settings point to "mail.helpmebot.org.uk" which points to both 178.79.130.8 and 2001:470:1f09:1213::2, it was skipping "localhost", and preferring IPv6, which wasn't listed, hence the nice error log was filling up with messages like this:

220 helpmebot.org.uk ESMTP Exim 4.71 Sat, 19 Feb 2011 17:50:24 +0000
EHLO blastoise.helpmebot.org.uk
250-helpmebot.org.uk Hello blastoise.helpmebot.org.uk [2001:470:1f09:1213::2]
MAIL FROM:
250 OK
RCPT TO:
550 relay not permitted

Hopefully the problem is fixed now, with the correct configuration (adding the brand new metapod's IPv4 and IPv6 addresses):

hostlist   relay_from_hosts = <; localhost ; 178.79.130.8 ; 178.79.155.110 ; 2001:470:1f09:1213::2 ; 2001:470:1f09:1581::2

In case you were wondering, the default separator for lists in Exim's config file is :, which causes "issues" with IPv6 addresses. A quick google told me to prepend <; to the beginning of the list, which changes the separator from : to ;, which doesn't cause a problem with IPv6 addresses. :)

Sometimes I really don't like it when that sort of thing happens... configuration stuck in a dark dusty corner somewhere breaks because something random changes like adding an IP to the system.

IPv6

So, as you may or may not be aware, the entire address space of IP (version 4) addresses has now been allocated. This means it is likely a matter of months before the first ISPs around the world start running out of IP addresses to allocate to customers.

The solution to this is IPv6 (the sixth version of IP), which introduces a whole new address space which is much larger (340,282,366,920,938,463,463,374,607,431,768,211,456 (2^128) addresses) than the address space that IPv4 had (4,294,967,296 (2^32) addresses). However, although IPv6 is over 12 years old now, uptake has been very slow.

I’ve been rolling out IPv6 over this server for the past couple of hours, and after a few initial hiccups, I’m pleased to say it’s all working fine on IPv6, with 2 notable exceptions:

  1. MediaWiki doesn’t like IPv6 at the moment
  2. studentotakusociety.dyndns.org can’t be upgraded to IPv6 due to the nature of the domain name

Both of these are fixable in some way, the first is waiting on an upstream fix ( https://bugzilla.wikimedia.org/show_bug.cgi?id=27353 ), the second is waiting on the admins of that site actually buying a domain name like they’ve been promising.

This means that every site EXCEPT helpmebot.org.uk has bee updated to IPv6 without a problem – the irony is that helpmebot.org.uk was the one I wanted to do first, and had the most expectation to actually work.

The server itself is using a Hurricane Electric IPv6 tunnel, I’m using a gogo6 tunnel at home. It’s nice to be able to browse to places like http://www.v6.facebook.com/, in the knowledge that not many people either know about it, or would be able to get to that site without IPv6.

UPDATE:
The bug with MediaWiki was caused by a regression, and has now been fixed. That’s only one site left to switch to IPv6 now :)