Native IPv6 ADSL available from Internode

14 November 2009

Internode Logo

On Friday the 6th, Internode went public with the announcement of a native IPv6 trial for their customers. As a fan of IPv6, I’m particularly excited about this, especially seeing as though now Internode is the first ISP in Australia to offer native IPv6 (albeit in an opt-in trial form) to its residential customers.

I’m not going to bore you with details or a dodgy rehash, so I will instead invite you to read the announcement and the IPv6 ADSL Trial pages for yourself.

For those that like to dive in head-first without checking the depth or for the presence of sharp rocks, you can opt-in by changing the @internode.on.net part of your PPP username to @ipv6.internode.on.net.

I got it working on my own connection, and I am very impressed with the performance. The speed of my IPv6 connection is now no slower than my IPv4 connection (unlike connections that use tunnels to get v6 connectivity), and all users are allocated a static /60 subnet, which is absolutely the right way to implement it, in my opinion.

Internode supports up to 4 concurrent PPPoE connections on a single ADSL line, which is handy to know for testing. You can have your IPv4-only “production” connection, and a second IPv6-enabled “experimental” connection that you can play with and not worry about disrupting family members if it breaks. :)

Why dynamic IPv6 subnet allocations for home users are evil

23 June 2009

Currently, a typical home Internet user will be assigned one IP address from their ISP, and then use NAT (Network Address Translation) to share the Internet connection among all their computers. The IP address assigned by your ISP is dynamic, and that is not a problem for the average home user, or even your typical power user.

Setting static IPs on computers is not all that uncommon, even among home users, excluding only the very most technically-illiterate ones. For example, your home router might be 10.0.0.1, and the other desktops in your house might be 10.0.0.10, 10.0.0.11, and so on. Then, if somebody drops by and wants to use your WiFi, they might be assigned an address via DHCP, such as 10.0.0.121.

This won’t work in IPv6 if, and only if, ISPs choose to make your subnet allocation dynamic. I urge ISPs to assign static IPv6 subnets to all their customers.

Why? Well, let me give my reasons. In IPv4, all the home machines in the above example are behind a NAT. This means the private IP address (10.0.0.121) gets dynamically translated to your public IP address (123.12.134.78).

Because of the absence of NAT in IPv6, this can’t happen! Your machine’s IPv6 address is tied to the subnet allocated to you by the ISP. And if your ISP changes your subnet every time you connect to the Internet as they currently do with IPv4, your static IPs will break horrendously.

I am aware of site-local and unique local addresses. These addresses are designed to be used only in a local situation, and not routed to the Internet. In theory, this could solve the problem, by allowing you to have a static local address, and a dynamic global address. In practice, this will not work because:

  • Site-local addresses have been deprecated by RFC 3879.
  • Unique local addresses are considered to be global addresses by current OSes. Wikipedia says that “despite the restricted, local usage of these addresses, they have a global address scope”, which means that your computer will assume either one can get to the Internet.
  • Thus, your source IP may be wrong, and your packet may be filtered and rejected by your ISP, or you may never get a reply, as the message won’t be able to get back to you.
  • Having both unique local and global addresses are confusing to the end-user, unlike link-local addresses, which are clearly marked as such, and are generally non-routable.

Finally, we must look at the reason why dynamic IPv4 addresses are assigned in the first place. I believe the main reason for this is to conserve space. With most of their address space used up, ISPs would have to count on all of their customers not using their Internet connections at the same time. Dynamic IP addresses means they can effectively over-subscribe their puny IP allocations.

In IPv6, this is not necessary. ISPs typically get a /32 allocation, which if you’re not familiar with CIDR notation, is bleeping huge! With a /32 allocation, an ISP could allocate more than 4 billion /64 subnets (which are suitable for a typical household) to each of their customers. I don’t think any ISP in the world has 4 billion customers, and if they did, they could get a /31 allocation, which would give them about 8 billion /64 subnets. Plenty of space for static allocations for everyone!

In conclusion, I’d like to summarise what I’ve been trying to bring out:

  • People that like to set static IPs on their machines will have them break if their subnet changes.
  • Site-local and unique local addresses only add to the problem, not solve it.
  • There is enough IPv6 address space in a /32 for everybody to have a static subnet.
  • There is no business advantage in giving out dynamic subnets. Do the best thing by your customers and go static.

So, dear ISPs of the world, please make static IPv6 subnets a part of your standard offering — not a “paid upgrade” or anything silly like that. It might work in the NAT’ed world of IPv4, but you will do your IPv6 customers a disservice.

Thanks for reading. :)

It’s not over yet

17 December 2008

Strike me down, Commonwealth

I have a feeling this isn’t the last we’ll hear of Telstra.

Internode unmeters ABC iView

11 December 2008

This is awesome: ABC iView is now unmetered for Internode customers.

In addition to their other unmetered services (including SourceForge), VoIP, and (relatively) gigantic download quotas, there is now absolutely nothing stopping us from switching to Internode from iiNet.

How to access Gmail and Google Reader over IPv6

25 November 2008
This post is outdated! You probably shouldn’t use this method to access Gmail over IPv6. Instead, find a DNS resolver that is part of the Google over IPv6 program, such as SixXS, Internode, or Hurricane Electric.

I just figured out a really simple and obvious way to access Gmail and Google Reader over IPv6 that doesn’t require the use of hacky portals such as IPv6Gate.

Google already offers their search engine service via IPv6 at ipv6.google.com. This works fine, although it doesn’t work with Gmail or Google Reader, as for some reason, they have not added those services to the ipv6.google.com domain — they only work if you are on the www.google.com domain.

However, there is a way to access Google’s IPv6 server and still retain the www.google.com domain: edit your /etc/hosts file.

To access Gmail and Google Reader via IPv6, add the following line to your /etc/hosts file (if you are on Windows, add it to your C:\Windows\System32\drivers\etc\hosts file):

2001:4860:c003::68 www.google.com mail.google.com

If you are using Firefox, you will need to restart your browser before it picks up the changes (as it uses an internal DNS cache).

You can add support for other services such as Google Images by adding the respective domain names to the end of that line. However, adding Google Maps gets a little tricky, as the map images are served off several different servers. In the comments below, Jari K gives us an /etc/hosts line that adds the map image servers, which apparently works.

Please note that the above IPv6 address may have changed since I wrote this post. To find out the most current IPv6 address that Google uses, use the following command:

dig +short aaaa ipv6.google.com

If the IPv6 address that you get from that command is different from the one I posted above, please let me know in the comments!

I wonder what the likelihood of Google adding AAAA records to the main www.google.com domain is.