You don't have javascript enabled. Please enable javascript to use this website.

IPv6 to IPv4 Converter

Extract the embedded IPv4 address from any IPv4-mapped IPv6 (::ffff:) address — hex or dotted-decimal notation, single or bulk.
IPv6 Address:
Convert to IPv4 Clear
More Tools

What Is an IPv4-Mapped IPv6 Address?

IPv6 to IPv4 converter extracts the embedded IPv4 address from IPv4-mapped IPv6 addresses per RFC 4291 §2.5.5.2. IPv4-mapped addresses use the ::ffff:0:0/96 prefix — 80 zero bits, followed by 16 all-one bits (0xFFFF), followed by a 32-bit IPv4 address. When an IPv6 address arrives in this format, the tool strips the ::ffff: prefix and converts the remaining two four-digit hex groups back to dotted-decimal IPv4 notation. Native IPv6 addresses with no embedded IPv4 payload return an incompatible result — the IPv6 address space (2128) is vastly larger than IPv4 (232), so no general one-to-one mapping exists.


IPv6 to IPv4 Converter — Extract the IPv4 Address from Any IPv4-Mapped IPv6 Notation

Enter an IPv4-mapped IPv6 address (::ffff: prefix) in hex or dotted-decimal format to extract the embedded IPv4 address per RFC 4291.

1

Choose a Conversion Mode

Select Single IP to extract from one address, or Bulk List to process multiple IPv4-mapped IPv6 addresses at once — one per line.
2

Enter an IPv4-Mapped IPv6 Address

Enter an address starting with ::ffff: in either hex notation (e.g. ::ffff:c0a8:0101) or dotted-decimal notation (e.g. ::ffff:192.168.1.1).
3

Click Convert to IPv4

Click the Convert to IPv4 button. The tool strips the ::ffff: prefix and converts the remaining hex groups to dotted-decimal IPv4 notation.
4

Read the Extracted IPv4 Address

Read the result — for example, ::ffff:c0a8:0101 extracts to 192.168.1.1. Addresses not in ::ffff: format return an incompatible message.

Accepted Input Formats

IPv4-mapped IPv6 addresses appear in two valid notations. Both are accepted — the tool detects the format automatically and returns the same extracted IPv4 address regardless of which form is entered.

Notation Example Input Extracted IPv4 Where It Appears
Hex group ::ffff:c0a8:0101 192.168.1.1 nginx/Apache logs, socket APIs
Dotted-decimal ::ffff:192.168.1.1 192.168.1.1 Wireshark, some Python socket repr
6to4 (2002::) 2002:c0a8:0101:: Not supported RFC 3056 — deprecated (RFC 7526)
Native IPv6 2001:db8::1 Not supported No embedded IPv4 — incompatible

How IPv6 to IPv4 Extraction Works

RFC 4291 reserves the ::ffff:0:0/96 block within the IPv6 address space specifically for representing IPv4 addresses. The /96 prefix means only the last 32 bits vary — exactly the size of an IPv4 address — placing all 232 IPv4 addresses within this range.

For hex notation — ::ffff:c0a8:0101 — the tool strips ::ffff:, removes the colon separator, and processes the remaining 8-character hex string as four two-character pairs: c0 → 192, a8 → 168, 01 → 1, 01 → 1 → result: 192.168.1.1.

For dotted-decimal notation — ::ffff:192.168.1.1 — the IPv4 portion after ::ffff: is already in the correct format and is returned directly without further conversion.

All extraction runs in the browser using JavaScript — no address data leaves the device.

Common Uses for IPv6 to IPv4 Extraction

Web server log normalization. nginx and Apache on dual-stack servers log IPv4 client connections as ::ffff:x.x.x.x when bound to an IPv6 socket. Extracting the IPv4 address allows existing log parsers, analytics pipelines, and rate-limit systems to process entries without modifying their IPv4-only regex patterns.

Application-layer debugging. A Python or Go application using AF_INET6 sockets receives client addresses in ::ffff:c0a8:0101 notation. Converting those addresses to dotted-decimal confirms which IPv4 client is connecting and allows comparison against expected source ranges or ACL entries.

Bulk packet capture analysis. A sysadmin reviewing a dual-stack pcap file has extracted a list of ::ffff: source addresses using Wireshark. Pasting the list into bulk mode converts all entries at once, producing a clean IPv4 list for cross-referencing against firewall rules or threat intelligence feeds.


Frequently Asked Questions

What types of IPv6 addresses can this tool convert?
Only IPv4-mapped IPv6 addresses — addresses in the ::ffff:0:0/96 range defined by RFC 4291 §2.5.5.2. These are IPv6 addresses where the first 80 bits are zero, the next 16 bits are all-one (0xFFFF), and the final 32 bits contain a valid IPv4 address. Native IPv6 addresses such as 2001:db8::1 or fe80::1 contain no embedded IPv4 data and cannot be converted.
What does 'Incompatible (Not an IPv4-mapped address)' mean?
The address you entered does not belong to the ::ffff:0:0/96 range and contains no embedded IPv4 data. This applies to native global unicast addresses (2001::/3), link-local addresses (fe80::/10), unique local addresses (fc00::/7), and 6to4 tunnel addresses (2002::/16). None of these contain an extractable IPv4 address in the ::ffff: format this tool handles.
What is the difference between IPv4-mapped (::ffff:) and 6to4 (2002:) addresses?
An IPv4-mapped address (::ffff:, RFC 4291 §2.5.5.2) embeds an IPv4 address in the last 32 bits and is used by dual-stack socket APIs to represent IPv4 clients on AF_INET6 sockets — it is not routed on the public internet. A 6to4 address (2002::/16, RFC 3056) encodes an IPv4 address in the 2nd and 3rd 16-bit groups and was used to tunnel IPv6 packets over IPv4 networks — it has been deprecated since RFC 7526 (2015). This tool handles ::ffff: only.
How accurate is the extraction?
The extraction is mathematically exact for any well-formed ::ffff: address. Hex notation: the tool strips ::ffff:, removes the colon separator, and converts each two-character hex pair to decimal — four pairs produce the four IPv4 octets. Dotted-decimal notation: the IPv4 portion after ::ffff: is returned directly. Both paths produce the same result for the same underlying IPv4 address.
Do you store or log the IP addresses I convert?
No. All conversion happens locally in the browser using JavaScript. No address data is sent to any server, and nothing is stored or logged.
Why can't all IPv6 addresses be converted to IPv4?
The IPv6 address space is 2¹²⁸ addresses — approximately 3.4 × 10³⁸. The IPv4 address space is 2³² — approximately 4.3 billion. IPv6 is 2⁹⁶ times larger, so no general one-to-one mapping exists. Only IPv6 addresses that were deliberately constructed to embed a 32-bit IPv4 value — specifically those in the ::ffff:0:0/96 range — can be reversed to recover that IPv4 address.

Related Guides

Guide What is IPv6?
the 128-bit successor to IPv4, including address structure, the ::ffff:0:0/96 mapped range, and dual-stack transition mechanics.
Guide What is IPv4?
the 32-bit addressing model embedded within IPv4-mapped IPv6 addresses and why IPv4 address exhaustion drove IPv6 adoption.