Daniel's page

In the separate documents Linux Setup Issues I describe some general Linux setup quirks and tips, and in Upgrading to 2.4 there's some upgrading hints.

IPv6 On Linux

I've read about IPv6 several years. I've listened to talks about it, I even did a talk about it. Now it was about time that I made it reality and installed it on my own box.

Kernel Config

I started out with a basic working Linux 2.4 kernel.

Start with enter the 'Code maturity level options' and set Prompt for development and/or incomplete code/drivers to yes.

Enter the 'Networking Options' menu and set the following options to yes:

I had them all to 'yes' and none as module, as the Bieringer IPv6 page claims that may cause problems.

Recompile, make it a boot image, reboot on the new kernel.

Edit some files

In order for some tools to work, you must edit your /etc/protocols file and enter the following section:

ipv6       41 IPv6       # IPv6
ipv6-route 43 IPv6-Route # Routing Header for IPv6
ipv6-frag  44 IPv6-Frag  # Fragment Header for IPv6
ipv6-crypt 50 IPv6-Crypt # Encryption Header for IPv6
ipv6-auth  51 IPv6-Auth  # Authentication Header for IPv6
ipv6-icmp  58 IPv6-ICMP  icmpv6 icmp6   # ICMP for IPv6
ipv6-nonxt 59 IPv6-NoNxt # No Next Header for IPv6
ipv6-opts  60 IPv6-Opts  # Destination Options for IPv6

You might also like to add a few basic IPv6-hosts in the /etc/hosts file:

::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Getting IPv6 Tools

Now when your kernel is IPv6 aware, we need to get some tools installed that are:

Get them, configure, make and make install. Voila, now you can use your new 'ifconfig' to list your IPv6-addresses and ping6 to ping your interface's IPv6-address!

Basic Testing

'ping6 0::1' pings your localhost.

'route -A inet6' displays your IPv6-routes

Additional Tools

Tools you won't have to install but that may make things more comfortable:

Valuable Resources

daniel at haxx dot .se