nginx rate limiting with multiple IPs in X-Forwarded-For header2019 Community Moderator ElectionNode.js + Nginx - What now?Is it possible to forward NON-http connecting request to some other port in nginx?Issues with nginx limit_req rate limiting - docs clarification?Nginx rate limit and real IP moduleForward HTTPS client ip from Google Container EngineUse NGINX Rate Limiting with tokensNginx Rate Limiting count for a whole subnet, not just per IPNginx as a forward proxy for websockets and post requestsHow do I apply rate limit by keeping in learning mode in nginx configForward Real Client IP from Nginx to Haproxy

Does a difference of tense count as a difference of meaning in a minimal pair?

Why does Central Limit Theorem break down in my simulation?

Professor forcing me to attend a conference, I can't afford even with 50% funding

Would an aboleth's Phantasmal Force lair action be affected by Counterspell, Dispel Magic, and/or Slow?

Specifying a starting column with colortbl package and xcolor

What materials can be used to make a humanoid skin warm?

What are some noteworthy "mic-drop" moments in math?

Why does cron require MTA for logging?

Are small insurances worth it?

School performs periodic password audits. Is my password compromised?

Which classes are needed to have access to every spell in the PHB?

Is it a Cyclops number? "Nobody" knows!

Trig Subsitution When There's No Square Root

Confusion about Complex Continued Fraction

Does an unused member variable take up memory?

Why restrict private health insurance?

I reported the illegal activity of my boss to his boss. My boss found out. Now I am being punished. What should I do?

Why couldn't the separatists legally leave the Republic?

Vocabulary for giving just numbers, not a full answer

Outlet with 3 sets of wires

Street obstacles in New Zealand

What will happen if my luggage gets delayed?

Power Strip for Europe

Doesn't allowing a user mode program to access kernel space memory and execute the IN and OUT instructions defeat the purpose of having CPU modes?



nginx rate limiting with multiple IPs in X-Forwarded-For header



2019 Community Moderator ElectionNode.js + Nginx - What now?Is it possible to forward NON-http connecting request to some other port in nginx?Issues with nginx limit_req rate limiting - docs clarification?Nginx rate limit and real IP moduleForward HTTPS client ip from Google Container EngineUse NGINX Rate Limiting with tokensNginx Rate Limiting count for a whole subnet, not just per IPNginx as a forward proxy for websockets and post requestsHow do I apply rate limit by keeping in learning mode in nginx configForward Real Client IP from Nginx to Haproxy










0















I have a follow-up on this old question, which suggests the following nginx config for rate-limiting based on the X-Forwarded-For header:



limit_req_zone $http_x_forwarded_for zone=zone:16m rate=1r/s;


X-Forwarded-For typically has multiple IP addresses and is generally of the form:



X-Forwarded-For: client, first_proxy, second_proxy, n_proxy


What does nginx do if configured as above and in the presence of multiple IP addresses in X-Forwarded-For? Does it use the left-most IP? Right-most IP? All the IPs?










