Do you have an OpenWRT based router (sveasoft / dd-wrt / jassager all use OpenWRT), instead of setting up your ipv6 tunnel on the router itself, you can forward protocol 41 (which is ipv6) to an end point within your network (say another machine), this is what configuration i currently use and find it much easier to cope with. The router itself doesn’t have to support ipv6, just have iptables installed and working in this example 192.168.1.101 is my endpoint where i wish to setup the actual tunnel, and ppp0 is the WAN interface on the router.
the ip table inbound destination NAT for IPv6 tunnel
# iptables -t nat -A PREROUTING -i ppp0 -p 41 -j DNAT --to 192.168.1.101
the ip table inbound forwarding for IPv6 tunnel
# iptables -t filter -A FORWARD -i ppp0 -p 41 -d 192.168.1.101 -j ACCEPT
Now you can go ahead and setup your ipv6 tunnel using any methods which don’t support NAT traversal!