Synthesize A records when only having AAAA [closed]

Solution 1:

DNS only translates names to IP addresses. It can't solve a v4 vs v6 problem on it's own.

DNS64 is used in conjunction with stateful NAT64, to allow v6-only clients to access v4-only servers. A /96 of v6 space is allocated to the NAT64 gateway. This provides enough IPv6 addresses to represent the whole IPv4 internet. The DNS64 then provides a mapping from DNS names to IPv6 addresses in the block allocated to the NAT64.

The problem with trying to do the opposite should be obvious, V6 addresses are big, V4 addresses are small. So you can map all of v4 space with a tiny corner of v6 space but you can't do the converse.

If all your services are http/https, then you can use a reverse proxy or content distribution network, to distribute the traffic based on application level metadata. For services other than http/https that run over modern versions of tls, you can also use the "server name indication" headers to distribute traffic, though it may be harder to find an operator that will do this. If your servers run other protocols then it is likely that dedicated v4 IPs will be needed, which will obviously cost more.