ipv6_is_in_any_range()
적용 대상: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
IPv6 문자열 주소가 지정된 IPv6 주소 범위에 있는지 여부를 확인합니다.
성능 팁
참고 항목
128개 이상의 검색어를 사용하는 경우 텍스트 인덱스 조회 최적화가 비활성화되어 쿼리 성능이 저하될 수 있습니다.
구문
ipv6_is_in_any_range(
Ipv6Address ,
Ipv6Range [ ,
Ipv6Range ...])
ipv6_is_in_any_range(
Ipv6Address ,
Ipv6Ranges )
구문 규칙에 대해 자세히 알아봅니다.
매개 변수
이름 | Type | 필수 | 설명 |
---|---|---|---|
Ipv6Address | string |
✔️ | IPv6 주소를 나타내는 식입니다. |
Ipv6Range | string |
✔️ | IP 접두사 표기법을 사용하여 IPv6 범위를 나타내는 식입니다. |
Ipv6Ranges | dynamic |
✔️ | IP 접두사 표기법을 사용하는 IPv6 범위를 포함하는 배열입니다. |
참고 항목
하나 이상의 IPv6Range 문자열 또는 IPv6Ranges 동적 배열이 필요합니다.
IP 접두사 표기법
IP 접두사 표기법(CIDR 표기법이라고도 함)은 IP 주소 및 연결된 네트워크 마스크를 나타내는 간결한 방법입니다. 형식입니다 <base IP>/<prefix length>
. 여기서 접두사 길이는 netmask에서 선행 1비트 수입니다. 접두사 길이는 네트워크에 속하는 IP 주소의 범위를 결정합니다.
IPv4의 경우 접두사 길이는 0에서 32 사이의 숫자입니다. 따라서 표기법 192.168.2.0/24는 netmask가 255.255.255.0인 IP 주소 192.168.2.0을 나타냅니다. 이 netmask에는 24개의 선행 1비트 또는 24개의 접두사 길이가 있습니다.
IPv6의 경우 접두사 길이는 0에서 128 사이의 숫자입니다. 따라서 표기법 fe80::85d:e82c:9446:7994/120은 IP 주소 fe80::85d:e82c:9446:7994를 나타내며 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00의 netmask가 있습니다. 이 netmask에는 120개의 선행 1비트 또는 120의 접두사 길이가 있습니다.
반품
true
: IPv6 주소가 지정된 IPv6 네트워크의 범위에 있는 경우false
:그렇지 않으면.null
: 두 IPv6 문자열 중 하나에 대한 변환에 성공하지 못한 경우
예시
let LocalNetworks=dynamic([
"a5e:f127:8a9d:146d:e102:b5d3:c755:f6cd/112",
"0:0:0:0:0:ffff:c0a8:ac/60"
]);
let IPs=datatable(IP:string) [
"a5e:f127:8a9d:146d:e102:b5d3:c755:abcd",
"a5e:f127:8a9d:146d:e102:b5d3:c755:abce",
"a5e:f127:8a9d:146d:e102:b5d3:c755:abcf",
"a5e:f127:8a9d:146d:e102:b5d3:c756:abd1",
];
IPs
| extend IsLocal=ipv6_is_in_any_range(IP, LocalNetworks)
출력
IP | IsLocal |
---|---|
a5e:f127:8a9d:146d:e102:b5d3:c755:abcd | True |
a5e:f127:8a9d:146d:e102:b5d3:c755:abce | True |
a5e:f127:8a9d:146d:e102:b5d3:c755:abcf | True |
a5e:f127:8a9d:146d:e102:b5d3:c756:abd1 | False |