UtilityKit

500+ fast, free tools. Most run in your browser only; Image & PDF tools upload files to the backend when you run them.

IPv4 to IPv6 Converter

Mapped IPv6 textual forms such as ::ffff dotted quartet.

About IPv4 to IPv6 Converter

IPv4 to IPv6 Converter on UtilityKit transforms any dotted-decimal IPv4 address into its standardised IPv6 representations instantly in your browser. Paste an address like 192.168.1.1 and receive the IPv4-mapped IPv6 address (::ffff:192.168.1.1), its fully expanded 128-bit hexadecimal form, the compressed RFC 5952 notation, and the 6to4 tunnel prefix used by the 2002::/16 range. The tool also performs the reverse: paste an IPv4-mapped IPv6 address and extract the original IPv4. Understanding how IPv4 and IPv6 coexist is essential for developers testing dual-stack configurations, writing socket code that handles both address families, configuring reverse DNS (PTR) records, or debugging mixed-mode networking in Docker, Kubernetes, and cloud environments where the kernel reports connections using ::ffff: prefixed addresses.

Why use IPv4 to IPv6 Converter

Dual-Stack Debugging

Modern operating systems and containers report IPv4 connections as ::ffff: addresses in logs and socket APIs. Convert between formats to correlate IPv4 firewall rules with IPv6 socket output.

RFC Compliant Output

All output formats follow RFC 4291 (IPv6 addressing), RFC 5952 (compressed text representation), and RFC 3056 (6to4) — safe to use directly in configuration files and DNS records.

PTR Record Construction

Reverse DNS PTR records for IPv4-mapped addresses follow a specific nibble-reversed format. The tool shows the ARPA PTR suffix needed for ip6.arpa zone entries.

Socket Code Reference

When writing cross-family socket code in Python, Go, or C, you need the exact ::ffff: form to bind or connect to IPv4 addresses via an IPv6 socket. Verify the format instantly.

Transition Mechanism Support

6to4 tunnelling embeds IPv4 addresses inside 2002::/16 prefixes. Inspect any 6to4 address to extract the embedded IPv4 and diagnose tunnel routing issues.

No Server Required

All bit manipulation and format conversion runs entirely in your browser — no internal IP addresses are transmitted to external services.

How to use IPv4 to IPv6 Converter

  1. Enter a dotted-decimal IPv4 address (e.g. 203.0.113.45) into the input field. Private, public, loopback, and multicast addresses are all accepted.
  2. The IPv4-mapped IPv6 form appears immediately: ::ffff: followed by the original dotted-quad (e.g. ::ffff:203.0.113.45). This is how dual-stack sockets represent IPv4 connections internally.
  3. Read the fully expanded 128-bit hexadecimal form — 8 groups of 4 hex digits separated by colons — used when a complete, unambiguous representation is required in configuration files.
  4. The compressed RFC 5952 notation replaces leading zero groups with :: — the standard form returned by most networking tools and system calls.
  5. Read the 6to4 address under the 2002::/16 prefix — formed by embedding the 32-bit IPv4 address in bits 16–47 of the IPv6 address. Used by legacy 6to4 tunnelling routers.
  6. To reverse-convert, paste an IPv4-mapped IPv6 address (::ffff:x.x.x.x) into the input and the tool extracts and validates the original IPv4 address.

When to use IPv4 to IPv6 Converter

  • When your application logs show ::ffff:10.0.0.5 and you need to confirm it is an IPv4-mapped address representing 10.0.0.5 in a dual-stack environment.
  • When writing IPv6 socket code that needs to accept IPv4 connections and you need the exact ::ffff: syntax for bind() or connect() calls.
  • When configuring a reverse DNS PTR record for a dual-stack host and you need the ip6.arpa nibble-reversed format for the IPv4-mapped address.
  • When debugging a 6to4 tunnel and you need to extract the embedded IPv4 address from a 2002::/16 prefix to verify routing table entries.
  • When migrating an application from IPv4-only to dual-stack and you need to document every IPv4 address with its IPv6-mapped equivalent for firewall rule updates.
  • When studying for networking certifications (CCNA, JNCIA) and you need to practice IPv4-to-IPv6 address conversion and verify your manual calculations.

Examples

Public IPv4 to dual-stack IPv6 forms

Input: 203.0.113.45

Output: IPv4-mapped: ::ffff:203.0.113.45 | Expanded: 0000:0000:0000:0000:0000:ffff:cb00:712d | 6to4 prefix: 2002:cb00:712d::/48

Private LAN address conversion

Input: 192.168.1.1

Output: IPv4-mapped: ::ffff:192.168.1.1 | Expanded: 0000:0000:0000:0000:0000:ffff:c0a8:0101 | Compressed: ::ffff:c0a8:101 | 6to4: non-routable (private IPv4)

Loopback address mapping

Input: 127.0.0.1

Output: IPv4-mapped: ::ffff:127.0.0.1 | Expanded: 0000:0000:0000:0000:0000:ffff:7f00:0001 — appears in dual-stack server logs as ::ffff:127.0.0.1 for local connections

