Access IPv6 server behind router with IPv4

ipv4ipv6networkingssh-tunnelvpn

An IPv4 client in Germany should access an IPv6 server in the USA. This server is in a private home with a common home-router.

If it was an IPv4 server, I would just configure NAT and port forwarding to access the server, but in this case I also have the IPv4/IPv6 problem.

My idea (I did not try it yet) is, to establish two SSH tunnels to a third server from both, the client and the server. I don't know if that would work.

IPv4-Client <===SSH-Tunnel===>"My Ubuntu Proxy Server"<===>IPv6-Server

Could that work?
What better options are available?
Should I use OpenVPN instead of SSH-Tunnels?
Are there commercial solutions or providers? I mean, there are many VPN providers, so road warriors can browse the web securly, but in my case, I need to establish a connection between two road warriors.

Thank you for your input!
Best, schube

Best Answer

There are two well defined IPv6 via IPv4 tunnels that I have used.

  • 6in4 which allows point to point tunneling with static network blocks. This is what my tunnel broker provides.
  • 6to4 which generated IPv6 addresses based on your IPv4 address. It is easy configure, but not as stable. This is how I originally configured IPv6 access.

Both mechanisms will have issues if your IPv4 address changes. The would eliminate the need for a tunnel server.

Many VPNs support tunneling both IPv4 and IPv6 traffic. Setting up a secure VPN on your tunnel server would provide flexibility for private solution. This would enable you to firewall IPv6 on the tunnel server. The above solutions should have IPv6 firewalled on both ends.

rfc 7059 provides "A Comparison of IPv6-over-IPv4 Tunnel Mechanisms". It includes additional mechanisms that I do not have experience with.