NAT64 by Daniel Richter

NAT64 is an IPv6 transition mechanism that allows IPv6-only hosts to access IPv4-only hosts. To learn more consult RFC7269.

Getting Started

NAT64+DNS64 (Beginner)

NAT64 is usually combined with DNS64 to make the translation transparent to clients. This will likely cover 99% of your use cases, but please keep in mind that IPv4 literals (e.g. ping 1.1.1.1 ) won't work since DNS isn't involved. To use the NAT64 gatway simply configure your devices to use the following DNS server:

2a01:4f8:1c1b:757c::1

That's it. To test connectivity run curl ipv4.icanhazip.com, if you get 188.245.35.53 (or any other public ip that isn't yours) that means your connection was tunneled through the gateway and everything works fine.

NAT64 only (Advanced)

If you have advanced use cases and know what you're doing (PREF64,DHCP108, 464xlat,clat) you can also directly use the NAT64 prefix:

2a01:4f8:1c1b:757c:64::/96

Got any questions?

I intentionally kept everything brief because NAT64 isn't just one simple software that you can host, but a bunch of algorithms that all translate between IPv6 and IPv4, differing slightly in how exactly that translation is done. Fortunately you don't need to know any of those details to use a gateway, but if you are interested in what's happening behind the scenes check these links: If you want to selfhost a gateway, you can use the following open source software (I use jool with unbound). If you have any questions left regarding NAT64 please reach out to me at nat64@danielrichter.codes or open an issue on github