Tunnelling

Essentially for each part between IPv6 and IPv4, we add/remove the IPv6 header between networks that support one protocol or the other.

The reason this works is that the address is "spoofed" in that the header information is obfuscated when we go from IPv6 to IPv4, and vice versa. The devices at the interims have to "make" addresses on the fly so they can send the traffic over the network.

VPNs (virtual private networks) will actually just make an encrypted header that decodes the payload, then all the traffic over the network will not be able to read it, until it reaches the client who can decode the encryption.

This is in contrast to translation, where the header itself has to be converted one-for-one, rather than be included in the payload:

Some solutions do this and force intermediate routers to support both. DNS servers translate between both IPv4 and IPv6 (they give you 4 if you support 4, or 6 if they support 6. If the server supports only the 4 address it'll give you that).