IPv6 using Charter’s 6RD on Ubuntu behind an IPv4 only router.

Finally figured out how to get a 6rd tunnel setup with Charter. My problem was that 1) I wasn’t paying attention to the examples and 2) I have my IPv6 router behind an IPv4 only router. So unlike the examples, I needed to use the private IP address instead of the public for the tunnel. (Like you do for 6in4.)

You can find my setup script here.

In my /etc/network/interface I added the following to my eth0 interface.

post-up /etc/network/6rd || echo 1;
pre-down ip tunnel del tun6rd || echo 1;

In the original script, the author has PREFIX:0::1/32 assigned to the external interface and PREFIX:1::1/64 assigned to the inside. I’m not sure the reasoning for this as both reside on the same /64 subnet. To me, it would make more sense to use PREFIX:: for the outside and PREFIX::1 for the internal so they are right next to each other.

I hope this helps other Charter customers figure out their own ‘native’ IPv6 connectivity.