…. 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 64auto 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.