You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is to reject requests from IP ranges that overload the API
endpoints by fetching information from multiple clients at the same
time.
A recent incident highlighted this issue where a number of `crates?page`
requests hit the ">0.5 failed requests threshold" alert. These requests
timed out due to a high number of expensive requests made. These calls
came in from about 100 different IPs in parallel.
Before this change individual IPs or specific User Agents could be
blocked. These existing approaches have some drawbacks, blocking single
IPs would not have done much here as this is quite ineffective for this
behaviour, while blocking a specific (common) User Agent may prevent
valid usage of the API.
Therefore a list of CIDR blocks should be used to check if IPs belong to
certain ranges that send too many requests to expensive API endpoints.
**Please note** this has to be done very carefully, it's generally a
tool that may block whole regions of the internet.
0 commit comments