Conversor IPv4 ↔ IPv6
Privacidad por diseño — se ejecuta completamente en tu navegador
Cambia el sentido y pega un IPv4 como 192.0.2.1 para ver las formas IPv4-mapped (::ffff:192.0.2.1), expandida completa e IPv4-compatible. Cambia a IPv6 → IPv4 para extraer el IPv4 incrustado de una dirección mapeada, o ver la forma comprimida y expandida de cualquier IPv6.
Tres maneras de representar IPv4 dentro de IPv6
La RFC 4291 define dos formas de portar un IPv4 dentro de un IPv6. La actual es IPv4-mapped: ::ffff:a.b.c.d. La antigua es IPv4-compatible: ::a.b.c.d, obsoleta para código nuevo pero presente en documentación antigua y algunos stacks heredados. También devolvemos la forma expandida completa (ocho grupos hex de 16 bits, sin atajos), útil para grep en logs y comparaciones byte a byte.
Notación comprimida frente a expandida
IPv6 admite un atajo textual: la sucesión más larga de grupos consecutivos en cero se sustituye por un único ::. Así 2001:db8:0:0:0:0:0:1 queda en 2001:db8::1. El :: solo puede aparecer una vez. La RFC 5952 define las reglas — hex en minúsculas, comprimir solo la cadena más larga, descartar ceros a la izquierda en cada grupo. La forma comprimida es la que publicas; la expandida la esperan herramientas como ipset o BPF.
Por qué importa el debugging dual-stack
Cuando un servidor escucha en un socket AF_INET6 sin IPV6_V6ONLY, el kernel expone clientes IPv4 como direcciones ::ffff:. Los logs de la aplicación quedan con esas formas mapeadas, y eso hace fallar el grep contra listas IPv4 esperadas. Pásalas por el convertidor para normalizar antes de comparar — o para confirmar que un túnel está entregando tráfico 6to4 correctamente.
Preguntas frecuentes
- ¿Qué es una dirección IPv6 mapeada de IPv4?
- Vive en ::ffff:0:0/96 (RFC 4291). Los sockets dual-stack exponen clientes IPv4 como direcciones mapeadas, así un único bind sirve ambos protocolos.
- ¿Por qué hay dos formatos con prefijo cero?
- ::a.b.c.d es IPv4-compatible, obsoleta por la RFC 4291. ::ffff:a.b.c.d es IPv4-mapped, vigente. Mostramos ambas porque sistemas antiguos aún emiten la compatible.
- ¿::ffff:a.b.c.d está obsoleto?
- No — IPv4-mapped es la forma recomendada hoy para representar endpoints IPv4 en código dual-stack. La obsoleta es la IPv4-compatible (sin ffff).
- ¿Puedo extraer IPv4 de cualquier IPv6?
- Solo cuando el IPv6 está en los rangos mapped o compatible. Para un IPv6 normal como 2001:db8::1 no hay IPv4 que extraer; la herramienta solo mostrará las formas expandida y comprimida.
- ¿Cuál es la diferencia entre :: y 0:0:0:0:0:0:0:0?
- 0:0:0:0:0:0:0:0 es la dirección unspecified explícita. :: es la misma dirección comprimida. La forma comprimida es la representación canónica en IPv6.
- ¿La IP que escribí sale de la página?
- No. La conversión se ejecuta en JavaScript dentro de esta pestaña. No vemos, no registramos ni almacenamos la dirección.