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
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
add a comment |
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
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
add a comment |
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
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
nginx rate-limiting
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
add a comment |
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
add a comment |
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
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
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.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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