分享一个 IP 库工具,想不想知道抖音阿 B 小红书到底用了多少家 CDN 服务?

210 天前
 sjzar

这是一个处理 IP 库的命令行工具,目前 200+ star ,支持 IP 库的打包、转存、查询等操作。

项目地址

GitHub 地址:https://github.com/sjzar/ips

使用文档

文档地址:https://github.com/sjzar/ips/blob/main/docs/usage.md

使用案例

一些基础用法可以参考上面的项目和文档地址,下面讲些这项目能够做啥好玩的。

压缩数据库体积

目前商业 IP 数据库通常包含大量详细信息,例如某家数据库文件大小超过 600MB ,在分发和使用时造成不便;

可以通过 ips 选取字段后 重新打包 IP 数据库,在保留国内城市运营商、海外国家粒度信息的情况下,减少 98% 的体积。

具体命令请参考这篇文档

制作自定义数据库

各类分流工具依赖 IP 归属地做分流策略,可以使用 ips 轻松重新打包 mmdb 文件 ,例如:

$ ips pack -i GeoLite2-City.mmdb -f 'country|country=!中国:country=' -o geoip2-cn.mmdb --output-option "select_languages=-"

$ ll
-rw-r--r--  1 sarv  staff    68M 10 20 12:43 GeoLite2-City.mmdb
-rw-r--r--  1 sarv  staff   323K 11 15 14:20 geoip2-cn.mmdb

多地域域名解析

近期新增的一个功能,可以分析域名在不同地区的解析结果差异,拿 B 站的一个 CDN 域名举例:

ips mdns i0.hdslb.com
+--------------------+-------------------------------------------------+-------------------------------------------------+
|       GEOISP       |                      CNAME                      |                       IP                        |
+--------------------+-------------------------------------------------+-------------------------------------------------+
| 27.224.0.0         | i0.hdslb.com.04f6a54d.c.cdnhwc1.com [华为]      | 60.165.116.47 [中国 甘肃 兰州 电信]             |
| [中国 甘肃 电信]   | hcdnw.biliv6.c.cdnhwc2.com [华为]               | 60.165.116.48 [中国 甘肃 兰州 电信]             |
+--------------------+-------------------------------------------------+-------------------------------------------------+
| 36.133.72.0        | i0.hdslb.com.w.kunlunno.com [阿里]              | 221.181.64.184 [中国 上海 上海 移动]            |
| [中国 上海 移动]   |                                                 | 221.181.64.148 [中国 上海 上海 移动]            |
+--------------------+-------------------------------------------------+-------------------------------------------------+
| 36.133.108.0       | i0.hdslb.com.04f6a54d.c.cdnhwc1.com [华为]      | 39.136.138.59 [中国 重庆 重庆 移动]             |
| [中国 重庆 移动]   | hcdnw.biliv6.d.cdn.chinamobile.com [移动]       | 39.136.138.58 [中国 重庆 重庆 移动]             |
+--------------------+-------------------------------------------------+-------------------------------------------------+
| 1.56.0.0           | i0.hdslb.com.04f6a54d.c.cdnhwc1.com [华为]      | 218.10.185.43 [中国 黑龙江 鹤岗 联通]           |
| [中国 黑龙江 联通] | hcdnw.biliv6.c.cdnhwc2.com [华为]               | 218.60.101.84 [中国 辽宁 大连 联通]             |
+--------------------+-------------------------------------------------+-------------------------------------------------+
| 42.202.0.0         | i0.hdslb.com.download.ks-cdn.com [金山]         | 123.184.57.130 [中国 辽宁 沈阳 电信]            |
| [中国 辽宁 电信]   | k1-ipv6.gslb.ksyuncdn.com [金山]                | 123.184.57.129 [中国 辽宁 沈阳 电信]            |
+--------------------+-------------------------------------------------+-------------------------------------------------+
|       TOTAL        |                       11                        |                       730                       |
+--------------------+-------------------------------------------------+-------------------------------------------------+

帖子长度有限,这里省略了中间的大量数据,大家可以自己试一下。

这个功能可以比较直观看到 B 站这个 CDN 域名用了多家 CDN 服务,已经 IP 的本地覆盖情况。


希望大家能够玩一下,帮忙找找问题,欢迎提 issue 。

1851 次点击
所在节点    分享创造
1 条回复
brightrystal
210 天前
感谢楼主,star 了

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

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

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

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

© 2021 V2EX