# HttpProtect.bannedNetworks() method · @imqueue/http-protect

Source: https://imqueue.org/api/http-protect/latest/http-protect.httpprotect.bannednetworks/
Published: 2026-08-01
Author: @imqueue maintainers (https://github.com/imqueue)
Package: @imqueue/http-protect 3.0.1 — generated reference, not hand-written

The current block list, as a `Networks` object.

**Signature:**

```typescript
bannedNetworks(): Promise<Networks>;
```
**Returns:**

Promise<Networks>

Every banned address, each widened to a `/32` network.

## Remarks

Reads the whole set on every call and builds a fresh `Networks`, so it costs an `SMEMBERS` plus parsing — fine for an admin endpoint, not for a hot path.

The `/32` suffix is applied to every address regardless of family, which is correct for IPv4 and wrong for IPv6: a `/32` IPv6 prefix covers 2^96 addresses, so a single banned IPv6 address makes this object match a vast range around it. [HttpProtect.verify()](https://imqueue.org/api/http-protect/latest/http-protect.httpprotect.verify/) does not use this — it matches exact addresses in Redis — so real blocking is unaffected, but [HttpProtect.isBanned()](https://imqueue.org/api/http-protect/latest/http-protect.httpprotect.isbanned/) inherits the over-match. Do not use either as an authority for IPv6.