share|improve this question

















  • 1





    The key is arbitrary text, so $http_x_forwarded_for should work fine (if that's what you want). If you want the clients IP address as the key, you could try using the realip module to extract it.

    – Richard Smith
    Mar 7 at 9:56
















0















I have a follow-up on this old question, which suggests the following nginx config for rate-limiting based on the X-Forwarded-For header:



limit_req_zone $http_x_forwarded_for zone=zone:16m rate=1r/s;


X-Forwarded-For typically has multiple IP addresses and is generally of the form:



X-Forwarded-For: client, first_proxy, second_proxy, n_proxy


What does nginx do if configured as above and in the presence of multiple IP addresses in X-Forwarded-For? Does it use the left-most IP? Right-most IP? All the IPs?










share|improve this question

















  • 1





    The key is arbitrary text, so $http_x_forwarded_for should work fine (if that's what you want). If you want the clients IP address as the key, you could try using the realip module to extract it.

    – Richard Smith
    Mar 7 at 9:56














0












0








0








I have a follow-up on this old question, which suggests the following nginx config for rate-limiting based on the X-Forwarded-For header:



limit_req_zone $http_x_forwarded_for zone=zone:16m rate=1r/s;


X-Forwarded-For typically has multiple IP addresses and is generally of the form:



X-Forwarded-For: client, first_proxy, second_proxy, n_proxy


What does nginx do if configured as above and in the presence of multiple IP addresses in X-Forwarded-For? Does it use the left-most IP? Right-most IP? All the IPs?










share|improve this question














I have a follow-up on this old question, which suggests the following nginx config for rate-limiting based on the X-Forwarded-For header:



limit_req_zone $http_x_forwarded_for zone=zone:16m rate=1r/s;


X-Forwarded-For typically has multiple IP addresses and is generally of the form:



X-Forwarded-For: client, first_proxy, second_proxy, n_proxy


What does nginx do if configured as above and in the presence of multiple IP addresses in X-Forwarded-For? Does it use the left-most IP? Right-most IP? All the IPs?







nginx rate-limiting






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Mar 7 at 5:23









iraxefiraxef

435514




435514







  • 1





    The key is arbitrary text, so $http_x_forwarded_for should work fine (if that's what you want). If you want the clients IP address as the key, you could try using the realip module to extract it.

    – Richard Smith
    Mar 7 at 9:56













  • 1





    The key is arbitrary text, so $http_x_forwarded_for should work fine (if that's what you want). If you want the clients IP address as the key, you could try using the realip module to extract it.

    – Richard Smith
    Mar 7 at 9:56








1




1





The key is arbitrary text, so $http_x_forwarded_for should work fine (if that's what you want). If you want the clients IP address as the key, you could try using the realip module to extract it.

– Richard Smith
Mar 7 at 9:56






The key is arbitrary text, so $http_x_forwarded_for should work fine (if that's what you want). If you want the clients IP address as the key, you could try using the realip module to extract it.

– Richard Smith
Mar 7 at 9:56













0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55036603%2fnginx-rate-limiting-with-multiple-ips-in-x-forwarded-for-header%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes















draft saved

draft discarded
















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55036603%2fnginx-rate-limiting-with-multiple-ips-in-x-forwarded-for-header%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Can't initialize raids on a new ASUS Prime B360M-A motherboard2019 Community Moderator ElectionSimilar to RAID config yet more like mirroring solution?Can't get motherboard serial numberWhy does the BIOS entry point start with a WBINVD instruction?UEFI performance Asus Maximus V Extreme

Identity Server 4 is not redirecting to Angular app after login2019 Community Moderator ElectionIdentity Server 4 and dockerIdentityserver implicit flow unauthorized_clientIdentityServer Hybrid Flow - Access Token is null after user successful loginIdentity Server to MVC client : Page Redirect After loginLogin with Steam OpenId(oidc-client-js)Identity Server 4+.NET Core 2.0 + IdentityIdentityServer4 post-login redirect not working in Edge browserCall to IdentityServer4 generates System.NullReferenceException: Object reference not set to an instance of an objectIdentityServer4 without HTTPS not workingHow to get Authorization code from identity server without login form

2005 Ahvaz unrest Contents Background Causes Casualties Aftermath See also References Navigation menue"At Least 10 Are Killed by Bombs in Iran""Iran"Archived"Arab-Iranians in Iran to make April 15 'Day of Fury'"State of Mind, State of Order: Reactions to Ethnic Unrest in the Islamic Republic of Iran.10.1111/j.1754-9469.2008.00028.x"Iran hangs Arab separatists"Iran Overview from ArchivedConstitution of the Islamic Republic of Iran"Tehran puzzled by forged 'riots' letter""Iran and its minorities: Down in the second class""Iran: Handling Of Ahvaz Unrest Could End With Televised Confessions""Bombings Rock Iran Ahead of Election""Five die in Iran ethnic clashes""Iran: Need for restraint as anniversary of unrest in Khuzestan approaches"Archived"Iranian Sunni protesters killed in clashes with security forces"Archived