You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Athena中检查目标IP是否属于指定CIDR网段?

Athena筛选指定/26 CIDR网段的可行方案

方法一:IP转整数判断范围

把IP地址转换为32位整数,直接判断是否落在目标网段的整数区间内,精准度高。

目标网段3.250.243.64/26的IP范围是3.250.243.64到3.250.243.127,对应的整数分别是543950848和543950911,直接用BETWEEN筛选:

SELECT * 
FROM "default"."test3" 
WHERE inet_aton(dstaddr) BETWEEN 543950848 AND 543950911;

inet_aton函数负责将字符串格式的IP转换为整数,Athena原生支持这个Presto函数

方法二:用CIDR专属函数匹配

如果你的Athena版本支持cidr_contains函数,直接用它更直观,需要把字段和网段分别转为inet和cidr类型:

SELECT * 
FROM "default"."test3" 
WHERE cidr_contains(cast('3.250.243.64/26' AS cidr), cast(dstaddr AS inet));

如果之前用这个函数失败,大概率是没做类型转换——必须确保dstaddr被转为inet类型,网段转为cidr类型

额外注意

如果dstaddr字段存在非IP格式的内容,建议先过滤避免转换错误:

SELECT * 
FROM "default"."test3" 
WHERE dstaddr REGEXP '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$'
  AND inet_aton(dstaddr) BETWEEN 543950848 AND 543950911;

内容的提问来源于stack exchange,提问作者DenCowboy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 10:25:09