network()
network() 함수는 IPv4 또는 IPv6 주소와 CIDR 프리픽스 길이를 받아 해당 네트워크의 시작 주소(네트워크 주소)를 반환합니다.
문법
network(IP, CIDR)
매개변수
IP- 네트워크 주소를 계산할 IPv4 또는 IPv6 주소입니다. 문자열 또는 IP 주소 타입을 허용합니다.
CIDR- 프리픽스 길이를 나타내는 정수입니다. IPv4의 경우 0~32, IPv6의 경우 0~128 범위의 값을 지정합니다.
integer,long,short타입을 허용합니다.
설명
network() 함수는 IP 주소에 CIDR 프리픽스 길이에 해당하는 서브넷 마스크를 적용하여 네트워크 주소를 문자열로 반환합니다. 예를 들어 192.0.2.1에 프리픽스 길이 24를 적용하면 192.0.2.0을 반환합니다.
IPv4와 IPv6를 모두 지원합니다. CIDR 값이 유효 범위를 벗어나거나, CIDR이 정수 타입이 아니면 null을 반환합니다. IP 또는 CIDR이 null이면 null을 반환합니다.
오류 코드
해당 사항 없음
사용 예
이 사용 예에서 조회하는 WEB_APACHE_SAMPLE 테이블을 준비하려면 쿼리 실습용 데이터를 참고하세요.
-
출발지 IP 주소에서 /24 네트워크 주소를 추출합니다.
table limit=5 WEB_APACHE_SAMPLE | eval result = network(src_ip, 24) | fields src_ip, result -
출발지 IP 주소에서 /16 네트워크 주소를 추출합니다.
table limit=5 WEB_APACHE_SAMPLE | eval result = network(src_ip, 16) | fields src_ip, result -
IPv6 주소에서 /96 네트워크 주소를 추출합니다.
json "{}" | eval net = network("2001:db8::1:2:3", 96) | # net: 2001:db8:0:0:0:1:0:0 -
NULL 입력
json "{}" | eval net = network(null, 24) | # net: null
호환성
network() 함수는 소나 4.0 이전 버전부터 제공되었습니다.