Getting IPv6 Using Freenet6 on Debian

Take advantage of the Freenet6 tunnel service to quickly move from IPv4 to IPv6.

IPv6 is the successor to our current internet protocol, IPv4. It offers many new features, including vastly increased address space--128 bits vs. IPv4's measly 32 bits--easier autoconfiguration and better support for encryption, just to name a few. The Debian project has done a good job of making its distribution IPv6-ready. In this article, you'll learn how to setup a IPv6-over-IPv4 tunnel using the free Freenet6 tunnel service. Note that I'm assuming you're using Debian testing (woody) or unstable (sid) and understand how to install packages through apt. I'm also assuming you know a little bit about IPv6, such as what an address looks like.

Before beginning the tunnel, you'll need a publicly addressable IPv4 address on the machine you're using. Your kernel also must support IPv6; Debian's default kernels do support IPv6. If you're not sure if your kernel does support it, check for a /proc/sys/net/ipv6 directory. Also see if the output of ifconfig contains any IPv6 addresses, something like fe80::24f:49ff:fe07:2552 Make sure your firewall isn't blocking IPv6 tunnel packets, IP protocol 41 (ipv6) must not be blocked in either direction.

Once you've confirmed all of this, start the tunnel by installing the Freenet6 client software with apt. The Debian package is called Freenet6 and is available in both testing and unstable versions. Once it's installed, Freenet6 automatically gets a IPv6 address for you based on your existing IPv4 address; no configuration is required. That's right, everything will work right out of the box on most systems simply by installing Freenet6.

Note that this IPv6 address is tied to your IPv4 address, if the IPv4 address changes so does your IPv6 address. Fortunately, if you've used the standard Debian systems for your internet connection, such as the PPP packages and the included dhcp clients, Debian will automatically get a new IPv6 address for you if your IPv4 address changes.

To test your IPv6 connection, try pinging something with the ping6 program. If you find that you don't have ping6, install it with the iputils-ping package. Some hosts to try pinging include and If the pings aren't working, double-check that your firewall isn't blocking IPv6 packets. If the pings do work, next try connecting to with Lynx, Mozilla or Konqueror. These browsers have IPv6 support in Debian testing. If everything is still working correctly, there will be a "dancing kame" at the top of the page and a little message at the bottom. If it still says you're using IPv4, and the ping6 test worked fine, double-check that you're using the latest version of the browser.

Congratulations! You're on the next generation internet! If you have a network behind a Linux router, you can also provide IPv6 for the machines behind it using Freenet6 and the radvd. How to do it will be explained in an upcoming issue of Linux Journal.



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

ping6 doesnt work

olu's picture

.i have managed to get the tspc(using freent6) tunnel up and running but ping6 doestn seem to work but i cant do a succesful ping6 to kame or any other ipv6 i need to change anything in my firewall to allow ipv6 in and out?if i need to change a rule in my firewall ,where do i find the ip6tables so that i can edit it.
pls help reply as soon as possible so i can progress on my project.i am using linux debian.
what do i do ? any one plss help!!!!

Re: Getting IPv6 Using Freenet6 on Debian

Anonymous's picture

Squid can be a killer for ip6 web connectivity. you need to do some special configuration for it to work. but I'm only in early testing right now of it and just switched proxy off.

if your in Australia look at for a local connectivity point

Re: Getting IPv6 Using Freenet6 on Debian

hvw59601's picture

But trying this on a PPP client I find the info confusing:

the HOWTO says:

* PPPOPTIONS="debug nomp ipcp-accept-local ipcp-accept-remote ipv6cp-accept-local+ipv6ipv6cp-use-ipaddr"

Yet the PPPD manpage (2.4.1 debian sid) says nothing of the ipv6 opts. And that "+" sign with "ipv6ipv6cp" looks suspiciously like an error. I guess I'll wait with enabling ipv6, sounds like a good idea though.

One more IPv6 service

Anonymous's picture

Also have a look at They are still working on their interface (and everything else, I suppose), but for me it worked out fine.

Re: Getting IPv6 Using Freenet6 on Debian

Anonymous's picture

Nice story, Todd.

I understand from your article that the Freenet6.deb package implements a '6to4 relay'.

You may take a look at a (somewhat different) European approach to the same thing, the tunnelbroker (which is 6in4 as apposed to 6to4).

It can be found on and everybody with a stable 24/7 connection and static (non-dhcp!) node may join this free public service.

Kind regards, keep up the good work!

Pim van Pelt