Berserk Docs
Scalar FunctionsIP Address Functions

ipv4_range_to_cidr_list

The fewest CIDR ranges that together cover exactly the IPv4 addresses from start to end, inclusive, as a dynamic array of `a.b.c.d/N` strings.

A start after the end gives an empty array; an invalid address, or one with a /mask, gives null.

Syntax

ipv4_range_to_cidr_list(start, end)

Parameters

Prop

Type

Given a dynamic field

This parameter is string-only. In permissive mode — the default — almost every field arrives as a dynamic, so passing one works because Berserk injects asstring: extract-or-null, the value when it really is a string and null otherwise, so the call yields null (a predicate yields false). A property bag or array is therefore not matched, and tostring() is never applied implicitly — use it explicitly to match a bag's JSON text, keys included. Strict mode rejects the dynamic instead of coercing it. See String coercion and the asXXX family.

Returns: dynamic

Examples

Example 1

print ipv4_range_to_cidr_list('10.0.0.1', '10.0.0.10')
print_0 (dynamic)
["10.0.0.1/32","10.0.0.2/31","10.0.0.4/30","10.0.0.8/31","10.0.0.10/32"]

On this page