Chrabří uživatelé síťových aplikací IPv6 jistě nestojí o to, aby se tím znemožnila nebo i jen zhoršila možnost komunikace se stávajícím Internetem. V části [[bsd_sockets_-_prevody_mezi_jmeny_a_adresami|Převody mezi jmény a adresami]] jsme si ukázali, jak je možné pomocí funkce //getaddrinfo()// a příznaku ''AI_V4MAPPED'' zajistit, aby se jméno DNS resolvovalo alespoň pomocí záznamu typu A, pokud nejsou k dispozici žádně záznamy typu AAAA. Síťová aplikace IPv6 ale může navázat komunikaci s uzlem IPv4 sama tím, že v adresové struktuře ''sockaddr_in6'' použije IPv4-mapovanou adresu IPv6. Příslušná knihovna implementující API //BSD Sockets// pak musí za běhu překládat mezi protokoly IPv4 a IPv6 tak, aby uzel IPv4 dostával jen datagramy IPv4 a naopak ty, které od něj přijdou, musí být zase převedeny na IPv6 s IPv4-mapovanými adresami. Aplikace používající sokety IPv6 proto obvykle vůbec nepotřebují vědět, jestli komunikují pomocí nativních adres IPv6 anebo IPv4-mapovaných adres. Ty aplikace, které to z nějakého důvodu chtějí vědět, mohou použít makro ''IN6_IS_ADDR_V4MAPPED'' definované v hlavičkovém souboru //netinet/in.h//.