Get Real User IP Without Installing Cloudflare Apache Module

When using Cloudflare, you will notice that the REMOTE_ADDR variable no longer displays the correct user IP. Since Cloudflare acts as a proxy, the IP will always be a Cloudflare IP. If you have any code such as user votes that are using the IP as a unique way to stop users voting multiple times, you will find that this code is no longer working correctly. The solution to this is to install the Apache module which will correctly resolve the IPs that are being sent from Cloudflare. There is currently no module for Centos 7 and a few other operating systems which leaves us stuck. I looked into the issue and found that there is already a way to access the users IP without installing anything.

If you are using a language like PHP, dump out the server variables using a command such as var_dump($_SERVER); This will allow you to see all of the server variables that you currently have access to. You will see that there are a few new variables that are not normally there. The important variable here is HTTP_CF_CONNECTING_IP. This variable contains the actual user IP that would normally have been present in the REMOTE_ADDR variable. You will also find that the HTTP_X_FORWARDED_FOR variable also contains the exact same value.

This is a quick solution for anyone writing code that is depending on the IP being correct. If you are using any software that you didnt write, you might still be in trouble as this is difficult to change.

Related Articles

Related Questions

Ethernet stopped working on my PC, and a USB adapter doesn’t help

My wired internet worked normally until about a week ago, then suddenly stopped. The Ethernet port on the PC no longer shows any link...

Is It Worth Replacing a Ryzen 7 5800X That Only Runs RAM in Single Channel?

A Ryzen 7 5800X has three broken pins, and as a result two motherboard memory slots do not work. The system has 2×16 GB...

How Can I Recover From a Failed Linux Mint Kernel Update?

I'm new to Linux Mint and tried installing an available update while connected through a mobile hotspot. The connection briefly dropped during the installation,...

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Latest Tools

Erase Gemini Nano Banana Watermark

Below is a simple content eraser tool. It works very similar to the content aware fill tool that is used in Photoshop. You can...

Keep Your Screen Awake Tool

This simple online stay awake tool prevents your computer screen from going to sleep while you have this page open. It runs entirely in your...

Neural Network Simulation Tool

The Neural Network Visual Builder is an interactive, client-side tool designed to demystify deep learning. It allows users to drag-and-drop neural network layers to...

Ray Trace Simulator – Interactive Optical Ray Tracing Tool

This ray trace simulator lets you visualise how light rays move through an optical system in real time. You can trace beams as they...

Interactive CPU Architecture Simulator

This is an Interactive CPU Architecture Simulator that provides a hands-on, visual learning experience for understanding how a processor executes code. It models a...

AI Image Upscaler

Our AI Image Upscaler allows you to upload any image and instantly increase its resolution using advanced upscaling models. Choose between 2x, 3x or...

Latest Posts

Latest Questions