This page explains how to use the ipv6_is_in_range function in APL.
Use the ipv6_is_in_range
function to check whether an IPv6 address falls within a specified IPv6 CIDR range. This is useful when you need to classify, filter, or segment network traffic by address range—such as identifying requests from internal subnets, geo-localized regional blocks, or known malicious networks.
You can use this function when analyzing HTTP logs, trace telemetry, or security events where IPv6 addresses are present, and you want to restrict attention to or exclude certain address ranges.
If you come from other query languages, this section explains how to adjust your existing queries to achieve the same results in APL.
Splunk SPL users
In Splunk SPL, IP range checking for IPv6 addresses typically requires custom scripts or manual logic, as there is no built-in function equivalent to ipv6_is_in_range
.
ANSI SQL users
ANSI SQL does not have native functions for CIDR range checks on IPv6 addresses. You typically rely on user-defined functions (UDFs) or external tooling. In APL, ipv6_is_in_range
provides this capability out of the box.
Name | Type | Description |
---|---|---|
ipv6 | string | The IPv6 address to check. |
cidr_range | string | The IPv6 CIDR block (e.g. '2001:db8::/32' ). |
A bool
value:
true
if the IPv6 address is within the specified CIDR range.false
otherwise.Use this function to isolate internal service calls originating from a designated IPv6 block.
Query
Output
_time | span_id | [‘service.name’] | duration | inRange |
---|---|---|---|---|
2025-06-28T11:20:00Z | span-124 | frontend | 00:00:02.4 | true |
2025-06-28T11:21:03Z | span-209 | cartservice | 00:00:01.1 | true |