all following commands assumes you are root.
1.create the PPTP tunnel
pptpsetup --create IPv6VPN --server tserv3.fmt2.ipv6.he.net --username bearice%63106 --password ***
then you wil be able to connect the pptp using "pon IPv6VPN", but it could not reconnect if connection is dropped.
change file /etc/ppp/peers/IPv6VPN , the first two lines are added for reconnect on fails.
pty "pptp tserv3.fmt2.ipv6.he.net --nolaunchpppd"
then goto /etc/network/interfaces
add these lines:
iface he-vpn inet ppp
iface he-ipv6 inet6 v4tunnel
this will make your tunnel connected on startup.
however you would find the 6in4 tunnel not working now:
Both the PPTP server and the 6in4 server have the same IPv4 address, Since routing normally only pays attention to destination addresses, and because the PPTP software puts a host route into the main routing table for the HE server so that the PPTP traffic doesn't try to use the ppp0 interface itself, a "special case" route is put in so that when the source IPv4 matches the PPTP assigned IP, it uses a different routing tabled (called "pptp" in this case), which has the default route pointing through the ppp0 interface. This way, "normal" traffic uses your standard default route, and traffic originating from the PPTP IPv4 (such as your 6in4 tunnel's traffic) takes the PPTP tunnel.
thanks to jimb
add a route table first:
echo "1 pptp" >> /etc/iproute2/rt_tables
then create file /etc/ppp/ip-up.d/vpn_route and chmod +x it：
ip route add default dev $PPP_IFACE table pptp
ip rule add from $PPP_LOCAL table pptp
and /etc/ppp/ip-down.d /vpn_route:
ip route del default dev $PPP_IFACE table pptp
ip rule del from $PPP_LOCAL table pptp
by now, you can use "ifup he-vpn" to bring PPTP tunnel up and use "ping6 2001:470:1f04:cab::1" to have a test.
at last, thank to HE.net for tunnelbroker service