As the IPv4 addresses begins to run out I finally invested the time to investigate and implement IPV6. As my ISP has not yet announced availability of IPV6 addresses I chose to implement a 6to4 tunnel. This is simple to implement, and currently well supported. My external firewall is an ASUS wireless router running OpenWRT. As I have a static IP address, my implementation is simpler than is required by a dynamic address. Support for dynamic IPv4 addresses is not covered here, but this configuration should work as long as your address does not change.
I initially created a 6to4 implementation without a firewall. Then to secure my systems I implemented a firewall using Shorewall6-lite. Until I figured out how to configure the 6tunnel script, I used the command line to bring up the network. This documentation uses of the 6tunnel script instead of the manual commands. My configuration does not yet include any IPsec functionality. Continue reading