各位大佬是怎么做来源 IP 做归属地分析的?

2023-05-30 16:29:58 +08:00
 Tounea
我现在用的是 ELK Stack 版本 8.x.x ,使用 logstash

filter {
geoip {
}
}

filter {
ip2location {
}
}

前者下载的 GeoLite2-City.mdb 文件,使用 geoiplookup -f GeoLite2-City.mdb 8.8.8.8 测试报错
```
Error Traversing Database for ipnum = 1920103026 - Perhaps database is corrupt?
Segmentation fault

```

后者使用的是 BIN 二进制文件,使用 Logstash 发行来源 IP 归属地不准确,丝毫没有参考价值。

请教下各位大佬有没有免费离线版本的 IP 库,能供程序调用的?
1383 次点击
所在节点    程序员
6 条回复
fantastM
2023-05-30 17:16:26 +08:00
大多数开源项目里做 ip 所属地的判断,一般都是用 GeoLite2 (例如 clash 里 GEOIP 类型的规则),GeoLite2 是免费的,且每周二和周四更新两次数据,已经很不错了。需要更高精度的话,人家还提供了个商业版的 GeoIP2 。又想要免费 / 便宜,又想要好的服务,是不存在的

https://dreamacro.github.io/clash/configuration/rules.html#geoip

https://dev.maxmind.com/geoip/geolite2-free-geolocation-data
Tounea
2023-05-30 17:37:58 +08:00
@fantastM 我预期想要的就是能判断出 IP 的 国家和城市,奢望一点在加经纬度参数,不用高精度,差不多就行,能满足我这两个到三个需求足以!
muzuiget
2023-05-30 17:43:53 +08:00
是公网服务吗?如果套了个 Clouldflare 的话,Clouldflare 可以把这些数据通过 HTTP header 传给你,自己记录下来就好。
Tounea
2023-05-30 17:53:46 +08:00
@muzuiget 不是公网服务,是在内网环境。
thinkm
2023-05-30 19:26:11 +08:00
GeoLite2 国内一点都不准,国外准确的还可以
JackCooper
2023-05-31 15:50:27 +08:00
elk 数据进来之后 你的 index mapping 应该有 ip 这个字段, 直接使用 pipeline -> create pipeline -> geoIP

默认走的是 GeoLite2-City.mmdb 定义好输入输入就可以直接用. 相对准

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/944242

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX