1. Home
  2. Developer tools
  3. IPv4 to IPv6

IPv4 to IPv6

IPv6 reserves ways to carry an IPv4 address. Enter one and see its IPv4-mapped, NAT64 and 6to4 forms in short and full notation.

Free, no sign-up. Runs in your browser: nothing is uploaded.

How to use IPv4 to IPv6

  1. Enter an IPv4 address.
  2. Read each IPv6 form and what it is used for.
  3. Copy the one you need.

Features

  • IPv4-mapped form ::ffff:a.b.c.d
  • NAT64 form with the 64:ff9b::/96 prefix
  • 6to4 prefix derived from the address
  • Short and full notation
  • Explains where each form is used
  • Marks the obsolete compatible form

Supported formats

Input

  • IPv4 addresses
  • Typed or pasted text

You get

  • IPv4-mapped IPv6
  • 6to4 and NAT64 forms

Private by design

Everything you enter is processed by your browser on this device. Nothing is sent to openWorkstand or anyone else, so the IPv4 to IPv6 is safe for private and work data. After you have used it once while online, it also works without an internet connection. How local processing works

Good to know

  • It shows the standard embedding formats; it does not know the NAT64 prefix your network actually uses.
  • Converting an address does not make a host reachable over IPv6.

Guide

The ways an IPv4 address appears inside IPv6

IPv4 and IPv6 are separate address spaces, so there is no single correct way to convert one into the other. What exists is a handful of agreed embeddings that place a 32-bit IPv4 address inside a 128-bit IPv6 one for specific purposes. The page takes an IPv4 address and shows every standard embedding so you can recognise the one you see in a log, a socket API or a NAT64 deployment.

The forms and what each is for

IPv4-mapped (::ffff:a.b.c.d, RFC 4291) is used by software, not by networks. When an IPv6 socket accepts a connection from an IPv4 client, the operating system presents the peer as a mapped address. Packets never travel with this address on the wire. NAT64 (64:ff9b::/96, RFC 6052) is a real network mechanism: an IPv6-only client reaches an IPv4 server by sending to the well-known prefix followed by the server’s IPv4 address, and a NAT64 gateway translates. Providers can also use their own prefix instead of the well-known one. 6to4 (2002::/16, RFC 3056) derived a /48 from a public IPv4 address; it is deprecated, and RFC 7526 removed the relay anycast address that made it work. The IPv4-compatible form ::a.b.c.d was an early transition idea that RFC 4291 deprecated.

Reading the page

Enter one IPv4 address and the page lists the mapped address in short and full form, the NAT64 address, the 6to4 prefix and the compatible form, each with a copy button and a one-line note. The short forms follow RFC 5952, so groups are lower case and the longest run of zeros is replaced by ::. Both the hexadecimal ending (c000:221) and the dotted ending (192.0.2.33) are given where the notation allows it, because logs use both.

Where the details matter

Firewall rules written for IPv4 addresses may not match the mapped form that dual-stack services log. Allow lists and rate limiters need to normalise by stripping ::ffff: before comparing. On the other side, DNS64 resolvers synthesise AAAA answers by embedding the server’s IPv4 address into the NAT64 prefix, so an IPv6-only phone that shows 64:ff9b:: followed by a familiar-looking IPv4 address is using the translator. The page makes these relationships visible and avoids errors when you convert by hand, since the bytes go in as hexadecimal pairs, not decimal numbers.

A worked example

Enter 192.0.2.33, a documentation address. The bytes 192, 0, 2, 33 are c0, 00, 02 and 21. The page returns the mapped address ::ffff:c000:221 (also written ::ffff:192.0.2.33; full form 0000:0000:0000:0000:0000:ffff:c000:0221), the NAT64 address 64:ff9b::c000:221, the 6to4 prefix 2002:c000:221::/48, and the obsolete compatible form ::c000:221.

Limits

None of these results gives a host working IPv6. A routable IPv6 address has to be delegated by your provider or registry. The NAT64 address uses the well-known prefix; if your network runs a gateway with a different prefix, replace the leading part. The page does not test whether a translator exists. To check your real connectivity, use the IPv6 Test.

Checked against the current version of the IPv4 to IPv6 on .

Frequently asked questions

Why do some logs show ::ffff:192.0.2.33 for an IPv4 client?

A server that listens on one IPv6 socket for both protocols receives IPv4 clients as mapped addresses. The log is just showing the IPv4 peer inside an IPv6-shaped field.

Can I use the 6to4 address that the page shows?

Not in practice. 6to4 relied on public relay routers that have been withdrawn, and RFC 7526 removed the anycast prefix that supported it, so it should not be deployed.

Can I use ::ffff:192.0.2.33 to reach an IPv4 host?

It is how a dual-stack program represents an IPv4 peer, but it is not routed as IPv6. A socket bound to it uses IPv4 underneath.

What is 64:ff9b::/96?

The well-known prefix of NAT64 (RFC 6052). A NAT64 gateway turns packets to 64:ff9b::a.b.c.d into IPv4 packets to a.b.c.d for IPv6-only clients.

Keep working with the result

openWorkstand also includes a free workspace with documents, spreadsheets, tasks, projects and a calendar that save to a folder on your computer.