Getting a free public IPv6 & using it on Ubuntu

You must have already heard of IPv6.  This protocol is not yet very common, both websites and ISPs rarely support it. Why bother then? Using it has several fantastic advantages! The greater pool of IP addresses allows everyone to have his own, unique, publicly visible IP (it is hoped that by these means it will cure the structure of the Internet).

Personally, I like it for following reasons:

  • This allows all machines to be accessible from everywhere else.  Forget about ISP’s NAT, your computer can become a public server too!
  • You can play multi-player games with your friends easily. Everybody has his own IP, even if they are behind a router.
  • It is possible to SSH to your home PC from anywhere. I use it to access & use my computer from my mobile when I’m out!
  • Some websites promote the IPv6 by presenting it’s users with some gadgets and cool stuff.

(To be clear: these are not advantages of ipv6 protocol itself, it’s just making use of having an unique public IP address. There are many articles on the web which explain how ipv6 is better than ipv4, it’s beyond the scope of this post.)

Does that sound interesting? It is probable, that your ISP does not support IPv6, or it requires additional fee. It is hoped that this will change on the upcomming World IPv6 Launch Day (6 June 2012), when major companies will permanently enable IPv6 for their services. However, you can get one today, for free! This article will help you getting it, and configuring it on Ubuntu. It even works behind a router, NAT!

One of  possible tricks allowing you to use IPv6 while your ISP uses only IPv4 is called a tunnel broker (basically it means wrapping your IPv6 packets in IPv4 packets, sending them using your current connection, and unpacking them by external servers). There are several places where this service is free e.g. Hurricane Electric. I chose SixXS (www.sixxs.net), and thus this tutorial will help you setting up a tunnel from sixxs.

  1. First step is to register.
    • Do provide your real data. This information is always verified by human, and any fake accounts will not be created.  The reason why they require your address etc. is because they will now act as your ISP for IPv6, so they need your information because of law regulations.
    • Members tip: If you register using your @ubuntu.com e-mail, you will get some bonus credit points!
  2. Next, you need to wait for a reply from them. It may take several days, but considering the fact that this service is free and driven by volunteers, it’s not a lot of waiting.
  3. An e-mail from SixXS will contain your login credentials. Use them to login on http://www.sixxs.net/home/.
  4. Request a new tunnel. Click on ‘Request tunnel’ on the menu on the left side.
  5. Select Dynamic NAT-traversing IPv4 Endpoint using AYIYA. (Others might work too, but this one will work for everyone and is the easiest to set-up and maintain. If you have very special needs, you may want to learn more about other types.)
  6. Type in your location. In the next form, choose a server near you, and provide SixXS with the reason why you want a tunnel.
  7. Again, wait for a reply from them. This time it should be much faster, as this time they do not need to verify your user data :)
    • The e-mail will contain your tunnel details, as well as yourIPv6 adress (which are also available on your home page on SixXS website).
    • The tunnel will be then enabled automatically, but this can take few hours. Do not panic if it’s not working immediately!

At that point your tunnel should be ready to use. Now you need to configure it to work on Ubuntu.

AICCU is used for automatic management of your IPv6 connection. It’s really easy to use on Ubuntu!

  1. Install it: sudo apt-get install aiccu
  2. During installation, a dialog will appear, asking you for your SixXS login credentials. If not, update /etc/aiccu.conf  with your login/pass afterwards.
  3. AICCU will now start in the background on system boot, and automatically provide you with a IPv6 connection. If you do not want to restart, you can kick off AICCU using:  sudo service aiccu start
    • Note that you will now have both IPv4 and IPv6 connections working. If a website uses IPv6 you will connect it with IPv6, but if it has not enabled it yet, you will not loose anything – your IPv4 connection will be used in such cases.
  4. You can test your IPv6 connection by pinging some IPv6-enabled website, e.g. ipv6.google.com (note: use ping6 instead of ping). You may also want your friend to ping6 your IPv6 address, to check if it’s publicly visible (note that your friend will need a IPv6 connection too). It will be, but testing it is just awesome! :-)

That’s it! You can now access the IPv6-enabled Internet, and make use of your public IP!

8 Responses to “Getting a free public IPv6 & using it on Ubuntu”

  1. Evgeni Golov Says:

    You could also do:
    1. apt-get install miredo
    2. uh, done :)

    Yes, I know, Teredo isn’t that good as a good tunnel (or native IPv6), but it’s much easier (as long you don’t need a whole subnet) and does not involve services with bitchy rules and admins (just set your reverse DNS to something.longer.than.minimal.example.org and get banned).

    • Rafał Cieślak Says:

      The problem with Teredo tunneling is that you don’t get a constant IP address, it will change now and then, so every time I reboot my machine, my IPv6 address changes. This is a no-go for a public IPv6 server, should the clients ask me every time before connecting for my address? You are right that this is much easier to configure ;-) , but for general use I would rather suggest a service that gives you an address which will always your own! And when it comes to bitchy rules and moderators – never heard of such on sixxs, and my experience with their crew is fantastic, really! ;-)

  2. José Miguel Parrella (@bureado) Says:

    Yes, and then 6to4 if you want the subnet… tunnels are just… cumbersome.

  3. IronPatriotNY Says:

    Got mine working. Thanks.

  4. Today, Google And Major Internet Companies Are Turning On Their IPv6 Tap | EssayBoard Says:

    […] Rafał Cieślak: Getting a free public IPv6 & using it on Ubuntu (rafalcieslak.wordpress.com) […]

  5. GreyGeek77 Says:

    SIXXS is not longer accepting new applications for tunnels and is encouraging existing users to push their ISP for IPv6 support, because SIXXS is closing down in the near future. Hurricane Tunnel has a catch-22. If your tunnel is active but for some reason you cannot ping6 a known ipv6 website, like ipv6.google.com, you can NOT simply go to their forum and ask questions. You must first “certify” your IPv6 knowledge by taking a series of courses, for “security” reasons they claim. The first lesson/test is drop dead easy, but is not sufficient for you to ask questions on their forum. The second lesson and test require you to have a WORKING ipv6 connection on your PC AND an ipv6 website! If you had those you wouldn’t need to ask questions on their forum. For Linux users the best option is to “sudo apt-get install miredo”. Your tunnel is created automatically. You may have to adjust /etc/gia.conf to give IPv6 priority. If Teredo attempts to install during boot before the network is up you may have to put “service miredo start” just before “exit 0” in /etc/rc.local.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: