Skip to content

Function: findContainingCidr()

findContainingCidr<T>(ip, cidrs): T | null

Return the first CIDR in cidrs that contains ip, or null when none match. cidrs holds pre-parsed Cidr values (or any object extending it), so callers can carry side metadata on each entry (e.g. a region tag) and read it straight off the returned match. Linear scan; parse the address once by passing a ParsedIp.

T extends Cidr

string | ParsedIp

Iterable<T>

T | null

const ranges = ["10.0.0.0/8", "192.168.0.0/16"]
.map(parseCidr)
.filter((c): c is Cidr => c !== null);
findContainingCidr("10.1.2.3", ranges)?.cidr; // "10.0.0.0/8"