Conversor IPv4 para IPv6
Digite um endereço IPv4 para ver todos os endereços IPv6 que o carregam, do formato IPv4 mapeado dos seus logs ao NAT64 e ao 6to4, escritos no padrão da RFC 5952 e por extenso, cada um marcado como em uso, raro hoje ou obsoleto.
Lido como decimal com pontos
Com pontos, um único número (3221225985), hex ou uma URL. A conversão é feita no seu navegador; nada é enviado.
Como converter IPv4 para IPv6?
Escreva os 32 bits do endereço IPv4 como dois grupos hex e coloque-os onde um formato IPv6 os guarda: no formato IPv4 mapeado, o mais comum, isso fica depois de ::ffff:, então 192.0.2.33 vira ::ffff:c000:221, escrito ::ffff:192.0.2.33.
Cada parte decimal vira dois dígitos hex (192 = c0, 0 = 00, 2 = 02, 33 = 21), e os quatro pares formam dois grupos de 16 bits. A RFC 5952 recomenda manter a forma com pontos depois de ::ffff: porque ela mostra o que os bits significam.
Isso só muda a forma de escrever o endereço. Não dá a um dispositivo um endereço IPv6 nem uma conexão IPv6; isso vem da rede.
c00002023321
Seu IPv4 em hex192.0.2.33 é c0 00 02 21: os 8 dígitos que toda forma IPv6 carrega.Para onde vão os bitsOs mesmos 8 dígitos vão para os bits 96–127 no mapeado e no NAT64, e para os bits 16–47 no 6to4.Ainda em uso?Em uso, raro hoje ou obsoleto, segundo as RFCs e os dados de tráfego.O prefixo da sua redeInforme um prefixo NAT64 e o comprimento para obter o endereço que o seu tradutor usa.Curta ou completaTexto RFC 5952, a outra grafia embaixo e os 32 dígitos completos com um só botão.Qual forma IPv6 devo usar?
Use o formato IPv4 mapeado no software (sockets, logs, bancos de dados) e o prefixo NAT64 da sua rede numa rede só IPv6; as outras formas são raras hoje ou foram aposentadas.
Endereços mapeados nunca trafegam pela rede. Endereços NAT64 trafegam, e o prefixo bem conhecido 64:ff9b::/96 só pode carregar endereços IPv4 globais (RFC 6052). O 6to4 também precisa de um endereço IPv4 público.
Os endereços IPv4 compatíveis são obsoletos, e o prefixo IPv4 traduzido do SIIT deu lugar aos prefixos da RFC 6052.
| Formato | Para que serve | Status | 192.0.2.33 vira |
|---|---|---|---|
| IPv4 mapeadoRFC 4291 | Sockets, logs e bancos de dados | Em uso | ::ffff:192.0.2.33 |
| NAT64, prefixo bem conhecidoRFC 6052 | Redes só IPv6 chegando ao IPv4 | Em uso | 64:ff9b::c000:221 |
| NAT64, bloco de uso localRFC 8215 | O NAT64 próprio de uma rede, dentro de 64:ff9b:1::/48 | Em uso | 64:ff9b:1::c000:221 |
| 6to4RFC 3056 | Túneis automáticos, hoje raros | Raro hoje | 2002:c000:221::/48 |
| ISATAPRFC 5214 | Túneis dentro de um site, hoje raros | Raro hoje | fe80::5efe:c000:221 |
| IPv4 traduzidoRFC 2765 | Antiga tradução sem estado (SIIT) | Raro hoje | ::ffff:0:192.0.2.33 |
| IPv4 compatívelRFC 4291 | Nenhum: aposentado | Obsoleto | ::c000:221 |
O que é um endereço IPv4 mapeado em IPv6?
É um endereço IPv4 escrito como IPv6: 80 bits zero, 16 bits um e depois o endereço IPv4 de 32 bits (::ffff:0:0/96), para que um software com um único socket IPv6 também atenda pares IPv4.
Endereços mapeados vivem só dentro do software; a IANA marca o bloco como não encaminhável. Isso tem um lado de segurança: um pacote vindo de ::ffff:127.0.0.1 pode passar por verificações feitas para a própria máquina, então os filtros devem desfazer o mapeamento antes de comparar (RFC 4942).
Os bancos de dados os reconhecem: o IS_IPV4_MAPPED() do MySQL aceita o final com pontos ou em hex, e o PostgreSQL os imprime em notação mista.
0000:0000:0000:0000:000016 bits umffffo endereço IPv4, 32 bits192.0.2.33accept() → ::ffff:192.0.2.33Como funciona a migração do IPv4 para o IPv6?
As redes rodam os dois protocolos lado a lado (dual stack), e redes só IPv6 chegam à internet IPv4 por tradução: NAT64 com DNS64, ou 464XLAT nos celulares.
Com NAT64, o DNS64 monta um registro AAAA a partir do registro A de um host, e o tradutor leva o tráfego até o IPv4. Com 464XLAT, um tradutor no celular (CLAT) transforma os pacotes IPv4 do app em IPv6, e o NAT64 da operadora (PLAT) os transforma de volta em IPv4 em endereços públicos compartilhados.
A migração está pela metade: em 22 de outubro de 2026, 47,13% dos usuários chegaram ao Google por IPv6 (Google), e o APNIC Labs contou 43,8% dos usuários no mundo como capazes de usar IPv6.
Dual stack
IPv4 + IPv6IPv4 · IPv6Servidor192.0.2.33 · 2001:db8::33NAT64 + DNS64
IPv6IPv6DNS64AAAA 64:ff9b::c000:221IPv6NAT6464:ff9b::/96IPv4Servidor IPv4192.0.2.33464XLAT
IPv4IPv4CLATCelularIPv6PLATNAT64IPv4Servidor IPv4192.0.2.33
dos usuários têm capacidade IPv6 (APNIC Labs)IPv4 e IPv6 conseguem se comunicar?
Não diretamente: um host só IPv6 e um host só IPv4 precisam de um tradutor entre eles, como o NAT64 para clientes IPv6 chegarem a servidores IPv4, enquanto hosts dual stack simplesmente usam o protocolo que o outro lado tem.
Os dois protocolos têm formatos de pacote diferentes, então algo precisa reescrever cada pacote. Tradutores sem estado (SIIT, RFC 7915) mapeiam endereços um para um usando prefixos da RFC 6052; o NAT64 compartilha endereços IPv4 entre muitos clientes IPv6.
É por isso que a maioria das redes mantém os dois protocolos funcionando: um dispositivo dual stack não precisa de tradução nenhuma.
| Cliente ↓ · Servidor → | Só IPv4 | Só IPv6 | Dual stack |
|---|---|---|---|
| Só IPv4 | IPv4 | tradutor (SIIT) | IPv4 |
| Só IPv6 | NAT64 + DNS64 | IPv6 | IPv6 |
| Dual stack | IPv4 | IPv6 | qualquer um |
Como converter IPv4 para IPv6 em código?
A maioria das linguagens faz isso numa chamada: o IPv4Address.ipv6_mapped do Python, o netip do Go com Is4In6 e Unmap, o INET6_ATON do MySQL com IS_IPV4_MAPPED e o tipo inet do PostgreSQL.
O Python 3.13 acrescentou ipv6_mapped e imprime endereços mapeados com pontos. O Addr.String do Go imprime ::ffff:192.0.2.33 e o Unmap devolve o endereço IPv4 simples. O net.isIP() do Node retorna 6 para um endereço mapeado, e o net.BlockList aplica regras IPv4 a ele.
› import ipaddress ipaddress.IPv4Address('192.0.2.33').ipv6_mapped IPv6Address('::ffff:192.0.2.33')
Python 3.13+
› a := netip.MustParseAddr("::ffff:192.0.2.33") fmt.Println(a.Is4In6(), a.Unmap()) true 192.0.2.33
Go net/netip
› SELECT IS_IPV4_MAPPED(INET6_ATON('::ffff:192.0.2.33')); 1
MySQL 8.4
› SELECT inet '::ffff:192.0.2.33'; ::ffff:192.0.2.33
PostgreSQL 16
› net.isIP('::ffff:192.0.2.33') 6
Node.js net
Perguntas frequentes
Como fica 192.168.1.1 em IPv6?
Converter IPv4 para IPv6 dá um endereço IPv6 ao meu dispositivo?
Qual forma IPv6 devo guardar num banco de dados?
::ffff:192.0.2.1 é o mesmo que ::ffff:c000:201?
Por que 64:ff9b::10.1.1.1 é inválido?
Qual é o endereço 6to4 de um endereço IPv4?
Quantas pessoas usam IPv6?
Como celulares só IPv6 chegam a sites IPv4?
Como converter IPv4 para IPv6 em Python?
Algo que eu digito é enviado ao seu servidor?
Ferramentas relacionadas
IPv6 para IPv4
Encontre o IPv4 dentro de um endereço IPv6: mapeado, NAT64, 6to4, Teredo e ISATAP, bit a bit
Compressão IPv6
Abrevie ou expanda endereços IPv6 pela RFC 5952 e veja qual regra removeu cada zero
Conversor de IP para Decimal
Endereço IP para decimal, hex, binário e octal e de volta, com os valores posicionais de cada octeto
Qual é Meu IP
Seu IP público IPv4 e IPv6 de uma vez, com a rede, a localização e uma checagem de VPN
Teste IPv6
Teste se seu IPv6 funciona, que família seu navegador usa e se um site tem IPv6
Calculadora de Sub-rede
Rede, broadcast, hosts utilizáveis e máscaras de qualquer bloco IPv4 ou IPv6, com VLSM, divisões e sub-redes na nuvem
DNS Reverso
Encontre hostnames associados a qualquer endereço IP via registros PTR
Consulta DNS
Todos os registros DNS direto dos servidores do domínio, ao lado do cache do Google e da Cloudflare