Tips

  • When a Node.js or Python server bound to '::' reports a client address of ::ffff:10.0.0.1, strip the ::ffff: prefix to get the real client IPv4 for logging and access-control purposes.
  • 6to4 addresses only work with public IPv4 addresses — if you are behind NAT with a 192.168.x.x address, 6to4 tunnelling will not route correctly and native IPv6 or a configured tunnel broker is needed instead.
  • In Docker networks, container-to-container communication can surface ::ffff: addresses depending on whether the daemon and bridge are dual-stack. Use this tool to verify address mappings when debugging container networking.
  • IPv6 has no concept of broadcast — the IPv4-mapped form is useful for representing addresses in dual-stack code but does not grant broadcast behaviour on the IPv6 side.
  • When writing iptables or nftables rules for a dual-stack host, remember that ip6tables rules on ::ffff: mapped addresses are separate from ip4tables rules on the same IPv4 address — both sets of rules may need updating.

Frequently Asked Questions

What is an IPv4-mapped IPv6 address?
An IPv4-mapped IPv6 address embeds a 32-bit IPv4 address in the last four bytes of a 128-bit IPv6 address, preceded by 80 zero bits and 16 one-bits. Written as ::ffff:x.x.x.x, it allows IPv6 sockets to accept IPv4 connections transparently on dual-stack systems.
What is the difference between IPv4-mapped and IPv4-compatible IPv6 addresses?
IPv4-mapped (::ffff:x.x.x.x, RFC 4291 §2.5.5.2) is used by the OS for representing IPv4 socket connections in IPv6 APIs and is still current. IPv4-compatible (::x.x.x.x, RFC 4291 §2.5.5.1) was a deprecated automatic tunnelling mechanism and should not be used in new deployments.
What is 6to4 and when is it used?
6to4 (RFC 3056) is a transition mechanism that tunnels IPv6 traffic over IPv4 networks by embedding the IPv4 address into a 2002::/16 prefix. A host with public IPv4 address a.b.c.d gets the 6to4 prefix 2002:aabb:ccdd::/48. It has largely been superseded by native IPv6 and provider-managed tunnels.
Does this tool support private (RFC 1918) IPv4 addresses?
Yes. Private addresses like 192.168.x.x, 10.x.x.x, and 172.16–31.x.x are converted to their mapped and 6to4 forms. Note that 6to4 with private IPv4 addresses produces non-routable 2002:: prefixes because 6to4 relays require globally routable IPv4 addresses.
How do I read an IPv6 address in expanded form?
The expanded form shows all 128 bits as 8 groups of 4 hexadecimal digits. For example ::ffff:192.168.1.1 expands to 0000:0000:0000:0000:0000:ffff:c0a8:0101. Each group represents 16 bits; the last two groups encode the IPv4 octets in hex (192=c0, 168=a8, 1=01, 1=01).
Why does my web server log show ::ffff:127.0.0.1 instead of 127.0.0.1?
Your server is listening on an IPv6 socket (possibly bound to :: or [::]) and the OS is mapping the IPv4 loopback connection to its IPv6-mapped form. This is normal dual-stack behaviour. The addresses are equivalent — ::ffff:127.0.0.1 represents the same loopback as 127.0.0.1.
What is the ip6.arpa format used for?
Reverse DNS (PTR) records for IPv6 addresses use the ip6.arpa zone. The address is written as individual nibbles in reverse order, separated by dots. For ::ffff:192.0.2.1, the relevant ip6.arpa label derived from the full expansion is used in the DNS zone file for reverse lookups.
Can I convert IPv6 addresses back to IPv4?
Yes, for IPv4-mapped addresses (::ffff:x.x.x.x). Paste the mapped form into the input and the tool extracts and validates the embedded IPv4 address. Pure IPv6 addresses that are not mapped forms have no equivalent IPv4 address.

Explore the category

Glossary

IPv4-Mapped IPv6 Address
A 128-bit IPv6 address that embeds a 32-bit IPv4 address in its lower bytes, preceded by ::ffff:. Written as ::ffff:x.x.x.x. Used by dual-stack operating systems to represent IPv4 connections in IPv6 socket APIs.
6to4
An IPv6 transition mechanism (RFC 3056) that tunnels IPv6 packets over IPv4 infrastructure by embedding the public IPv4 address in the 2002::/16 prefix range. Largely superseded by native IPv6 deployment.
Dual Stack
A network configuration where a host, interface, or application supports both IPv4 and IPv6 simultaneously. The OS maps IPv4 connections to IPv6 socket APIs using ::ffff: addresses.
Compressed IPv6 Notation
The abbreviated IPv6 text format defined in RFC 5952, where one or more consecutive groups of all-zero bits are replaced by :: and leading zeros in each group are omitted. For example, 0000:0000:0000:0000:0000:ffff:c0a8:0101 compresses to ::ffff:192.168.1.1.
ip6.arpa
The DNS zone used for IPv6 reverse lookups. An IPv6 address is expanded to its full 32-nibble form, reversed, and appended with .ip6.arpa to form the PTR record name.
RFC 4291
The IETF standard defining IPv6 addressing architecture, including address types, scopes, and special-purpose prefixes such as ::ffff:0:0/96 (IPv4-mapped) and ::1/128 (loopback).