This website requires JavaScript to run properly.
William DA SILVA
William DA SILVA
Développeur Full-Stack

Aujourd'hui, j'ai appris à propos des IPs proxy Cloudflare

  • Publié le : 13/02/2026
  • Dernière mise à jour : 13/02/2026

IPs Proxy Cloudflare

Une erreur que j'ai commise cette semaine a été de limiter le débit des utilisateurs en fonction de leur adresse IP. Cela semble correct au début mais je n'avais pas réalisé que l'adresse IP que je limitais n'était pas celle réelle de l'utilisateur, mais celle du proxy Cloudflare.

Comment obtenir la véritable adresse IP de l'utilisateur

En cherchant sur internet, j'ai découvert qu'il fallait d'abord mettre sur liste blanche les IPs Cloudflare au niveau de Traefik, afin que Traefik puisse ensuite transmettre la véritable adresse IP de l'utilisateur au backend.

J'ai ajouté ceci dans mon conteneur Traefik dans le Docker-compose :

# Faire confiance aux IPs Cloudflare pour les en-têtes forwardés
- --entrypoints.websecure.forwardedHeaders.trustedIPs=173.245.48.0/20,103.21.244.0/22,103.22.200.0/22,103.31.4.0/22,141.101.64.0/18,108.162.192.0/18,190.93.240.0/20,188.114.96.0/20,197.234.240.0/22,198.41.128.0/17,162.158.0.0/15,104.16.0.0/13,104.24.0.0/14,172.64.0.0/13,131.0.72.0/22,2400:cb00::/32,2606:4700::/32,2803:f800::/32,2405:b500::/32,2405:8100::/32,2a06:98c0::/29,2c0f:f248::/32

Pour information, les IPs sont disponibles ici.

Ensuite, dans mon serveur Node, je n'avais plus qu'à utiliser l'en-tête Cf-Connecting-Ip pour obtenir la véritable adresse IP de l'utilisateur.

const realIp = event.req.headers["cf-connecting-ip"];