Repeated Binance.US API Bans and IPv6 Confusion

Hi everyone,

I’m running into a strange issue with the Binance.US API while fetching historical trade data using Python and the CCXT library. This code has worked flawlessly for months, but recently I started getting this error:

{“code”:-1003,“msg”:“Way too much request weight used; IP banned until 1737274423761. Please use WebSocket Streams for live updates to avoid bans.”}

The ban supposedly lasts an hour, but even after waiting for the ban to expire, any request—including lightweight ones like /v3/time—immediately triggers the same ban message. This happens across browsers as well, which is odd since /v3/time has a request weight of just 1.

Here’s what I’ve observed:

1. VPN Resolves the Ban: Switching to a VPN removes the ban immediately.
2. Other Devices Work: Devices on the same network but not running the code can successfully fetch server time via /v3/time. These devices detect both IPv4 and IPv6.
3. IPv6 Fixes the Issue: On affected machines, enabling IPv6 temporarily resolves the issue, but later I receive this error:

{"code":-71012,"msg":"IPv6 not supported"}

The affected machines had IPv6 disabled previously because Binance.US didn’t support it at the time. Enabling it temporarily lifted the ban, but the situation is inconsistent, and I’m unsure why the bans persist or reoccur.

Potential causes I’ve considered:

1. Running the code on two machines concurrently.
2. A change to Binance.US’s rate limits or request weight calculations.
3. An issue with IPv6/IPv4 handling or shared IP addresses.

The behavior is puzzling, and I’m trying to figure out a smoking gun so I can make sure I know what to do to prevent it or fix it if it does occur while remaining compliant with API ban rules:

1. Why I’m being banned in the first place?
2. Why enabling IPv6 temporarily resolves the issue?
3. How to change my code to prevent these bans moving forward?

Has anyone experienced something similar, or does anyone have insights into what might be causing this? Any advice would be greatly appreciated!