IPV6

Stuff that I've learnt and found interesting while exploring ipv6

Thompson TG782T
This device does not have any ipv6 support and by default you will not be able to setup a protocol 41 tunnel to a tunnel broker through it, however with a bit of fiddling it is possible.

The first step is to allow the device to respond to icmp echo requests (ping) from the Internet as your tunnel broker (well at least Hurricane Electric) will want to ping your ipv4 adress before attempting to establish the protocol 41 tunnel.
  • telnet to your Thomson router (default details are user:admin password:<blank>)
  • {admin}=>service system ifadd name=PING_RESPONDER group=wan
If you don't want the device to respond to pings from the Internet after the tunnel has been initially established then reboot the router or you can remove it with {admin}=>service system ifdelete name=PING_RESPONDER group=wan . If you do want it to remain through a reboot then issue the {admin}=>saveall command.

This is all that is required, however an interesting "feature" will rear it's ugly head and frustrate you no end unless you do a bit more. Your tunnel will establish and you will be able to ping out from your ipv6 host to the Internet, however you will only be reachable to other hosts on the ipv6 Internet so long as that ping (or any other ipv6 traffic) remains. A few seconds after you stop that ping your router will stop forwarding packets initiated from the ipv6 Internet to you. This is because the router doesn't have a static NAT entry defined. It works fine when you initiate the traffic as it will setup a dynamic NAT entry, however that entry will time out as soon as you stop sending traffic. To fix this you need to setup a static NAT entry.

I thought I had this working, but now realise it's not. I can't setup a PAT entry for protocol 41 (6to4) as the Telstra Thomson TG782T router only seems to like tcp, udp and gre. This is a work in progress and I'll update it when I have worked it out, but for now this config does NOT work!
  • telnet to your Thomson router (default details are user:admin password:<blank>)
  • {admin}=>nat mapadd intf=LocalNetwork type=nat outside_addr=0.0.0.1 inside_addr=10.0.0.7 protocol=6to4
  • {admin}=>nat tmpladd group=wan type=nat outside_addr=0.0.0.1 inside_addr=10.0.0.7 protocol=41 mode=inbound

Ubuntu 10.04

sudo modprobe ipv6
sudo ip tunnel add he-ipv6 mode sit remote <tunnel brokers ipv4 address>local <your own external ipv4 address> ttl 255
sudo ip link set he-ipv6 up
sudo ip addr add <the ipv6 address assigned to you by your tunnel broker>/64 dev he-ipv6
sudo ip route add ::/0 dev he-ipv6
sudo ip -f inet6 addr