Link Search Menu Expand Document Documentation Menu

IP 地址字段类型

1.0 版引入

IP 字段类型包含 IPv4 或 IPv6 格式的 IP 地址。

为了表示 IP 地址范围,存在一个 IP 范围字段类型

示例

创建包含 IP 地址的映射

PUT testindex 
{
  "mappings" : {
    "properties" :  {
      "ip_address" : {
        "type" : "ip"
      }
    }
  }
}

索引包含 IP 地址的文档

PUT testindex/_doc/1 
{
  "ip_address" : "10.24.34.0"
}

查询特定 IP 地址的索引

GET testindex/_doc/1 
{
  "query": {
    "term": {
      "ip_address": "10.24.34.0"
    }
  }
}

搜索 IP 地址及其关联的网络掩码

您可以查询索引以查找无类别域间路由 (CIDR) 表示法中的 IP 地址。使用 CIDR 表示法时,请指定 IP 地址和前缀长度 (0–32),两者之间用 / 分隔。例如,前缀长度为 24 将匹配所有具有相同前 24 位 IP 地址。

IPv4 格式的查询示例

GET testindex/_search 
{
  "query": {
    "term": {
      "ip_address": "10.24.34.0/24"
    }
  }
}

IPv6 格式的查询示例

GET testindex/_search 
{
  "query": {
    "term": {
      "ip_address": "2001:DB8::/24"
    }
  }
}

如果在 query_string 查询中使用 IPv6 格式的 IP 地址,则需要转义 : 字符,因为它们会被解析为特殊字符。您可以通过将 IP 地址用引号括起来,并用 \ 转义这些引号来完成此操作。

GET testindex/_search 
{
  "query" : {
    "query_string": {
      "query": "ip_address:\"2001:DB8::/24\""
    }
  }
}

参数

下表列出了 IP 字段类型接受的参数。所有参数都是可选的。

参数 描述
提升 一个浮点值,指定此字段对相关性得分的权重。高于 1.0 的值会增加字段的相关性。介于 0.0 和 1.0 之间的值会降低字段的相关性。默认值为 1.0。
doc_values 一个布尔值,指定字段是否应存储在磁盘上,以便用于聚合、排序或脚本。默认值为 true
忽略畸形值 (ignore_malformed) 一个布尔值,指定是否忽略畸形值而不抛出异常。默认值为 false
index 一个布尔值,指定字段是否可搜索。默认值为 true
null_value 用于替代 null 的值。必须与字段类型相同。如果未指定此参数,则当其值为 null 时,该字段将被视为缺失。默认值为 null
存储 一个布尔值,指定字段值是否应存储且可与 _source 字段单独检索。默认值为 false
剩余 350 字符

有问题?

想贡献?