8.IP 주소 함수

Edit

8.1ip2int()ip2int()

임의의 IPv4 주소 문자열을 숫자(signed int) 타입으로 변환합니다.

문법

ip2int(IP4_ADDR)
IP4_ADDR

IPv4 주소 문자열 표현식. 유효하지 않은 다른 타입 값을 받으면 null을 반환합니다.

사용 예

json "{}" | eval ip2int=ip2int("192.168.0.1") => -1062731775
json "{}" | eval ip2int=ip2int("127.0.0.1") => 2130706433
json "{}" | eval ip2int=ip2int("255.255.255.255") => -1
json "{}" | eval ip2int=ip2int("256.256.256.256") => null

8.2ip2long()ip2long()

문법

ip2long(IP4_ADDR)

IP4_ADDR

IPv4 주소 문자열 표현식. 유효하지 않은 다른 타입 값을 받으면 null을 반환합니다.

사용 예

json "{}" | eval ip2long=ip2long("192.168.0.1") => 3232235521
json "{}" | eval ip2long=ip2long("127.0.0.1") => 2130706433
json "{}" | eval ip2long=ip2long("255.255.255.255") => 4294967295
json "{}" | eval ip2long=ip2long("256.256.256.256") => null

8.3long2ip()long2ip()

임의의 정수를 IPv4 주소 문자열로 변환합니다.

문법

long2ip(IP4_ADDR)
IP4_ADDR

IPv4 주소 문자열 표현식. 유효하지 않은 다른 타입 값을 받으면 null을 반환합니다.

사용 예

json "{}" | eval long2ip=long2ip(3232235521) => "192.168.0.1"
json "{}" | eval long2ip=long2ip(2130706433) => "127.0.0.1"
json "{}" | eval long2ip=long2ip(-1) => "255.255.255.255"
json "{}" | eval long2ip=long2ip(-1062731775) => "192.168.0.1"

8.4network()network()

주어진 IPv4/IPv6 주소와 CIDR로 네트워크 주소 값을 반환합니다.

문법

network(IP_ADDR, CIDR)
IP_ADDR

IPv4 또는 IPv6 형식의 문자열 혹은 IP 타입 값. IPv6 주소는 대소문자를 구분하지 않습니다.

CIDR

CIDR 정수 값. IPv4의 경우 0~32, IPv6의 경우 0~128 범위로 지정합니다.

사용 예

json "{}" 
| eval network=network(null, 32)
  => null

json "{}" 
| eval network=network("192.0.2.128", 24)
  => 192.0.2.0

json "{}" 
| eval network=network("192.0.2.128", 28)
  => 192.0.2.128

json "{}" 
| eval network=network(ip(-1073741184), 28)
  => 192.0.2.128

json "{}" 
| eval network=network("21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A", 96)
  => 21da:d3:0:2f3b:2aa:ff:0:0
Count of comments [0]