For client-server networking, NAT traversal is a solved problem.
For peer-to-peer networks it is not possible to do in general,
but the potential of these networks in the liberation of users
from "central" services is quite big. The 6bed4 tunnel allows
applications to be designed as peer-to-peer IPv6 applications
with only a fallback (to your own tunnel server) if necessary.
IPv6 brings benefits in terms of network address policy, peer-to-peer
support and privacy. By reducing IPv4 to backward compatibility we
set the tone for a long-overdue transition. The approach given below
makes it very attractive too; full IPv6 benefits for those who make
the effort to at least install a tunnel, with fully reliable
client-server usage patterns for those who stick to IPv4.