Indeed, the transition to IPv6-only networks is a timely and important step, and this is an interesting approach. In my opinion, NAT64 in combination with DNS64 presents the most practical solution for home networks. This approach can be fully implemented by consumer routers, eliminating the need for any changes to client devices. If router manufacturers were to make NAT64 with DNS64 a default feature or, at the very least, an easily selectable option, it would significantly advance our progress toward widespread adoption of IPv6-only networks.
Meanwhile, one of the most annoying holdouts on the service side is github.com - I've had a collection of v6-only systems for years and github seems to be the one recurring thing that requires bolting on kludge of some sort.<p>Come on github! It's not that hard!
Using LD_PRELOAD for IPv4 seems to me like using the wrong tool for the job.<p>> "Most of the apps I use support IPv6 but there are some cases when lack of IPv4 connectivity on my machine negatively affects experience."<p>Just install clatd to get 464XLAT so hardcoded ipv4 get routed to 192.0.0.1 (the clat iface is the default gw for ipv4) which does NAT64 through tayga too.<p>IMHO the best strategy is a mix of strategies:<p>- 1. Clatd doing 464XLAT (RFC 6877) so:<p>- 1.1 Stateful protocol translation (RFC 6146) at CG-NAT64<p>- 1.2 Stateless protocol translation (RFC 6145) at the UE<p>- 2. DNS64 (RFC 6147) mechanisms at the DNS server returning padded AAAA for A only entries<p>- 3. IPv4 embedding into IPv6 addresses (RFC 6052 section 2.2)<p>Suggested reading: <a href="https://www.apnic.net/wp-content/uploads/2017/01/IPv6_Migration_Strategies_for_Mobile_Networks_Whitepaper.pdf" rel="nofollow">https://www.apnic.net/wp-content/uploads/2017/01/IPv6_Migrat...</a>
Kinda sad that <a href="https://news.ycombinator.com/" rel="nofollow">https://news.ycombinator.com/</a> is still only available via legacy IPv4. Any idea who could fix this and enable IPv6 on this site?
The tnat tool is quite clever. I previously ran a IPv6 only infrastructure and it worked really well, except for some "old" applications written in C which only handled IPv4. Which I had known of this hack.
> Luckily for us Linux provides exceptionally easy way to intercept some specific library functions using simple dynamically linked library: LD_PRELOAD<p>Doesn't LD_PRELOAD only work for non-statically linked executables?
Honest question:<p>Does anybody have experience with this behind an ISP CGNAT network that provides IPV6 as well? I'm getting worn down from trying to deal with CGNAT and IPv4 for my homelab...
OpenBSD, with PF and Unbound, has excellent NAT64/DNS64 support. Unfortunately, my ISP is still IPv4, but with HE tunnel broker I can at least experiment with an IPv6 only VLAN. Works great on all clients I tested: Windows, Debian, and *BSDs.<p>BTW, my ISP has been promising a /60 for many months now. Apparently, it's about their "provisioning software" they inherited. Huh, equipment less of a concern in this case.