Feb 16, 05:04 PM
Category  

…. so it turns out the crucial piece I was missing for ipv6 support on my LAN was to enable ipv6 on my desktop. Whoops, XP doesn’t have it on by default (go to a NIC’s Properties and click Install).

Since I had 99% of this set up before (ipv6 from the router was fine, just not behind it), this won’t be a step-by-step howto, but I want to write down how I think I go it. Don’t take me word-for-word, read the docs because that what I’d have to do if I ever did this again.

First up: Get ipv6 somehow. I got a tunnel from Hurricane Electric, so that’s how mine is set up.

I still find this confusing so here’s a table:

Interface ipv4 address ipv6 address ipv6 tunnel server
eth0 98.118.a.b n/a n/a
eth1 10.0.0.1 2001:470:1f07:gg1::1/64 n/a
hetunnel n/a 2001:470:1f06:gg1::2/64 2001:470:1f06:gg1::1/64

Your tunnel provider gives you all three ipv6 addresses in the table. Note the differences between them. You’re given a /64 (or more) to route; eth1 takes the first address in the block.

/etc/network/interfaces has the tunnel set up and also an ipv6 address for eth1:

iface eth1 inet6 static
address 2001:470:1f07:gg1::1
netmask 64

auto hetunnel
iface hetunnel inet6 v4tunnel
               address 2001:470:1f06:gg1::2
               netmask 64
               endpoint 209.51.y.z
               up ip route add ::/0 dev hetunnel
               up ip tunnel change hetunnel ttl 64

Restart interfaces etc, make sure you can ping over ipv6:

ping6 2001:19f0:feee::dead:beef:cafe

Step 2: Install Shorewall (shorewall-perl recommended) and Shorewall6. During this adventure I learned that I don’t understand ip6tables.. so I let someone smarter than me handle it. Shorewall has very good documentation. Have an install guide, a two-interface quickstart guide, a mixing ipv4 and ipv6 considerations page, and a 6to4 tunnel setup page. That was easy.

Then install radvd to allow LAN clients ipv6.

$ sudo aptitude install radvd
$ cat /etc/radvd.conf
 interface eth1
{
   AdvSendAdvert on;
   AdvLinkMTU 1280;
   MinRtrAdvInterval 30;
   MaxRtrAdvInterval 60;

   prefix 2001:470:1f07:gg1::/64
   {
     AdvOnLink on;
     AdvAutonomous on;
   };
};

Min/MaxRtrAdvInterval are to make Windows play better, adjust lower if waiting .5-1 minutes for ipv6 to come back is too much.

Restart radvd and restart/install ipv6 on your clients. And.. it just worked for me. Hooray!

Comment

Commenting is closed for this article.