Pseudo IPv4 - Supporting IPv6 addresses in legacy IPv4 applications

To support migration to IPv6, Cloudflare provides an IPv6 to IPv4 translation service. However, some older server software (usually analytics and fraud detection) expects original visitor IP addresses in IPv4 format and does not support the different IPv6 address format, which represents a vastly larger address space.

As a stopgap to accelerate the adoption of IPv6, Cloudflare offers Pseudo IPv4 which supports IPv6 addresses in legacy applications expecting IPv4 addresses. The goal is to provide a nearly unique IPv4 address for each IPv6 address, using Class E IPv4 address space, which is designated as experimental and would not normally see traffic.

Three options for the Pseudo IPv4 service, which is found in the Cloudflare Settings tab:

1. Off Default.

2. Add header Cloudflare will automatically add a header

Cf-Pseudo-IPv4

with a Class E IPv4 address hashed from the original IPv6 address. This Pseudo IPv4 address can then be parsed by software as needed.

3. Overwrite headers Cloudflare will overwrite the existing

Cf-Connecting-IP

and

X-Forwarded-For

headers with a Pseudo IPv4 address. The advantage of the overwrite option is that, in most cases, it won't require any software changes. If you choose the overwrite option, we'll append a new header

Cf-Connecting-IPv6

in order to ensure you can still find the actual connecting IP address for debugging.

The Pseudo IPv4 service, like our IPv6 gateway, is available to all customers, even those on the free plan. Our hope is that it will eliminate one of the last reasons for IPv6 holdouts. If you're already a Cloudflare customer, login to your account and make sure IPv6 is enabled on the Cloudflare Settings page. You can find more details here: http://blog.cloudflare.com/eliminating-the-last-reasons-to-not-enable-ipv6