This story is about switching a small home LAN to IPv6 (or at least trying). My home network includes the following devices:
I'm not sure if all of those devices support IPv6, but I'm sure I will find out in the process. Currently the home network is IPv4 based with the Linux router acting as DNS, DHCP and routing server to the whole network. My phones connect to a local Asterisk instance that also runs on the Linux router. Both my Linux computers run on Gentoo Linux.
I decided to start this project out of curiosity and to get aquatinted with IPv6 and to get to know the pitfalls of the new internet protocol. This article is a work in project, so check back every so often.
Unfortunately my DSL provider does not support IPv6 addresses for PPP connections, so I decided to use a so called tunnel broker.
At 8:00 on March 4th I have requested an account with sixxs.net. Sixxs.net is a 6to4 tunnel broker, allowing IPv6 traffic to flow over an existing IPv4 connection.
The signup with sixxs.net is pretty straight forward, only problem was that my geisterstunde.org DNS entry didn't have a valid MX entry, so sixxs.net refused to send me a confirmation e-mail to my private account. Telling them to use my work account which surely has an MX entry worked and a few minutes later I got a confirmation e-mail from sixxs.net with a link to confirm the setup of my account with them. One interesting thing about the signup process is, that you have to tell them why you want to have an account with them. I simply told them that I want to switch my network to IPv6 and that my start of this project would be by getting an IPv6 address on my Linux router to explore the world of IPv6.
Upon clicking on the link that came in the e-mail, the signup information will be reviewed by a human (!) at sixxs.net... this was also stated in another e-mail that I received shortly after.
Four hours later I got "approved" by sixxs.net and was able to login to their site.
The next task was to set up a tunnel. Since I would be using the "aiccu" package in Gentoo Linux I chose to use a heartbeat tunnel. Next I had to choose the correct PoP, for this I chose de.easynet (deham01) because it is in the same city as where I live, therefore latency should be low.
Again I got a confirmation e-mail about my choice and then got an approval of my tunnel selection (this was only at 14:50 the same day).
At first one now needed to set up the aiccu tool. For this the file /etc/aiccu.conf needs some editing. Basically only your username and password need to be filled in as well as the tunnel section which you have chosen before.
After trying to bring the interface up, I realized that my current kernel didn't have IPv6 support compiled in. Quickly reconfiguring the kernel and booting up with a new one (it was time to use a new one anyway) the virtual sixxs network almost came up. The heartbeat requires that your time should not be off by more than 120 seconds. Mine was off, but after getting the current time via NTP the interface came up fine:
sixxs Link encap:IPv6-in-IPv4
inet6 addr: fe80::50ab:3250/64 Scope:Link
inet6 addr: 2001:6f8:900:b22::2/64 Scope:Global
inet6 addr: fe80::c0a8:7e01/64 Scope:Link
inet6 addr: fe80::c0a8:101/64 Scope:Link
UP POINTOPOINT RUNNING NOARP MTU:1280 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
So here it is, my IPv6 address: 2001:06f8:0900:0b22:0000:0000:0000:0002
If you go to https://noc.sixxs.net you will be told in the bottom left corner of the site whether you are accessing the site through IPv6 or through IPv4.